11.4 プリンタの設定

プリンタをコンピュータに接続し、ソフトウェアをインストールした後、システム内でプリンタ(論理プリンタ)をインストールする必要があります。可能であれば、この操作にはSUSE Linuxに付属のツールを使用してください。SUSE Linuxはセキュリティに最大の注意を払っていますが、サードパーティのツールは多くの場合、セキュリティ上の制限に関して課題を残しており、最終的には、利点より煩雑さが勝る傾向があります。トラブルシューティングの詳細については、11.6.1項 「CUPSサーバとファイアウォール」および11.6.2項 「CUPS印刷サービスの変更点」を参照してください。

11.4.1 ローカルプリンタ

ログイン時に未設定のローカルプリンタが検出されると、YaSTはその設定を開始します。この場合、設定についての次の説明と同じダイアログが使用されます。

プリンタを設定するには、YaSTコントロールセンターで[ハードウェア]+[プリンタ]の順に選択します。これでプリンタ設定のメインウィンドウが開きます。このウィンドウでは、検出されたデバイスのリストが上部に表示されます。下の部分にはこれまでに設定されているすべてのキューのリストが表示されます。使用しているプリンタが検出されない場合は、手動で設定します。

[Important]重要項目

[プリンタ]エントリがYaSTコントロールセンターで使用できない場合は、その原因としてほとんどの場合、yast2-printerパッケージがインストールされていない可能性があります。この問題を解決するには、yast2-printerパッケージをインストールして、YaSTを再起動します。

11.4.1.1 自動設定

パラレルまたはUSBポートを自動的に設定し、接続されたプリンタを検出できる場合、YaSTはプリンタを自動で構成できます。プリンタデータベース内には、自動ハードウェア検出のときにYaSTが検索するプリンタID文字列も必要です。ハードウェアIDがモデル指定と異なっている場合は、手動でモデルを選択します。

すべてが正しく機能できるようにするために、各設定をYaSTの印刷テスト機能でチェックしてください。テストページには、テストする設定についての重要な情報もあります。

11.4.1.2 手動設定

自動設定の条件が満たされない場合、またはカスタム設定が必要な場合は、プリンタを手動で設定します。自動検出の成功の条件およびプリンタモデルについてデータベース中に見つかる情報の量に応じて、YaSTが正しい設定を自動的に判別できる場合もあれば、最低限の適切な事前選択を行う場合もあります。

設定する必要があるパラメータは次のとおりです。

ハードウェア接続(ポート)

ハードウェア接続の設定は、YaSTがハードウェアの自動検出のときに、プリンタを検出できるようになっていたかどうかによって異なります。プリンタモデルを自動的に検出できる場合、YaSTは、プリンタ接続がハードウェアレベルで機能し、この点では設定変更が必要ないと判断します。YaSTがプリンタモデルを自動検出できない場合は、 ハードウェアレベルでの接続に問題がある可能性があります。この場合、接続の設定にある程度の手動介入が必要になります。

[プリンタ設定]ダイアログで、[追加]を選択して手動設定ワークフローを開始します。ここで、お使いの[プリンタタイプ](例えば、USBプリンタなど)を選択し、[次へ]をクリックして、[プリンタ接続]を入力し、デバイスを選択します。

キューの名前

キュー名は、印刷コマンドを実行するときに使用します。名前は比較的短いものにし、英小文字と数字だけを使用して指定してください。次のダイアログ(キュー名)で、[印刷用の名前]を入力します。

プリンタモデルおよびPPDファイル

使用するGhostscriptドライバやドライバ用のプリンタフィルタに関するパラメータなど、プリンタ固有パラメータはすべて、PPD (PostScript Printer Description)ファイルに保存されます。PPDファイルの詳細については、11.3項 「ソフトウェアのインストール」を参照してください。

多くのプリンタモデルでは、いくつかのGhostscriptドライバが特定のモデルで機能する場合などに、複数のPPDファイルを使用できます。次のダイアログ([プリンタモデル])でメーカおよびモデルを選択すると、YaSTがプリンタに対応するPPDファイルを選択します。モデルに対して複数のPPDファイルを使用できる場合、YaSTはそれらのうちの1つ(通常は、推奨とマーク付けされています)をデフォルトとします。選択されたPPDファイルは次のダイアログの[編集]で変更できます。

PostScript以外のモデルの場合、プリンタ固有のデータはすべて、Ghostscriptドライバによって作成されます。この理由から、ドライバ設定は、出力品質を左右する最も重要な要因の1つです。印刷出力は、選択したGhostscriptドライバの種類(PPDファイル)とその指定したオプションの両方の影響を受けます。必要に応じて、[編集]を選択して(PPDファイルで使用できるようにした場合のように)追加オプションを変更します。

図 11.1 プリンタモデルの選択

プリンタモデルの選択

テストページを印刷して、設定が予想どおりに機能するかどうかを確認してください。たとえば、数ページがほとんど何も印刷されない状態になるなど、出力が文字化けした場合は、最初にすべての用紙を取り出し、YaSTがテストを実行できないようにすると、プリンタを停止できます。

プリンタデータベースに使用中のモデルのエントリが含まれていない場合、[Add PPD File to Database (PPDファイルをデータベースに追加)]を選択して、新しいPPDファイルを追加したり、基本PPDファイルのコレクションを使用して、プリンタを標準プリンタ言語で機能させることができます。このためには、プリンタメーカとして[UNKNOWN MANUFACTURER (不明なメーカ)]を選択します。

詳細な設定

通常、詳細設定を変更する必要はありません。

11.4.2 ネットワークプリンタ

ネットワークプリンタは、さまざまなプロトコルをサポートできますし、その複数を同時にサポートすることも可能です。サポートされているプロトコルのほとんどは標準化されたものですが、いくつかのメーカはその標準に拡張(変更)を加えました。それらのメーカは標準を正しく実装していないシステムのテストや、標準では使用できない特定の機能を提供することを望んでいます。そのような場合、メーカは少数のオペレーティングシステム用にのみドライバを提供し、自社のシステムにつきまとう課題を排除します。残念なことに、Linuxドライバはめったに提供されません。現在の状況では、あらゆるプロトコルがLinux環境で円滑に動作するという仮定に基づいて行動することはできません。したがって、機能する設定を実現するために、さまざまなオプションを実験する必要があります。

CUPSはsocketLPDIPP、およびsmbの各プロトコルをサポートしています。ここでは、これらのプロトコルに関する詳細な情報について説明します。

socket

socketは、データのハンドシェイクを最初に行うことなく、データをインターネットソケットへ送信する接続を意味します。一般的に使用されるsocketのポート番号のいくつかは、9100または35です。デバイスURIの例は、socket://host-printer:9100/です。

LPD (line printer daemon、ラインプリンタデーモン)

実証されてきたLPDプロトコルは、RFC1179で説明されています。このプロトコルを使用する場合、プリンタキューのIDのようなジョブ関連データの一部は、実際の印刷データより先に送信されます。したがって、データを送信するために、LPDプロトコルを設定する際にプリンタキューを指定する必要があります。さまざまなプリンタメーカによる実装は、プリンタキューとして任意の名前を受け入れる柔軟性を備えています。必要に応じて、使用可能な名前がプリンタのマニュアルに提示されています。多くの場合、LPT、LPT1、LP1、または他の類似した名前が使用されています。CUPSシステムを採用している他のLinuxホストまたはUnixホスト上で、LPDキューを設定することもできます。LPDサービスが使用するポート番号は515です。デバイスURIの例は、lpd://host-printer/LPT1です。

IPP (Internet Printing Protocol、インターネット印刷プロトコル)

IPPは比較的新しい(1999年)プロトコルであり、HTTPプロトコルに基づいています。IPPを使用する場合、他のプロトコルより、ジョブとの関連性が高いデータが送信されます。CUPSは、IPPを使用して内部のデータ送信を行います。これは、2台のCUPSサーバ間でキューを転送する上で優先されるプロトコルです。IPPを正しく設定するには、印刷キューの名前は必須です。IPPのポート番号は631です。デバイスURIの例は、ipp://host-printer/psおよびipp://host-cupsserver/printers/psです。

SMB (Windows共有)

CUPSは、Windows共有に接続されたプリンタへの印刷もサポートしています。この目的で使用されるプロトコルは、SMBです。SMBは、ポート番号137138、および139を使用します。デバイスURIの例は、smb://user:password@workgroup/server/printersmb://user:password@host/printer、およびsmb://server/printerです。

設定を行う前に、プリンタがサポートしているプロトコルを決定する必要があります。必要な情報をメーカが提供していない場合、nmapコマンド(nmapパッケージ)を使用して、プロトコルを推定します。nmapは、ホストでオープンしているポートをチェックします。次に例を示します。

nmap -p 35,137-139,515,631,9100-10000 printerIP

11.4.2.1 YaSTを使用するネットワーク内でのCUPSの設定

ネットワークプリンタは、YaSTを使用して設定する必要があります。YaSTを使用すると簡単に設定できます。また、YaSTは、CUPSでのセキュリティ上の制限を処理するのに最も適しています(11.6.2項 「CUPS印刷サービスの変更点」を参照)。ネットワークでのCUPSのインストールのガイドラインについては、http://portal.suse.comにアクセスしてSupport Database (サポートデータベース)で記事「CUPS in a Nutshell」を参照してください。

プリンタ設定を開始し、[追加]をクリックします。ネットワーク管理者に別途指示されていない場合は、[ネットワークプリンタへのディレクトリの印刷]を選択して、具体的な必要条件にしたがって進みます。

11.4.2.2 コマンドラインツールによる設定

代わりに、lpadminlpoptionsなどのコマンドラインツールを使用してCUPSを設定することもできます。バックエンド(usbなど)とパラメータ(/dev/usb/lpなど)で構成されるデバイスURI (uniform resource identifier)が必要です。たとえば、完全URIはparallel:/dev/lp0 (パラレルポート1に接続されているプリンタ)またはusb:/dev/usb/lp0 (USBポートに接続されている最初に検出されたプリンタ)などとなります。

lpadminで、CUPSサーバ管理者の追加、削除、またはクラスおよび印刷キューの管理ができます。プリンタキューを追加するには、次の構文を使用します。

lpadmin -p queue -v device-URI \
-P PPD-file -E

このデバイス(-v)は、指定したPPDファイル(-P)を使用して、queue (-p)として使用できるようになります。プリンタを手動で設定する場合は、このPPDファイルとデバイスの名前を把握しておく必要があります。

-Eは、最初のオプションとして使用しないでください。どのCUPSコマンドでも、-Eを最初の引数として使用した場合、暗号化接続を使用することを暗示的に意味します。プリンタを使用可能にするには、次の例に示す方法で-Eを使用する必要があります。

lpadmin -p ps -v parallel:/dev/lp0 -P \
/usr/share/cups/model/Postscript.ppd.gz -E
    

ネットワークプリンタの設定例:

lpadmin -p ps -v socket://192.168.1.0:9100/ -P \
/usr/share/cups/model/Postscript-level1.ppd.gz -E
   

lpadminのオプションの詳細については、lpadminのマニュアルページを参照してください。

プリンタのセットアップ時には、一部のオプションがデフォルトとして設定されています。これらのオプションは、各印刷ジョブ用に変更できます(使用される印刷ツールに依存)。YaSTを使用して、これらのデフォルトオプションを変更することもできます。コマンドラインツールを使用して、デフォルトオプションを次のように設定します。

  1. 最初に、すべてのオプションを列挙します。

    lpoptions -p queue -l

    例:

    Resolution/Output Resolution: 150dpi *300dpi 600dpi

    有効になっているデフォルトのオプションは、左側にあるアスタリスク(*)によって明示されます。

  2. 次のようにlpadminを使用してオプションを変更します。

    lpadmin -p queue -o Resolution=600dpi
  3. 新しい設定値のチェック:

     lpoptions -p queue -l
    
    解像度/出力解像度:150dpi 300dpi *600dpi

通常のユーザがlpoptionsを実行すると、設定が~/.lpoptionsに書き込まれます。rootの設定は/etc/cups/lpoptionsに書き込まれます。