CUPSによる印刷環境の設定方法と使用方法
はじめに
Vine Linux 3.0から、LPRngに代わってCUPS(the Common Unix Printing System)が標準の印刷システムとして採用されています。
CUPSには、LPRngと比べ以下の利点があります。
IPP(次世代のネットワーク印刷プロトコル)のサポート
ネットワークプリンタの自動検出
Webインターフェイス設定ツール
PPDプリンタ記述ファイルのサポート
フィルタのインタフェースがモジュール化されており、様々なファイル形式をサポートする単一のプリンタドライバをわずかな努力で開発可能
なお、このドキュメントはVine Linux 4.xをフルインストールした環境を基準に記述されています。カスタムインストールを選択された場合は、以下のパッケージがインストールされていることを前提としています。
cups-libs
cups
libgnomecups
gnome-cups-manager
eplaser-cups
foomatic
foomatic-ppd-gimp-print-ijs
foomatic-ppd
2.6からのアップグレードインストール等の場合、標準の印刷システムはLPRngのままであることに御注意ください。
プリンタの設定
ToDo: 画面を w3m のものに差替
プリンタを設定するには、w3m等のWebブラウザからhttp://localhost:631/へアクセスしてください。次のようなページが表示されますので、上のバーの ESP 管理 クラス ヘルプ ジョブ プリンタ ソフトウェア の プリンタ、もしくは、プリンタ管理 からプリンタを追加してください。この際、ユーザ名とパスワードを尋ねられますのでユーザ名にroot、パスワードにrootのパスワードを入力してください。
CUPS 管理インタフェース
CUPS プリンタ管理
名前、場所、説明の入力
最初にプリンタの名前、場所、説明を入力します。この内、名前は必須項目です。名前には後でコマンドラインから利用しやすい様に半角英数字をお使いください。例えば、プリンタの型番やlp0,lp1,...などの様に入力すると良いでしょう。場所や説明はユーザがプリンタを識別しやすい様に入力します。企業や学校など、同機種のプリンタが存在する環境では営業部などの様にプリンタの置き場所を入力しておくと良いでしょう。
CUPS プリンタ追加
デバイスの選択
接続形態を選択します。例えば、直接コンピュータのパラレルポートに接続している場合は、『Parallel Port #1』を選択します。
CUPS デバイスの設定
デバイスURLの入力
ネットワーク接続の場合のみデバイスURLの入力を求められます。例を参考に入力してください。例えば、TCP/IP接続で192.168.0.5 を割り当てられ、9100番のポートを利用するプリンタの場合、socket://192.168.0.5:9100の様に入力します。
CUPS デバイスの URI
メーカ名の選択
一覧から、お使いのプリンタのメーカを選択して、次へ進みます。
CUPS メーカ名の選択
モデル名の選択
一覧からプリンタの型番を選択して次へ進んでください。『プリンタ <名前> の追加に成功しました.』の様に表示されたら、<名前> をクリックしてください。設定済みのプリンタの一覧が表示されます。
CUPS プリンタモデル名の選択
テストページの印刷
以上の設定がうまくいっているかを確認するためにテストページを印刷します。追加したプリンタの欄の『テストページ』と書かれたボタンをクリックしてください。もし、全く印刷できなかったら、『プリンタ変更』をクリックして設定をもう一度、見直してください。もし、用紙サイズの不一致などで印刷できなかった場合は、『印刷設定』をクリックして用紙サイズ等を見直してください。
CUPS テストページ印刷
ヒント
Webブラウザから設定する方法以外にもGNOMEのCUPS印刷マネージャ等を利用する方法があります。CUPS印刷マネージャを利用するには、 GNOMEメニューのデスクトップ→システム管理→CUPS 印刷マネージャを実行するか、コマンドライン等からgnome-cups-managerを実行してください。この際、rootのパスワードを尋ねられますので入力してください。CUPS印刷マネージャが起動できたら、新しいプリンタというアイコンをダブルクリックして必要事項を入力してください。詳細は、CUPS印刷マネージャのヘルプを参照してください。
コマンドラインからの印刷方法
CUPSでは、テキストファイル、PostScript、画像といった様々な種類のファイルを直接、コマンドラインから印刷することができます。
コマンドラインからファイルを印刷するには、lpまたはlprコマンドを使用します。以下の様に特にオプションを指定しない場合は、デフォルトプリンタが使用されます。
$ lp ファイル名
また、オプションの使用によりプリンタを選択することができます。lpコマンドを使用する場合は、次の様にを使用します。
$ lp ファイル名
lprコマンドを使用する場合は、次の様にを使用します。
$ lpr ファイル名
なお、利用可能なプリンタ名を一覧表示するには、以下のコマンドを実行します。この際、を付加するとデフォルトプリンタ名も表示されます。
$ lpstat -p
トラブルシューティング
印刷できないが、何が起きているのかわからない。
CUPS のログは /var/log/cups 以下に出力されます。/var/log/cups/error_log や /var/log/cups/access_log などがあります。ファイル名の最後に .数字 の付いてないものが最新のファイルです。
通常のテキストファイルですので、ページャやエディタを使って読んでどんなメッセージが出力されているか、またそれがどんな意味なのかを調べてください。参照
ログファイルを見てもわからない場合には、さらに詳細なログを出力するように設定を変更し、再度印刷してログを確認してください。
詳細なログを得るには?
CUPS の設定ファイル /etc/cups/cupsd.conf の 154〜166行くらいのところに、LogLevel の設定の部分があります。
LogLevel info となっていたら、さらに詳細な Log を出力するために、エディタを使って LogLevel debug 等に書き換えてください。
/etc/cups/cupsd.conf を書き換えた後で、設定を有効にするために CUPSサーバ を再起動してください。
/etc/cups/cupsd.conf の書き換えと CUPSサーバ の再起動には root 権限が必要です。
/etc/cups/cupsd.conf の書き換え
#
# LogLevel: controls the number of messages logged to the ErrorLog
# file and can be one of the following:
#
# debug2 Log everything.
# debug Log almost everything.
# info Log all requests and state changes.
# warn Log errors and warnings.
# error Log only errors.
# none Log nothing.
#
#LogLevel info
LogLevel debug
行頭に # をつけることでその行を無効にできます。
LogLevel info と書かれている行に # をつけて無効にして、その次の行に新しい設定 LogLevel debug と書くと、変更前は LogLevel info だったということを残しておけます。
書き換えたら root権限で次のコマンドを実行して CUPSサーバ を再起動します。
# /etc/init.d/cups restart
再起動後に、再度印刷を実行し、どんなログが出力されているか確認してください。
ブラウザからhttp://localhost:631/にアクセスすると接続を拒否されます。
まず、CUPSサーバが起動しているかを次のようにGNOME端末等で確認してください。
$ /etc/init.d/cups status
cupsdは停止しています
の様に表示されれば、CUPSサーバが起動していないのが原因です。root権限で次のコマンドを実行してCUPSサーバを起動してください。
# /etc/init.d/cups start
ここで以下の様に表示されれば、CUPSサーバが起動していますので再度アクセスしてみて下さい。
cupsを起動中: [ OK ]
私が使っているプリンタ用のドライバが用意されていません。
もし、お使いのプリンタ用のドライバが見つからなかったら、他のプリンタ向けのドライバが用意されていないかapt-getを利用して『foomatic』などをキーワードに検索してみてください。該当しそうなパッケージがあればインストールしてみると良いかもしれません。
ドキュメント就筆時点では、の様なパッケージが存在しています。
なお、インストール後はCUPSサーバを再起動してください。
該当するパッケージがないならば、お使いのプリンタのlinuxでの対応状況を調べておくと良いでしょう。『linux <プリンタの型番>』をキーワードに検索エンジンを利用してみてください。
もし、CUPSでは使用できないが従来のLPRngで使用できるプリンタであればLPRng(Plusに収録)をお使い下さい。LPRngを使用する場合のプリンタの設定方法については、LPRngによる印刷環境の設定方法と使用方法を御覧ください。
Plusにあるパッケージ
foomatic-ppd-hpijs
ヒューレットパッカード社のインクジェットプリンタ用
foomatic-ppd-omni
Omni社のプリンタ用
foomatic-hpijsをインストールする場合の例
# apt-get install foomatic-hpijs
# /etc/init.d/cups restart
2.x からのアップグレード環境でCUPSを利用するには?
アップグレード時には、CUPSが利用できる状態になっていません。CUPSを利用できるようにするためには、以下の手順をroot権限で実行して下さい。
# /sbin/update-alternatives --auto print
# apt-get --reinstall install cups
参考文献
CUPS ヘルプページ