この章では、プリンタを設定してネットワーク上のシステムからアクセスできるようにする手順を説明します。ほとんどのプリンタ設定作業は、Admintool を使用して実行できます。この章で説明する手順は、次のとおりです。
プリンタの概要については、第 1 章「印刷管理の概要」を参照してください。
この節では、サイトにある SunOS 5.5.1 またはその互換バージョンを稼動しているシステムのプリンタ構成情報を変換して、その情報を印刷クライアントにコピーすることにより、既存のプリンタにアクセスできるようにする方法を説明します。
既存のプリンタの台数が少ない場合は、Solstice プリンタマネージャか Admintool を使用してプリンタへのアクセスを追加する方が、プリンタ構成情報を変換して印刷クライアントに配布するよりも簡単です。プリンタへアクセスを追加する方法については、表 3-2 を参照してください。
表 3-1 に、サイトにある SunOS 5.5.1 またはその互換バージョンを稼動しているシステムのプリンタ構成情報を変換して、その情報を印刷クライアントにコピーすることにより、既存のプリンタにアクセスできるようにする作業の概要を示します。
表 3-1 作業マップ: 印刷クライアントを更新して、既存のプリンタにアクセスする
作業 |
説明 |
手順の説明 |
---|---|---|
既存のプリンタ構成情報を変換する |
SunOS 5.5.1 または互換バージョンのシステムのプリンタ構成情報を変換する。 SunOS 5.5.1 または互換バージョンのソフトウェアを使用しているサイトでは、/etc/lp/printers ディレクトリ内のプリンタ構成情報を、/etc/printers.conf 構成ファイルに変換する。通常、この作業は 1 回行うだけでよい。 | |
SunOS 4.1 を稼動するシステムのプリンタ構成情報を変換する。 SunOS 4.1 ソフトウェアを使用しているサイトでは、4.1 システムの /etc/printcap ファイル内のプリンタ構成情報を、/etc/printers.conf 構成ファイルに変換する。通常、この作業は 1 回行うだけでよい。 |
既存のプリンタ構成情報は、Solaris 7 またはその互換バージョンをインストールあるいはアップグレードするときに自動的に変換されます。この節では、SunOS 5.5.1 またはその互換バージョンのシステム、あるいは SunOS 4.1 のシステムのプリンタ構成情報を、印刷クライアントソフトウェアで使用する /etc/printers.conf プリンタ構成ファイルに変換する方法を説明します。変換作業を自動化するために、2 つの新しい印刷管理コマンドのいずれかを使用します。
conv_lp(1M) コマンドは、SunOS 5.7 システムの /etc/lp/printers ディレクトリ内の情報を、そのシステムの /etc/printers.conf ファイルのエントリに変換します。手順については、「SunOS 5.5.1 または互換バージョンのシステムの印刷情報を変換する方法」を参照してください。
conv_lpd(1M) コマンドは、SunOS 4.1 システムの /etc/printcap 構成ファイル内の情報を、/etc/printers.conf ファイルのエントリに変換します。手順については、「SunOS 4.1 システムの印刷情報を変換する方法」を参照してください。
ネームサービスを使用していない場合、サイトにある既存のプリンタを含む、/etc/printers.conf のマスターファイルを作成します。次に、このマスターファイルをすべての印刷クライアントにコピーするか、(ネームサービスを使用している場合は)、NIS または NIS+ にロードします。新しい印刷クライアントは、最初から、サイトにある既存のプリンタにアクセスできるようにしておくことを推奨します。
NIS または NIS+ ネームサービスを使用してプリンタ情報を構成している場合、印刷クライアント上の /etc/printers.conf ファイルは使用しないでください。印刷クライアントは、最初に /etc/printers.conf ファイルを使用してプリンタを検出します。そのときに、/etc/printers.conf ファイル内の情報と、NIS マップまたは NIS+ マップ内のプリンタ情報に矛盾がある場合は、予期せぬ結果が生じることがあります。この問題を回避するために、印刷クライアントが NIS ネームサービスまたは NIS+ を使用してプリンタ情報を構成するときは、印刷クライアント上の /etc/printers.conf ファイルを削除してください。
SunOS 5.7 またはその互換バージョンと、Solaris 2.6 または互換バージョンの印刷クライアントソフトウェアがインストールされているシステムに、スーパーユーザーとしてログインします。
そのシステムの /etc/lp/printers ディレクトリ内のプリンタ構成情報を /etc/printers.conf ファイルに変換します。
# /usr/lib/print/conv_lp
SunOS 4.1 システムの /etc/printcap ファイルを、Solaris 7 互換の印刷クライアントソフトウェアをインストールしている SunOS 5.7 または互換システムにコピーします。
/etc/printcap ファイルをコピーした SunOS 5.7 または互換システムに、スーパーユーザーとしてログインします。
/etc/printcap ファイル内のプリンタ構成情報を /etc/printers.conf ファイルに変換します。
# /usr/lib/print/conv_lpd
「印刷の設定の作業マップ」は、印刷サーバーの設定 (プリンタの追加) と印刷クライアントの設定 (プリンタへのアクセスの追加) に必要な作業の概要を示しています。ローカルプリンタとは、印刷サーバーに物理的にケーブル接続されたプリンタのことです。ネットワークプリンタとは、ネットワークに物理的に接続されたプリンタのことです。プリンタへのアクセスを追加する (つまり、リモートアクセスを追加する) とは、印刷クライアント (サーバー以外のすべてのマシン) がプリンタにアクセスできるようにする手順のことです。
作業 |
説明 |
手順の説明 |
---|---|---|
1. ローカルプリンタの追加 |
Admintool を使用する プリンタをシステムに物理的に接続した後で、Admintool を使用してプリンタを使用できるようにする。 | |
|
LP コマンドを使用する プリンタをシステムに物理的に接続した後で、LP コマンドを使用してプリンタを使用できるようにする。 | |
2. プリンタへのアクセスの追加 |
Admintool を使用する Admintool を使用して、プリンタへのアクセスを印刷クライアントに追加する。 | |
|
LP コマンドを使用する lp コマンドを使用して、プリンタへのアクセスを印刷クライアントに追加する。 | |
|
ネームサービスを使用する NIS または NIS+ ネームサービスの /etc/printers.conf ファイルを設定して、プリンタへのアクセスを印刷クライアントに追加する。 | |
3. 既存のプリンタへのアクセスの追加 |
マスターファイル /etc/printers.conf をクライアントにコピーする ネームサービスを使用していない場合は、変換したシステムの /etc/printers.conf ファイル内のプリンタ構成情報を、他の印刷クライアントにコピーする。 | |
|
/etc/printers.conf ファイルを使用して、NIS にロードする NIS ネームサービスを使用する場合は、変換したシステムの /etc/printers.conf ファイルのプリンタ構成情報を NIS マスターファイルにコピーする。 | |
|
/etc/printers.conf ファイルを使用して、NIS+ にロードする NIS+ ネームサービスを使用する場合は、変換したシステムの /etc/printers.conf ファイルのプリンタ構成情報を NIS マスターファイルにコピーする。 | |
4. .printers ファイルの設定 |
(省略可能) $HOME/.printers ファイルを使用して、ユーザーが独自のカスタムプリンタ別名を設定できるようにする。 | |
5. ネットワークプリンタの追加 |
プリンタベンダー提供のツールを使用する プリンタをネットワークに物理的に接続した後、ベンダー提供のソフトウェアを使用してネットワークプリンタを構成する。 | |
|
LP コマンドを使用する プリンタをネットワークに物理的に接続した後、Solaris 7 または互換バージョンのソフトウェアを使用してネットワークプリンタを構成する。 | |
6. バナーページのオフ |
(省略可能) 印刷されないように、バナーページをオフにできる。 | |
7. 障害警告の設定 |
(省略可能) プリンタ用に Admintool よりも限定的な障害警告を設定できる。 | |
8. 障害回復機能の設定 |
(省略可能) Admintool では、障害が起きた後でプリンタを回復させる方法を設定できない。 | |
9. プリンタへのアクセス制限 |
(省略可能) Admintool で、許可リストを設定できる。ただし、プリンタへアクセスできるユーザーを制限したい場合には、拒否リストを設定する。 |
次の前提条件を満たしているかどうかを確認します。Admintool を使用するには、以下の条件を満たさなければなりません。
プリンタを設定したいシステムにログインします。
次のコマンドを使用して Admintool を起動します。
$ admintool &
「ブラウズ (Browse)」メニューから「プリンタ (Printers)」を選択します。
「Admintool: プリンタ (Printers)」ウィンドウが表示されます。
システムにローカルプリンタまたはネットワークプリンタを追加すると、そのプリンタにローカルシステムからアクセスできるようになります。プリンタをインストールするシステムが「印刷サーバー」になります。
プリンタは、Admintool と LP 印刷サービスコマンドのどちらでも追加できます。次に、それぞれを使用する方法を説明します。
プリンタサーバーにするシステムを選択します。
pkginfo(1) コマンドを使用して、印刷サーバーに印刷パッケージ SUNWpcr、SUNWpcu、SUNWpsr、SUNWpsu、SUNWscplp、および SUNWpsf がインストールされているか確認します。
# pkginfo package_instance
プリンタをプリンタサーバーに接続し、プリンタの電源を入れます。
ハードウェアのスイッチとケーブルの要件については、プリンタのインストールマニュアルを参照してください。
プリンタを接続したプリンタサーバー上で Admintool を起動します。
詳細は、「Admintool を起動する方法」の手順を参照してください。
「編集 (Edit)」メニューから「追加 (Add)」、「ローカルプリンタ (Local Printer)」の順に選択します。
フィールドに情報を入力する必要がある場合は、「ヘルプ (Help)」ボタンをクリックして、このウィンドウのフィールド定義を表示します。
「了解 (OK)」をクリックします。
Admintool を終了します。
左上隅にあるボタンをクリックし、「終了 (quit)」を選択します。
新しいプリンタへのアクセスをクライアントに追加します。
これでプリンタは追加されました。プリンタへのアクセスをクライアントで作成します。詳細は、「印刷クライアントの設定」を参照してください。
オプションの作業を完了します。
プリンタを設定するときは、オプションの (省略可能な) 作業がいくつかあります。残りの作業の参照先については、「印刷の設定の作業マップ」を参照してください。
この例では、プリンタ luna が印刷サーバー krypton に追加されています。
ローカルプリンタの追加は、コマンド行インタフェースを使用しても行えます。
プリンタサーバーにするシステムを選択します。
pkginfo(1) コマンドを使用して、印刷サーバーに印刷パッケージ SUNWpcr、SUNWpcu、SUNWpsr、SUNWpsu、SUNWscplp、および SUNWpsf がインストールされているか確認します。
# pkginfo package_instance
プリンタをプリンタサーバーに接続して、プリンタの電源を入れます。
ハードウェアのスイッチとケーブル接続の要件については、プリンタのインストールマニュアルを参照してください。
lp の所有権を設定して、ポートデバイスに対する読み取り権と書き込み権を設定します。
# chown lp /dev/term/device # chmod 600 /dev/term/device
lpadmin(1M) コマンドを使用して、プリンタ名、デバイス、プリンタタイプ、および内容形式を定義します。
lpfilter(1M) コマンドを使用して、フィルタを印刷サーバーに追加します。
プリンタがプリンタ要求を受け入れて、その要求を印刷できるようにします。
# accept printer-name # enable printer-name
lpstat(1) コマンドを使用して、プリンタが正しく構成されているか確認します。
# lpstat -p printer-name
(省略可能) プリンタの説明を追加します。
# lpadmin -p printer_name -D "description"
新しいプリンタへのアクセスをクライアントで追加します。
これでプリンタは追加されました。プリンタへのアクセスをクライアントで作成します。詳細は、「印刷クライアントの設定」を参照してください。
オプションの作業を完了します。
プリンタを設定するときは、オプションの (省略可能な) 作業がいくつかあります。残りの作業の参照先については、「印刷の設定の作業マップ」を参照してください。
この例では、ローカルの PostScript プリンタを印刷サーバーで印刷できるようにする方法を示しています。この例のコマンドは、プリンタが接続されている印刷サーバーで実行しなければなりません。この例では次の情報を使用していますが、これらの情報は状況によって異なります。
プリンタ名: luna
ポートデバイス: /dev/term/b
プリンタタイプ: PS
ファイル内容形式: postscript
印刷クライアントは、プリンタ用のサーバーではないが、プリンタにアクセスできるシステムのことです。印刷クライアントは、印刷サーバーのサービスを使用して、印刷ジョブのスプール、スケジュール、およびフィルタリングを実行します。1 つのシステムがあるプリンタの印刷サーバーになり、同時に他のプリンタの印刷クライアントになることも可能です。
リモートプリンタへのアクセスは、ドメイン単位またはマシン単位で構成できます。これら 2 つの組み合わせも利用できます。マシン単位でリモートプリンタへのアクセスを追加する方法については、「Admintool を使用して印刷クライアントにプリンタアクセスを追加する方法」または 「LP コマンドを使用して、印刷クライアントにアクセスを追加する方法」を参照してください。ドメイン単位でアクセスを追加する方法については、「ネームサービスを使用して、リモートプリンタへのアクセスを追加する」の手順に従ってください。
リモートプリンタへのアクセスを追加したいシステム上で Admintool を起動します。
詳細は、「Admintool を起動する方法」の手順を参照してください。
「編集 (Edit)」メニューから「追加 (Add)」、「プリンタへのアクセス (Access to Printer)」の順に選択します。
「プリンタへのアクセス (Add Access to Printer)」ウィンドウが表示されます。
ウィンドウに情報を入力します。
フィールドに情報を入力する必要がある場合は、「ヘルプ (Help)」ボタンをクリックして、このウィンドウのフィールドの定義を表示します。
「了解 (OK)」をクリックします。
Admintool を終了します。
左上隅にあるボタンをクリックし、「終了 (quit)」を選択します。
次の例では、印刷クライアント rogue が、印刷サーバー enterprise 上のプリンタ rocket にアクセスできるようにします。
必要な情報を収集します。
必要な情報は、プリンタ名とそのプリンタのサーバー名です。
lpadmin コマンドを使用して、プリンタを定義します。
# lpadmin -p printer_name -s server_name
(省略可能) プリンタ記述を追加します。
# lpadmin -p printer_name -D "description"
lpstat コマンドを使用して、プリンタが正しく構成されていることを確認します。
# lpstat -p printer-name
リモートプリンタで印刷する場合、リモートプリンタにアクセスを追加しなければなりません。次の例は、印刷サーバー saturn のプリンタ luna にアクセスを構成する方法を示しています。システム saturn は、プリンタ luna の印刷クライアントになります。
NIS または NIS+ マップを使用している場合、プリンタへのアクセスはドメイン単位で設定します。詳細は、NIS+(1) のマニュアルページを参照してください。
NIS マスターサーバー上で lpset コマンドを実行しprinters.conf ファイルを作成します。次に、マップを作成して、そのマップをプッシュします。これで、ドメイン内のすべてのメンバーに、マップ内で定義されたプリンタへのアクセスを与えます。lpset(1M) のマニュアルページを参照してください。
NIS マスターサーバー上でスーパーユーザーになります。
プリンタごとに lpset コマンドを使用して、printers.conf ファイルを作成します。
# lpset -a bsdaddr=server1,printer1,extensions printer1
-a bsdaddr=server1,printer1,extensions |
印刷サーバーとプリンタ宛先を追加して、Solaris プロトコル拡張を有効にする |
printer1 |
プリンタ名を指定する |
NIS マップを作成してプッシュします。
# make -f /var/yp/makefile -f /usr/lib/print/Makefile.yp printers.conf
-f /var/yp/makefile |
NIS Makefile を指定する |
-f /usr/lib/print/Makefile.yp |
NIS 印刷 Makefile を指定する。これは、両方の Makefile の暗黙のルールや定義済みマクロが連結されることを意味する |
printers.conf |
作成または更新するファイルを指定する |
この例は、印刷サーバー saturn に接続されているプリンタ luna 用の printers.conf エントリを作成しています。make コマンドは、printers.conf マップをプッシュします。
# lpset -a bsdaddr=saturn,luna,Solaris -a description="Room 1954 ps" luna # make -f /var/yp/makefile -f /usr/lib/print/Makefile.yp printers.conf
NIS+ マスターサーバー上で lpset コマンドを実行します。プリンタ構成情報を XFN 経由で NIS+ に追加するには、lpset(1M) と fns(5) のマニュアルページを参照してください。
NIS+ マスターサーバー上でスーパーユーザーになります。
(省略可能) FNS が初期化されていない場合、NIS+ ルートドメイン用のルート組織コンテキストと下位コンテキストを作成します。
# fncreate -t org org//
NIS+ マップを作成します。
# lpset -n fns -a bsdaddr=server1,printer1,extensions printer1
-n fns |
FNS コンテキストを作成または更新する |
-a bsdaddr=server1,printer1,extensions |
印刷サーバーとプリンタ宛先を追加して、Solaris プロトコル拡張を有効にする |
printer1 |
プリンタ名を指定する |
この例は、印刷サーバー saturn に接続されているプリンタ luna 用の printers.conf エントリを作成しています。
# lpset -n fns -a bsaddr=saturn,luna,Solaris -a description="Room 1954 ps" luna
サイトにある既存のプリンタを含む /etc/printers.conf のマスターファイルを作成すると、次の 2 つの方法で、すべての印刷クライアントが既存のプリンタにアクセスできるようになります。
ネームサービスを使用していない場合は、/etc/printers.conf のマスターファイルをすべての印刷クライアントにコピーします。
ネームサービスを使用している場合は、/etc/printers.conf のマスターファイルを使用して、NIS または NIS+ マスターファイルをロードします。このファイルの情報は、すべての印刷クライアントで利用できるようになります。
NIS マスターサーバーにコピーする /etc/printers.conf ファイルを持つシステムにスーパーユーザーとしてログインします。
そのシステムの /etc/printers.conf ファイルを NIS マスターサーバーの /etc ディレクトリにコピーします。
/usr/lib/print/Makefile.yp を NIS マスターサーバーの /var/yp ディレクトリにコピーします。
NIS マスターサーバーにスーパーユーザーとしてログインします。
このシステム上で、ファイルを処理する方法を指定します。
# make -f /var/yp/makefile -f /var/yp/Makefile.yp printers.conf
-f /var/yp/makefile |
NIS Makefile を指定する |
-f /usr/lib/print/Makefile.yp |
NIS 印刷 Makefile を指定する。これは、両方の Makefile の暗黙ルールや定義済みマクロが連結されることを意味する |
printers.conf |
作成または更新するファイルを指定する |
NIS+ の admin グループのメンバーであることを確認します。次の作業を行うには、適切な特権が必要です。
NIS+ マスターファイルにコピーする /etc/printers.conf ファイルを持つシステムにスーパーユーザーとしてログインします。
システムの /etc/printers.conf ファイルを NIS+ マスターファイルにコピーします。
# fncreate_printer -f /etc/printers.conf thisorgunit/service/printer
このコマンドの入力方法については、『Federated Naming Service Programming Guide』を参照してください。
印刷クライアントに既存のプリンタへのアクセスを与えた後、ユーザーは自分のホームディレクトリにある .printers ファイルにプリンタ別名を設定できます。設定手順については、次の節を参照してください。
プリンタ情報をカスタマイズする必要がなければ、ユーザーのホームディレクトリに .printers ファイルを設定する必要はありません。しかし、.printers ファイルは、ユーザーが独自のカスタムプリンタ別名を設定できる場所です。別名 _default を使用すれば、デフォルトのプリンタを設定できます。また、特殊別名 _all を設定すれば、印刷要求を取り消したりプリンタの情報をチェックしたりするときの対象となるプリンタのリストを定義できます。
LP コマンドは、ネームサービスをチェックする前に、ユーザーのホームディレクトリにプリンタ構成情報があるかどうかをチェックすることを覚えておいてください。つまり、ユーザーのプリンタ構成ファイルを設定することによって、ネームサービスの共有情報ではなく、カスタムプリンタ情報を使用できます。
.printers ファイルの詳細は、printers(4) のマニュアルページを参照してください。
スーパーユーザーとしてシステムにログインします。
任意のエディタで、.printers ファイルをユーザーのホームディレクトリに作成します。
(省略可能) _default 別名を設定して、特定のプリンタをデフォルトプリンタに指定します。次の例に示すようなエントリを使用します。
_default printer_name
(省略可能) _all 別名を設定して、印刷要求を取り消したりプリンタの状態をチェックしたりするときの対象となるプリンタを定義します。次の例に示すようなエントリを使用します。
_all printer1 printer2 printer3
そのファイルを .printers として保存します。
「ネットワークプリンタ」とは、印刷サーバーに接続せずに印刷クライアントに印刷サービスを提供するハードウェアデバイスのことです。ネットワークプリンタは専用のシステム名と IP アドレスを持ち、ネットワークに直接接続されます。ネットワークプリンタが印刷サーバーに接続されていない場合でも、専用の印刷サーバーを設定しておく必要があります。印刷サーバーは、ネットワークプリンタの待ち行列化機能と印刷管理機能を提供します。
1 つ以上の独自のプロトコルを使用するので、ネットワークプリンタは、ベンダー提供の印刷プログラムが必要です。ベンダーから提供される印刷プログラムの設定手順は、それぞれ異なることがあります。プリンタにベンダー提供サポートが付いていない場合は、ネットワークプリンタサポートを使用できます。可能な限りプリンタベンダー提供のソフトウェアを利用することを強く推奨します。
ベンダーは、SVR4 プリンタインタフェーススクリプトを提供して標準プリンタインタフェーススクリプトを置き換えている場合があります。その場合、SVR4 インタフェーススクリプトはベンダー提供の印刷プログラムを呼び出して、ジョブをプリンタに送ります。このスクリプトが提供されない場合は、標準インタフェーススクリプトを変更してベンダー提供の印刷プログラムを呼び出す必要があります。この作業は、標準インタフェーススクリプトのプリンタごとのコピーをベンダー提供の印刷プログラムを呼び出すように編集することで実行できます。
ネットワークプリンタ構成で使用する用語を説明します。
印刷サーバー: プリンタ用にジョブをスプールおよびスケジュールするマシン。このマシンにプリンタが構成されます。
プリンタホストデバイス: プリンタホストデバイスは、ネットワークに対応していないプリンタにネットワークプリンタサポートを提供する、ベンダー提供のソフトウェアおよびハードウェアです。プリンタホストデバイスとそれに接続された 1 つまたは複数のプリンタの組み合わせを「ネットワークプリンタ」と呼びます。
プリンタノード: 物理的なプリンタまたはプリンタホストデバイス。ネットワークサポートが物理的なプリンタにあるときは、物理的なプリンタです。ネットワークインタフェースを提供するために外部ボックスを使用しているときは、プリンタホストデバイスです。プリンタノード名は、IP アドレスが与えられているマシン名です。この名前はシステム管理者が選択するもので、デフォルトやベンダーの要件はありません。ノードと同様に、プリンタノード名も一意でなければなりません。
プリンタ名: プリンタコマンドを使用するときにコマンド行に入力する名前。この名前は、システム管理者がプリンタ構成時に選択します。1 つの物理的なプリンタは、複数のプリンタ名または待ち行列名を持つことができます。それぞれ、そのプリンタへのアクセスを提供します。
ネットワークプリンタアクセス名: プリンタサブシステムがプリンタにアクセスするときに使用するプリンタノードポートの内部名。プリンタノード名か、プリンタベンダーポート指定付きのプリンタノード名です。プリンタベンダーポート指定は、プリンタベンダーのマニュアルで明示的に定義されています。これはプリンタに固有です。プリンタがプリンタホストデバイスでありプリンタでもある場合、ポート指定は、プリンタホストデバイスのマニュアルに説明されています。書式は次のいずれかです。
printer_node_name
または
printer_node_name:port_designation
プロトコル: プリンタとケーブル経由で通信するために使用するプロトコル。プリンタのマニュアルには、選択するプロトコルについての説明があります。ネットワークプリンタサポートは、BSD プリンタプロトコルと raw TCP の両方を提供します。実装によって、両方を使用するように設定できます。
タイムアウト (再試行間隔): タイムアウトは、プリンタへの接続の試行間に待機する秒数を表すシード (seed) 数です。このシード数は、接続の試行間に待機する最小の秒数であり、接続が失敗するごとに増えます。プリンタへの接続が繰り返して失敗すると、ユーザーの介入を要求するメッセージがユーザーに戻されます。接続が成功するか、ジョブの所有者がジョブを取り消すまで、再接続の試行は続けられます。
多くの場合、ネットワークプリンタには、プリンタベンダー提供のソフトウェアサポートが提供されます。プリンタにプリンタベンダー提供のソフトウェアがある場合は、プリンタベンダー提供のソフトウェアを利用することを強く推奨します。プリンタベンダー提供のソフトウェアは、そのプリンタの特性をサポートするように設計されていて、プリンタの能力をフルに活用します。プリンタのマニュアルをよく読んで、プリンタを LP 印刷システムにインストールおよび構成してください。
ネットワークプリンタベンダーがソフトウェアサポートを提供していない場合、Sun が提供するソフトウェアを利用できます。このソフトウェアは、ネットワークプリンタの汎用サポートを提供するもののため、必ずしもプリンタで利用できるすべての機能を使用できません。
ネットワークプリンタを追加するための一般的な説明については、第 3 章「プリンタの設定手順」を参照してください。次は、Sun 提供のソフトウェアを使用したプリンタの管理を説明します。
ネットワークプリンタ用のソフトウェアサポートは、インタフェーススクリプト経由で呼び出されます。ネットワークインタフェーススクリプト netstandard でネットワークプリンタを構成すると、ネットワークプリンタサポートモジュールが呼び出されます。次に、ネットワークサポートでプリンタを構成するコマンドを示します。
lpadmin -p printer_name -i /usr/lib/lp/model/netstandard
印刷サブシステムは、BSD 印刷プロトコルと raw TCP を使用してプリンタと通信します。プリンタのマニュアルには、使用するプロトコルについての情報が提供されています。一般に、プリンタに使用するのは TCP プロトコルです。
プロトコルを選択するコマンドは次のいずれかです。
lpadmin -p printer_name -o protocol=bsd
または
lpadmin -p printer_name -o protocol=tcp
選択したプロトコルが BSD 印刷プロトコルの場合、さらにコントロールファイルをプリンタに送信する順番を選択できます。一部のプリンタは、コントロールファイルの後にデータファイルという順番を仮定しますが、その逆を仮定するプリンタもあります。この情報については、プリンタベンダーのマニュアルを参照してください。デフォルトでは、コントロールファイルを先に送信します。
順番を選択するコマンドは次のいずれかです。
lpadmin -p printer_name -o bsdctrl=first
または
lpadmin -p printer_name -o bsdctrl=last
システム管理者はプリンタノード名を選択します。ネットワーク上のノードと同様に、この名前は一意でなければなりません。プリンタノード名は、プリンタの IP アドレスと関連付けられます。
印刷サブシステムはプリンタのアクセス情報を必要とします。これは、プリンタへのネットワーク接続を行うときにサブシステムが使用する名前です。この名前は、システム管理者が lpadmin コマンドで印刷サブシステムに提供します。これは、プリンタ構成データベースの一部になります。プリンタアクセス名はプリンタノード名であり、ポート名で修飾される場合もあります。ポート指定はプリンタベンダー間で異なります。ポート指定については、プリンタのマニュアルを参照してください。次に、プリンタアクセス名の書式を示します。
printer_node-name[:port_designation]
TCP の共通ポート指定は 9100 です。プリンタノード名が pn1 で、プリンタベンダーがそのポートを 9100 と定義していた場合、プリンタアクセス名は pn1:9100 になります。この場合にプリンタを構成するには、次のコマンドを使用します。
lpadmin -p printer_name -o dest=pn1:9100
BSD プロトコルを使用するとき、ポート指定は番号でなく、プリンタベンダーが定義した名前です (例: xxx_parallel_1)。プリンタノード名が cardboard の場合、プリンタアクセス名は cardboard:xxx_parallel_1 になります。この場合プリンタを構成するには、次のコマンドを使用します。
lpadmin -p printer_name -o dest=cardboard:xxx_parallel_1
ポート指定がなく、プリンタノード名が newspaper の場合、プリンタアクセス名はプリンタノード名 newspaper になります。この場合にプリンタを構成するには、次のコマンドを使用します。
lpadmin -p printer_name -o dest=newspaper
タイムアウトオプションは、プリンタに接続しようとする試行間で待機する時間 (秒数) を個別に選択するためのものです。ウォームアップ時間が長いプリンタの場合は、タイムアウト値を大きくします。デフォルトは 10 秒です。
タイムアウト値は、印刷プロセスが成功するか失敗するかには影響を与えません。これは、ソフトウェアが初期タイムアウトカウントとして使用するシード値です。失敗が続くと、このカウントは増えます。プリンタへの接続の試行が連続して失敗すると、メッセージがスプーラに送信されます。これによって、ユーザーの介入が必要であることをユーザーに警告します。プリンタの電源が入っていなかったり、用紙がなくなっていたりするときにも、このメッセージが生成される可能性があります。たとえば、プリンタがウォームアップしているときに、このようなメッセージが頻繁に生成されるようであれば、タイムアウト値を増やすことで間違ったメッセージを減らすことができます。
システム管理者は最適なタイムアウト値を探してください。次に、タイムアウト値を設定するコマンドを示します。
lpadmin -p printer_name -o timeout=n
各ネットワークプリンタは、そのプリンタへのアクセスを提供するサーバーを 1 つだけ持っています。これによって、サーバーはそのプリンタへのアクセスを管理して、ジョブの一貫性を保つことができます。
ネットワークプリンタのデフォルトデバイスは /dev/null です。プリンタに待ち行列が 1 つしかない場合はこれで十分です。複数の待ち行列が必要であれば、そのデバイスをファイルに設定します。これによって、印刷システムはプリンタへのアクセスを待ち行列間で制限できます。次のコマンドは、デバイスファイルを作成して、ネットワークプリンタデバイスとして構成しています。
touch /path/filename chmod 600 /path/filename lpadmin -p printer_name -v /path/filename
次の例では、devtreedown というデバイスファイルを作成しています。
# touch /var/tmp/devtreedown # chmod 600 /var/tmp/devtreedown # lpadmin -p treedown -v /var/tmp/devtreedown
プリンタをネットワークに接続し、電源を入れます。
ハードウェアのスイッチとケーブルの要件については、プリンタのインストールマニュアルを参照してください。IP アドレスを取得して、プリンタノード名を選択します。これは、ネットワークにノードを追加することと同じです。
プリンタのマニュアルに従って、SVR4 LP 印刷スプーラのある SunOS 5.7 システムにネットワークプリンタを追加します。
プリンタのマニュアルを使用して、ネットワークプリンタを構成してください。手順は、ベンダーやプリンタに固有です。
新しいプリンタへのアクセスをクライアントに追加します。
これでプリンタは追加されました。プリンタへのアクセスをクライアントに作成します。詳細は、「印刷クライアントの設定」を参照してください。
オプションの作業を完了します。
ネットワークプリンタを設定するときは、オプションの作業がいくつかあります。残りの作業の参照先については、「印刷の設定の作業マップ」を参照してください。
ここでは、ネットワークプリンタサポートソフトウェアを使用して、ネットワークプリンタを設定するのに必要な手順を説明しています。このソフトウェアを使用するのは、プリンタにベンダー提供のソフトウェアが付いていない場合だけです。
プリンタをネットワークに接続して、プリンタの電源を入れます。
ハードウェアのスイッチとケーブル接続の要件については、プリンタのインストールマニュアルを参照してください。IP アドレスを取得して、プリンタノード名を選択します。これは、ネットワークにノードを追加することと同じです。
ネットワークプリンタを構成するのに必要な情報を収集します。
プリンタ名
プリンタサーバー
ネットワークプリンタアクセス名
プロトコル
タイムアウト
詳細は、「ネットワークプリンタの追加」に説明されている用語を参照してください。
lpadmin(1M) コマンドを使用して、プリンタ名、デバイス、プリンタタイプ、および内容形式を定義します。
プリンタ名とプリンタが使用するポートデバイスを定義します。
# lpadmin -p printer-name -v /dev/null
使用するデバイスは /dev/null です。
プリンタが使用するインタフェースを指定します。
# lpadmin -p printer-name -i /usr/lib/lp/model/netstandard
ネットワークプリンタサポートソフトウェアで提供されるインタフェーススクリプトは /usr/lib/lp/model/netstandard です。
プリンタ宛先、プロトコル、およびタイムアウト値を設定します。
# lpadmin -p printer-name -o dest=access-name:port -o protocol=protocol -o timeout=value
-p printer-name |
ネットワークプリンタ名を指定する |
-o dest=access-name:port |
ネットワークプリンタアクセス名と、プリンタのマニュアルに定義されていれば指定されたプリンタベンダーポートに、プリンタ宛先を設定する。詳細は、「ネットワークプリンタの追加」を参照 |
-o protocol:protocol |
プリンタとケーブル経由で通信するために使用するプロトコルを設定する。BSD と raw TCP の両方をサポートしている |
-o timeout:value |
プリンタへの接続の試行間で待機する秒数を表す再試行タイムアウト値を設定する。詳細は、「ネットワークプリンタの追加」を参照 |
プリンタのファイル内容形式とプリンタタイプを指定します。
# lpadmin -p printer-name -I content-type -T printer-type
lpfilter(1M) コマンドを使用して、印刷サーバーにフィルタを追加します。
# cd /etc/lp/fd # for filter in *.fd;do > name=`basename $filter .fd` > lpfilter -f $name -F $filter > done
プリンタがプリンタ要求を受け入れて、その要求を印刷できるようにします。
# accept printer-name # enable printer-name
lpstat(1M) コマンドを使用して、プリンタが正しく構成されていることを確認します。
# lpstat -p printer-name
新しいプリンタへのアクセスをクライアントに追加します。
これでプリンタは追加されました。プリンタへのアクセスをクライアントに作成します。詳細は、「印刷クライアントの設定」を参照してください。
オプションの作業を完了します。
プリンタを設定するときは、オプションの作業がいくつかあります。残りの作業の参照先については、「印刷の設定の作業マップ」を参照してください。
この例のコマンドは、印刷サーバーで実行しなければなりません。この例では次の情報を使用していますが、これらの情報は状況によって異なります。
プリンタ名: luna1
サーバー: saturn
ネットワークプリンタアクセス名: nimquat:9100
プロトコル: tcp
タイムアウト: 5
インタフェース: /usr/lib/lp/model/netstandard
プリンタタイプ: PS
内容形式: postscript
デバイス: /dev/null
1# lpadmin -p luna1 -v /dev/null 2# lpadmin -p luna1 -i /usr/lib/lp/model/netstandard 3# lpadmin -p luna1 -o dest=nimquat:9100 -o protocol=tcp -o timeout=5 4# lpadmin -p luna1 -I postscript -T PS # cd /etc/lp/fd 5# for filter in *.fd;do > name=`basename $filter .fd` > lpfilter -f $name -F $filter > done 6# accept luna1 destination "luna1" now accepting requests # enable luna1 printer "luna1" now enabled 7# lpadmin -p luna1 -D "Room 1954 ps" 8# lpstat -p luna1 printer luna1 is idle. enabled since Jun 16 10:25 1998. available. |
1. プリンタ名を定義する。デバイスを /dev/null に設定する。
2. ネットワークプリンタ用のインタフェーススクリプトを定義する。
3. 宛先、プロトコル、およびタイムアウトを設定する。
4. プリンタが直接印刷できるファイル内容形式とプリンタタイプを指定する。
5. 印刷フィルタを印刷サーバーに追加する。
6. プリンタが印刷要求を受け入れて、印刷できるようにする。
7. プリンタの説明を追加する。
8. プリンタが用意できていることを確認する。