トップページへ

 セットアップ
Debian化
カーネル再構築
Debian化仕上げ
HDDの初期化
フローチャート

 サーバ構築
ルータの設定
無料ドメイン収得
Webサーバ
メールサーバ
FTPサーバ
ファイルサーバ
プリンタサーバ
DNSサーバ
データベースサーバ

 運 用
基本的なコマンド
テキストエディタ
シェルスクリプト
運用に必要な物
ファイアウォール
ログの管理
バックアップ
データ復旧
VMware

 監 視
Webアクセス解析
システム監視
ログ解析
不正アクセス監視

 その他
リンク

sponsored link

【 更新履歴 】


2009年7月25日
 サイトデザインを一新

2009年3月31日
 Debian化仕上のページを更新

2008年09月15日
 新サイト開設



プリントサーバ:CUPS


ここでやること
■ プリントサーバであるCUPSをインストールする
■ 玄箱がUSBプリンタを認識できるようにする

 CUPSとはプリントサーバ機能を行うプログラムで、 USBプリンタを玄箱に接続して共有ができれば家にあるネットワーク上のどのコンピュータからでも リモートで印刷ができます。
 あと、印刷できるプリンタも動作確認が必要ですのでお持ちの製品が使用できるかどうかはわかりません。私の家では「Canon製のPIXUS860i」を使用しています。

※注意:このページには玄箱ノーマルと玄箱HGとによって設定の仕方が違います



コマンド:USBマネージャのインストール

玄箱のUSBコネクタにプリンタを接続したときに認識させる必要があります

# apt-get install usbmgr
# apt-get install usbutils

コマンド:USBデバイスの作成

認識したプリンタを/dev/usb/lp0として使用できるようにします

# mkdir /dev/usb
# mknod /dev/usb/lp0 c 180 0
# chmod 660 /dev/usb/lp0
# chown lp /dev/usb/lp0

カーネルを2.6にした後、USBプリンタの認識をさせるためにモジュールの組み込みをしなければなりません

コマンド:USBモジュールの組込み

まず、USB認識確認のため、プリンターを玄箱につないだ後に下記コマンドを実行します

# dmesg | grep usb

すると、以下のメッセージが表示されますがプリンターに関するメッセージは表示されません(つまりプリンターが認識されていない)

new full speed USB device using ohci_hcd and address 2



次に、モジュールを組み込みます(カーネル再構築の再に下記の場所に展開してあるはずです)


※玄箱ノーマルの場合は以下のコマンドを実行

# insmod /lib/modules/2.6.20-kurobox/kernel/drivers/usb/class/usblp.ko

※玄箱HGの場合は以下のコマンドを実行

# insmod /lib/modules/2.6.16-kuroboxHG/kernel/drivers/usb/class/usblp.ko



モジュールが組込まれてプリンターが認識されているかどうか確認してみます

# dmesg | grep usb

今度はさっきと違ってプリンタに関するメッセージが表示されていると思います(認識されている)

drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 2 if 0 alt 0 proto 2 vid 0x04A9 pid 0x107F
usbcore: registered new driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver

このモジュール組込み設定は玄箱を再起動すると無効になってしまうので起動時に自動で実行するように設定します

USBモジュールの組込み自動起動

モジュールの組込みを再起動後に自動起動させるスクリプトを作成します


# vi /etc/init.d/printer_module

  #!/bin/sh
  PATH=/bin:/usr/bin:/sbin:/usr/sbin
  ※玄箱ノーマルの場合は下記を記載
  insmod /lib/modules/2.6.20-kurobox/kernel/drivers/usb/class/usblp.ko
  ※玄箱HGの場合は下記を記載
  insmod /lib/modules/2.6.16-kuroboxHG/kernel/drivers/usb/class/usblp.ko

上記スクリプトに実行権限を与えます

# chmod a+x /etc/init.d/printer_module

自動起動の設定をします

# update-rc.d printer_module defaults


プリンタの認識設定が終わったら次にCUPSプログラムをインストールします

コマンド:CUPSのインストール

CUPSに関連するプログラムを片っ端からインストールします(印刷サイズを質問されますのでA4と答えます。後はデフォルトでいいでしょう)

# apt-get install cupsys cupsys-client cupsys-bsd cupsys-driver-gimpprint

ファイル編集:/etc/cups/cupsd.conf

※Debian Etchにアップグレードした場合はcupsys 1.2系のバージョンがインストールされますので下記のとおり編集

 「Listen localhost:631」 を 「Listen 631」に変更

 <Location />と<Location /admin>と<Location /admin/conf>のディレクティブ設定を「Allow localhost」から「Allow 192.168.0.0/24」に変更する

 最後の行に下記を追加
 ServerCertificate /etc/cups/ssl/server.crt
 ServerKey /etc/cups/ssl/server.key



※Debian Etchにアップグレードしていない場合はcupsys 1.1系のバージョンがインストールされますので下記のとおり編集

 Browsing On を有効にする 「#」でコメントアウトされていればはずす
 <Location />と<Location /admin>のディレクティブ設定を「localhost」から「Allow From 192.168.0.0/24」に変更する

ファイル編集:/etc/cups/mime.types

以下の文がコメントアウトされていれば「#」ををはずして有効にする

application/octet-stream

ファイル編集:/etc/cups/mime.convs

以下の文がコメントアウトされていれば「#」ををはずして有効にする

application/octet-stream application/vnd.cups-raw 0 -

SSLの使用

cupsys 1.2系では設定にSSLが必要になるので独自に証明書を作成しなければなりません。 「自宅サーバー Fedora」さんのホームページを参考にさせていただきました。

# apt-get install openssl

# openssl req -new -x509 -keyout /etc/cups/ssl/server.key -out /etc/cups/ssl/server.crt -days 365 -nodes

いくつか質問されるので下記のように適当に答えます

Country Name (2 letter code) [AU] : JP
State or Province Name (full name) [Some-State] : KURO
Locality Name (eg, city) [ ] : HOGE
Organization Name (eg, company) [Internet Widgits Pty Ltd] : KURO
Organizational Unit Name (eg, section) [ ] : SSL
Common Name (eg, YOUR name) [ ] : KURO
Email Address [ ] : . (←ドットを入力してある)

コマンド:設定の反映

cupsを再起動させて変更した設定を反映させる

# /etc/init.d/cupsys restart

後はブラウザから玄箱のアドレスにアクセスしてCUPSの設定を行います。
cupsys 1.1系の場合は「http://192.168.xxx.xxx:631」にアクセス
cupsys 1.2系の場合は「https://192.168.xxx.xxx:631」にアクセス

cupsys 1.2系の場合

ブラウザからhttps://192.168.xxx.xxx:631にアクセス

1.https://192.168.xxx.xxx:631にブラウザからアクセスする(httpsですよ。認証ダイアログが表示されますのでOKをクリック)

2.プリンタの追加メニューから設定を行うときにユーザ名rootとrootのパスワードを聞かれます

3.プリンタの名前を適当につけます

4.デバイスでUSB Printer #1を選択する(このときすでにプリンタが認識されているはず)

5.モデルを何でも良いので適当に選択する

6.一旦設定を終了させた後、設定したプリンタを表示させ(プリンタタブをクリック)、「プリンタの変更」をクリック

7.メーカーを「Raw」、モデルを「Raw Queue(en)」にして終了

8.設定後はWindowsのプリンター追加で「ネットワークプリンタ」からURLを 「http://192.168.xxx.xxx:631/printers/設定したプリンタ名」として設定してプリンタのドライバをインストールすれば完了です


cupsys 1.1系の場合

ブラウザからhttp://192.168.xxx.xxx:631にアクセス

1.プリンタの追加メニューから設定を行うときにユーザ名rootとrootのパスワードを聞かれます

2.プリンタの名前だけ適当につけます

3.デバイスでUSB Printer #1を選択する(このときすでにプリンタが認識されているはず)

4.メーカー名を「Raw」モデル名を「Raw Queue(en)」と選択。 (私は「Canon PIXUS860i」を使用していますが 「Canon BJC-800 Foomatic/bjc800 (recommended)」で認識しました)

5.設定後はWindowsのプリンター追加で「ネットワークプリンタ」からURLを 「http://192.168.xxx.xxx:631/printers/設定したプリンタ名」として設定してプリンタのドライバをインストールすれば完了です