Solaris のシステム管理 (第 2 巻)

第 4 章 プリンタの設定手順

この章では、プリンタを設定してネットワーク上のシステムから Solaris プリンタマネージャを使用してアクセスできるようにする手順を説明します。Solaris プリンタマネージャは、Solaris Easy Access Server (SEAS) 3.0 リリースで使用可能になっていました。この章で説明する手順は次のとおりです。

プリンタの概要については、第 2 章「印刷管理の概要」を参照してください。

印刷の設定

「印刷の設定の作業マップ」は、プリンタサーバーの設定 (プリンタの追加) と印刷クライアントの設定 (プリンタへのアクセスの追加) に必要な作業の概要を示しています。ローカルプリンタとは、プリンタサーバーに物理的にケーブル接続されたプリンタのことです。ネットワークプリンタとは、ネットワークに物理的に接続されたプリンタのことです。プリンタへのアクセスを追加する (つまり、リモートアクセスを追加する) とは、印刷クライアント (サーバー以外のすべてのマシン) がプリンタにアクセスできるようにする手順のことです。

印刷の設定の作業マップ

表 4-1 作業マップ: 印刷の設定

作業 

説明 

手順の説明 

1. 新しく接続したプリンタの追加 

Solaris プリンタマネージャを使用する 

プリンタをシステムに物理的に接続したあとで、プリンタを印刷に使用できるようにする 

「新しく接続するプリンタを Solaris プリンタマネージャを使用して追加する方法」

2. プリンタへのアクセスの追加 

Solaris プリンタマネージャを使用する 

プリンタへのアクセスの追加 

「Solaris プリンタマネージャにプリンタアクセスを追加する方法」

3. .printers ファイルの設定

(省略可能) $HOME/.printers ファイルを使用して、ユーザーが独自のカスタムプリンタ別名を設定できるようにする

.printers ファイルを設定する方法」

4. ネットワークプリンタの追加 

プリンタベンダー提供のツールを使用する 

プリンタをネットワークに物理的に接続した後、ベンダー提供のソフトウェアを使用してネットワークプリンタを構成する 

LP コマンドを使用する  

プリンタをネットワークに物理的に接続した後、Solaris ソフトウェアコマンドを使用してネットワークプリンタを構成する 

「プリンタベンダー提供のツールを使用してネットワークプリンタを追加する方法」

「LP コマンドを使用してネットワークプリンタを追加する方法」

5. バナーページのオフ 

(省略可能) 印刷されないように、バナーページをオフにできる

「バナーページをオフにする方法」

6. 障害警告の設定 

(省略可能) プリンタ用に Solaris プリンタマネージャよりも限定的な障害警告を設定できる

「プリンタの障害警告を設定する方法」

7. 障害回復機能の設定 

(省略可能) Solaris プリンタマネージャでは、障害が起きた後でプリンタを回復させる方法を設定できない

「プリンタの障害回復を設定する方法」

8. プリンタへのアクセス制限  

(省略可能) Solaris プリンタマネージャで、許可リストを設定できる。ただし、プリンタへアクセスできるユーザーを制限したい場合には、拒否リストを設定する

「プリンタへのユーザーアクセスを制限する方法」

Solaris プリンタマネージャによるプリンタの設定

次の表はプリンタ属性を示しています。 Solaris プリンタマネージャを使用してプリンタを設定するときに、必要となる情報を判断するのに役立ててください。

プリンタ属性 

説明 

例 

デフォルトの設定 

必須か省略可能か 

プリンタ名 

プリンタの名前 

laser1

なし 

接続されたプリンタやネットワークプリンタをインストールし、プリンタへのアクセスを追加するのに必須 

プリンタサーバー 

プリンタサーバーの名前 

venus

ローカルシステム 

接続されたプリンタやネットワークプリンタをインストールし、プリンタへのアクセスを追加するのに必須 

名称 

ユーザー定義の文字列 

laser printer near breakroom

なし 

省略可能 

プリンタポート 

デバイスプリンタが接続されているポート 

/dev/term/a

/dev/term/a

接続されたプリンタをインストールするのに必須 

プリンタタイプ 

プリンタのタイプ 

unknown

PostScript

接続されたプリンタやネットワークプリンタをインストールするのに必須 

ファイル内容 

印刷する内容 

any

PostScript

接続されたプリンタやネットワークプリンタをインストールするのに必須 

宛先 

ネットワークプリンタの宛先名 

例については、「宛先 (またはネットワークプリンタアクセス) 名の選択」を参照

なし 

ネットワークプリンタをインストールするのに必須 

プロトコル 

プリンタとの通信に使用するプロトコル 

TCP

BSD

ネットワークプリンタをインストールするのに必須 

失敗の通知 

ユーザーにエラーを知らせる方法 

Mail to superuser

Write to superuser

省略可能 

デフォルトプリンタ 

デフォルトプリンタを識別する 

なし 

なし 

省略可能 

バナーを常に印刷 

バナーが印刷される 

なし 

バナーが印刷される 

省略可能 

ユーザーアクセスリスト 

印刷できるユーザーのリスト 

rimmer,lister

すべてのユーザーが印刷できる 

省略可能 

Solaris プリンタマネージャの起動

Solaris プリンタマネージャを使用してプリンタを設定するには、CDE ワークスペースメニューから「プリンタ管理 (Printer Administration)」を選択して Solaris プリンタマネージャを起動するか、コマンド行から Solaris プリンタマネージャを起動します。詳細については、次の節を参照してください。

Solaris プリンタマネージャを起動する方法

  1. 次の前提条件を満たしていることを確認します。Solaris プリンタマネージャを使用するには、次の条件を満たす必要があります。

    • ビットマップディスプレイモニター。Solaris プリンタマネージャは、Sun ワークステーションの標準ディスプレイモニターなど、ビットマップ画面のコンソールを使用するシステムでだけ使用できます。

    • CDE 環境のような X Window System を実行しているか、xhost 環境が動作するシステムでリモート表示機能を使用している。

    • 接続されたプリンタやネットワークプリンタをインストールする場合は、プリンタサーバーにスーパーユーザーとしてログインしている。プリンタへのアクセスを追加する場合は、印刷クライアントにスーパーユーザーとしてログインしている。

    • NIS、NIS+、または NIS+ (xfn) データベースを管理するのに必要なアクセス特権を持っている。

      • ネームサービスが NIS の場合は、NIS マスターの root パスワードが必要です。

      • ネームサービスが NIS+ の場合は、次の手順を実行しなければならない場合があります。

        1. NIS+ マスターにスーパーユーザーとしてログインします。

        2. 次に示すようにプリンタテーブルを所有するグループを確認します。


          # niscat -o printers.org_dir.domain_name.com
                      .
                      .
                      .
                   Group		: "admin.domain_name.com"
        3. 必要なら、printers.org_dir.<domain> ファイルの更新を許可された NIS+ admin グループに、Solaris プリンタマネージャを実行するシステムを追加します。


          # nisgrpadm -a admin.domain_name.com host_name
          
        4. Solaris プリンタマネージャを実行するシステムにスーパーユーザーとしてログインします。NIS+ 構成によっては、/usr/bin/keylogin コマンドも実行しなければならない場合があります。詳細は、keylogin(1) のマニュアルページを参照してください。

      • ネームサービスが NIS+ (xfn) の場合は、次の手順を実行しなければならない場合があります。

        1. NIS+ マスターにスーパーユーザーとしてログインします。

        2. フェデレーテッド・ネーミングテーブルを所有するグループを確認します。


          # niscat -o fns.ctx_dir.domain_name.com
                      .
                      .
                      .
                   Group		: "admin.domain_name.com"
        3. 必要なら、fns.ctx_dir.<domain> ファイルの更新を許可された NIS+ admin グループに、Solaris プリンタマネージャを実行するシステムを追加します。


          # nisgrpadm -a admin.domain_name.com host_name
          
        4. Solaris プリンタマネージャを実行するシステムにスーパーユーザーとしてログインします。NIS+ 構成によっては、/usr/bin/keylogin コマンドも実行しなければならない場合があります。詳細は、keylogin(1) のマニュアルページを参照してください。

    • SUNWppm パッケージをインストールします。


      # pkginfo | grep SUNWppm
      system      SUNWppm        Solaris Print Manager
  2. CDE のワークスペースメニューの「ツール (Tools)」オプションから「プリンタ管理 (Printer Administration)」を選択して、Solaris プリンタマネージャを起動します。あるいは、CDE フロントパネルから「アプリケーション (Applications)」メニューを選択し、Application Manager の「System_Admin」ウィンドウで「プリンタ管理 (Printer Administration)」アイコンをクリックします。次のコマンドを使用しても Solaris プリンタマネージャを起動できます。


    # /usr/sadm/admin/bin/printmgr &        
    

    Solaris プリンタマネージャのメインウィンドウ上に「ネームサービスを選択 (Select Naming Service)」ウィンドウが重なって表示されます。

    リモートシステムから Solaris プリンタマネージャを使用する場合は、DISPLAY 環境変数を設定してから Solaris プリンタマネージャを起動します。


    # DISPLAY=hostname:display_number
    # export DISPLAY
    # /usr/sadm/admin/bin/printmgr &
    

    注 -

    CDE メニューやコマンド行から Solaris プリンタマネージャを起動できない場合は、次の確認をしてください。

    1. ローカルシステムやリモートシステムの Xserver プロセスに接続する権限がスーパーユーザー (root) にない可能性があります。その場合は、次のコマンドを入力します。


      $ xhost +hostname
      $ su
      (Enter root's password)
      # /usr/sadm/admin/bin/printmgr &
      

      Solaris プリンタマネージャを再起動する前に、ローカルシステムまたはリモートシステムの名前で hostname を置き換えます。

    2. ローカルシステムまたはリモートシステムに SUNWppm パッケージがインストールされていることを確認します。


      $ pkginfo | grep SUNWppm
      

  3. ネットワークで使用されているネームサービスを「ネームサービスを選択 (Select Naming Service)」ウィンドウから選択します。選択肢には NIS+ (xfn)、NIS+、NIS、files があります。

  4. ドメイン名が正しいことを確認します。

    ネームサービスが正常に読み込まれると、Solaris プリンタマネージャのメインウィンドウが表示されます。

プリンタサーバーの設定

接続されたプリンタとネットワークプリンタ、またはそのどちらかをシステムに追加すると、そのプリンタにローカルシステムからアクセスできるようになります。プリンタをインストールするシステムが「プリンタサーバー」になります。

次の各項では、新しい Solaris プリンタマネージャを使用して、接続されているプリンタやネットワークプリンタをプリンタサーバーに追加する方法を説明します。Solaris プリンタマネージャを使用する手順に続く例は、LP コマンドを使用してプリンタを追加する方法です。

新しく接続するプリンタを Solaris プリンタマネージャを使用して追加する方法

  1. プリンタサーバーにするシステムを選択します。

  2. プリンタをプリンタサーバーに接続し、プリンタの電源を入れます。

    ハードウェアのスイッチとケーブルの要件については、プリンタのインストールマニュアルを参照してください。

  3. プリンタを接続したプリンタサーバー上で Solaris プリンタマネージャを起動します。

    詳細は 「Solaris プリンタマネージャを起動する方法」の手順を参照してください。

  4. 「プリンタ (Printer)」メニューから「新規に接続したプリンタ (New Attached Printer)」を選択します。

    「新規に接続したプリンタ (New Attached Printer)」ウィンドウが表示されます。

  5. ウィンドウに情報を入力します。

    フィールドに情報を入力する必要がある場合は、「ヘルプ (Help)」ボタンをクリックします。

  6. 「了解 (OK)」をクリックします。

  7. プリンタがインストールされていることを確認します。確認するには、Solaris プリンタマネージャのメインウィンドウに新しいプリンタエントリがあるか調べます。インストールされていたら、次のコマンドを使用してプリンタに要求を印刷できるか確認します。


    $ lp -d printer-name filename
    
  8. Solaris プリンタマネージャを終了します。

    「プリンタマネージャメニュー (Print Manager Menu)」から「終了 (Exit)」を選択します。

例 - LP コマンドを使用して新規に接続したプリンタを追加する

この例では、ローカルの PostScript プリンタをプリンタサーバーで印刷できるようにする方法を示しています。この例のコマンドは、プリンタが接続されているプリンタサーバーで実行しなければなりません。この例では次の情報を使用しています。実際に指定する情報はこれとは異なります。

  1. lp に所有権とポートデバイスへの単独アクセスを設定する。

  2. プリンタ名とプリンタが使用するポートデバイスを定義する。

  3. プリンタのプリンタタイプを設定する。

  4. プリンタが直接印刷できるファイル内容形式を指定する。

  5. 印刷フィルタをプリンタサーバーに追加する。

  6. プリンタが印刷要求を受け入れて、印刷できるようにする。

  7. プリンタの説明を追加する。

  8. プリンタが用意できていることを確認する。

次に進む手順

次の表を見て、次に進む手順を決めてください。

必要な処理 

参照 

印刷クライアントに新しくインストールしたプリンタへのアクセスを追加する (プリンタ情報をネームサービスデータベースに追加していない場合) 

「Solaris プリンタマネージャにプリンタアクセスを追加する方法」を参照

.printers ファイルを設定する

.printers ファイルを設定する方法」を参照

印刷クライアントの設定

印刷クライアントは、プリンタ用のサーバーではないが、プリンタにアクセスできるシステムのことです。印刷クライアントは、プリンタサーバーのサービスを使用して、印刷ジョブのスプール、スケジュール、およびフィルタリングを実行します。1 つのシステムがあるプリンタのプリンタサーバーになり、同時に他のプリンタの印刷クライアントになることも可能です。

プリンタへのアクセスは、ドメイン全体で有効にすることも、マシン単位で有効にすることもできます。これは、プリンタ情報をネームサービスデータベースに追加するかどうかによって異なります。

次の項では、新しい Solaris プリンタマネージャを使用して、印刷クライアントでプリンタへのアクセスを追加する方法を説明します。手順に続く例は、LP コマンドを使用してプリンタアクセスを追加する方法です。

Solaris プリンタマネージャにプリンタアクセスを追加する方法

  1. リモートプリンタへのアクセスを追加したいシステム上で Solaris プリンタマネージャを起動します。

    詳細は、「Solaris プリンタマネージャを起動する方法」の手順を参照してください。

  2. 「プリンタ (Printer)」メニューから「追加 (Add)」、「プリンタへのアクセス (Access to Printer)」の順に選択します。

    「プリンタへのアクセス (Add Access to Printer)」ウィンドウが表示されます。

  3. ウィンドウに情報を入力します。

    フィールドに情報を入力する必要がある場合は、「ヘルプ (Help)」ボタンをクリックして、このウィンドウのフィールドの定義を表示します。

  4. 「了解 (OK)」をクリックします。

    プリンタが Solaris プリンタマネージャのメインウィンドウに表示されます。

  5. プリンタへのアクセスが追加されていることを確認します。確認するには、Solaris プリンタマネージャのメインウィンドウに新しいプリンタエントリがあるか調べます。追加されていたら、次のコマンドを使用してプリンタに要求を印刷できることを確認します。


    $ lp -d printer-name filename
    
  6. Solaris プリンタマネージャを終了します。

    「プリンタマネージャメニュー (Print Manager Menu)」から「終了 (Exit)」を選択します。

例 - LP コマンドでプリンタアクセスを追加する

リモートプリンタで印刷する場合、リモートプリンタにアクセスを追加しなければなりません。次の例は、プリンタサーバー saturn のプリンタ luna にアクセスを構成する方法を示しています。システム saturn は、プリンタ luna の印刷クライアントになります。


# lpadmin -p luna -s saturn 1
# lpadmin -p luna -D "Room 1954 ps" 2
# lpadmin -d luna 3
# lpstat -p luna 4
		printer luna is idle. enabled since Jul 12 11:17 1999. available.
  1. プリンタとプリンタサーバーを指定する。

  2. プリンタの説明を追加する。

  3. プリンタをシステムのデフォルトのプリンタ宛先として設定する。

  4. プリンタが用意できていることを確認する。

.printers ファイルの設定

プリンタ情報をカスタマイズする必要がなければ、ユーザーのホームディレクトリに .printers ファイルを設定する必要はありません。しかし、.printers ファイルは、ユーザーが独自のカスタムプリンタ別名を設定できる場所です。別名 _default を使用すれば、デフォルトのプリンタを設定できます。また、特殊別名 _all を設定すれば、印刷要求を取り消したりプリンタの情報をチェックしたりするときの対象となるプリンタのリストを定義できます。

LP 印刷サービスが .printers ファイルを使用するかどうかは、ネームサービススイッチ (/etc/nsswitch.conf) によって制御されます。デフォルト構成では、印刷サービスは、ユーザーのホームディレクトリでプリンタ構成情報を探してから他のネームサービスを調べます。つまり、ユーザーのプリンタ構成ファイルを設定することによって、ネームサービスの共有情報ではなく、好みのプリンタ情報を使用できます。

.printers ファイルの詳細は、printers(4) のマニュアルページを参照してください。ネームサービススイッチの詳細は、nsswitch.conf(4) のマニュアルページを参照してください。

.printers ファイルを設定する方法

  1. スーパーユーザーとしてシステムにログインします。

  2. 任意のエディタで、.printers ファイルをユーザーのホームディレクトリに作成します。

  3. (省略可能) _default 別名を設定して、特定のプリンタをデフォルトプリンタに指定します。次の例に示すようなエントリを使用します。


    _default printer_name
    
  4. (省略可能) _all 別名を設定して、印刷要求を取り消したりプリンタの状態をチェックしたりするときの対象となるプリンタを定義します。次の例に示すようなエントリを使用します。


    _all printer1,printer2,printer3
    
  5. そのファイルを .printers として保存します。

ネットワークプリンタの追加

「ネットワークプリンタ」とは、ネットワークに直接接続されているハードウェアデバイスです。これは、ネットワークプリンタがプリンタサーバーにケーブルで実際に接続されていなくても、プリンタサーバーからアクセスできることを意味します。ネットワークプリンタは専用のシステム名と IP アドレスを持っています。ネットワークプリンタがプリンタサーバーに接続されていない場合でも、専用のプリンタサーバーを設定しておく必要があります。プリンタサーバーは、ネットワークプリンタの待ち行列化機能と印刷管理機能を提供します。

ネットワークプリンタは、ベンダー提供の印刷プログラムを必要とする特別なプロトコルを 1 つ以上使用することがあります。ベンダーから提供される印刷プログラムの設定手順は、それぞれ異なることがあります。プリンタにベンダー提供サポートが付いていない場合、ほとんどのデバイスについて Solaris のネットワークプリンタサポートを使用できます。ただし、可能な限りプリンタベンダー提供のソフトウェアを利用することを強く推奨します。

ベンダーは、SVR4 プリンタインタフェーススクリプトを提供して標準プリンタインタフェーススクリプトを置き換えている場合があります。その場合、SVR4 インタフェーススクリプトはベンダー提供の印刷プログラムを呼び出して、ジョブをプリンタに送ります。このスクリプトが提供されない場合は、標準インタフェーススクリプトを変更してベンダー提供の印刷プログラムを呼び出す必要があります。この作業は、標準インタフェーススクリプトのプリンタごとのコピーをベンダー提供の印刷プログラムを呼び出すように編集することで実行できます。

ネットワークプリンタ構成で使用する用語を説明します。

ネットワークプリンタ用のプリンタベンダー提供のソフトウェア

多くの場合、ネットワークプリンタには、プリンタベンダー提供のソフトウェアサポートが提供されます。プリンタにプリンタベンダー提供のソフトウェアがある場合は、プリンタベンダー提供のソフトウェアを利用することを強く推奨します。プリンタベンダー提供のソフトウェアは、そのプリンタの特性をサポートするように設計されていて、プリンタの能力をフルに活用します。プリンタのマニュアルをよく読んで、プリンタを LP 印刷システムにインストールおよび構成してください。

Sun のネットワークプリンタのサポート

ネットワークプリンタベンダーがソフトウェアサポートを提供していない場合、Sun が提供するソフトウェアを利用できます。このソフトウェアは、ネットワークプリンタの汎用サポートを提供するもののため、必ずしもプリンタで利用できるすべての機能を使用できません。

ネットワークプリンタを追加するための一般的な説明については、第 4 章「プリンタの設定手順」を参照してください。次は、Sun 提供のソフトウェアを使用したプリンタの管理を説明します。

ネットワークプリンタサポートの呼び出し

ネットワークプリンタ用のソフトウェアサポートは、インタフェーススクリプト経由で呼び出されます。ネットワークインタフェーススクリプト netstandard でネットワークプリンタを構成すると、ネットワークプリンタサポートモジュールが呼び出されます。次に、ネットワークサポートでプリンタを構成するコマンドを示します。


lpadmin -p printer_name -m 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]

例 1 - ポート指定 (番号) 付き宛先名 (またはネットワークプリンタアクセス名)

TCP の共通ポート指定は 9100 です。プリンタノード名が pn1 で、プリンタベンダーがそのポートを 9100 と定義していた場合、プリンタアクセス名は pn1:9100 になります。この場合にプリンタを構成するには、次のコマンドを使用します。

lpadmin -p printer_name -o dest=pn1:9100

例 2 - ポート指定 (名前) 付き宛先名 (またはネットワークプリンタアクセス名)

BSD プロトコルを使用するとき、ポート指定は番号でなく、プリンタベンダーが定義した名前です (例: xxx_parallel_1)。プリンタノード名が cardboard の場合、プリンタアクセス名は cardboard:xxx_parallel_1 になります。この場合プリンタを構成するには、次のコマンドを使用します。


lpadmin -p printer_name -o dest=cardboard:xxx_parallel_1

例 3 - ポート指定なしの宛先名 (またはネットワークプリンタアクセス名)

ポート指定がなく、プリンタノード名が 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

プリンタベンダー提供のツールを使用してネットワークプリンタを追加する方法

  1. プリンタをネットワークに接続し、電源を入れます。

    ハードウェアのスイッチとケーブルの要件については、プリンタのインストールマニュアルを参照してください。IP アドレスを取得して、プリンタノード名を選択します。これは、ネットワークにノードを追加することと同じです。

  2. プリンタのマニュアルに従って、SVR4 LP 印刷スプーラのある SunOS 5.8 システムにネットワークプリンタを追加します。

    プリンタのマニュアルを使用して、ネットワークプリンタを構成してください。手順は、ベンダーやプリンタに固有です。

  3. 新しいプリンタへのアクセスをクライアントに追加します。

    これでプリンタは追加されました。プリンタへのアクセスをクライアントに作成します。詳細は、「印刷クライアントの設定」を参照してください。

  4. オプションの作業を完了します。

    ネットワークプリンタを設定するときは、オプションの作業がいくつかあります。残りの作業の参照先については、「印刷の設定の作業マップ」を参照してください。

LP コマンドを使用してネットワークプリンタを追加する方法


注 -

ここでは、ネットワークプリンタサポートソフトウェアを使用して、ネットワークプリンタを設定するのに必要な手順を説明しています。このソフトウェアを使用するのは、プリンタにベンダー提供のソフトウェアが付いていない場合だけです。


  1. プリンタをネットワークに接続して、プリンタの電源を入れます。

    ハードウェアのスイッチとケーブル接続の要件については、プリンタのインストールマニュアルを参照してください。IP アドレスを取得して、プリンタノード名を選択します。これは、ネットワークにノードを追加することと同じです。

  2. ネットワークプリンタを構成するのに必要な情報を収集します。

    • プリンタ名

    • プリンタサーバー

    • ネットワークプリンタアクセス名

    • プロトコル

    • タイムアウト

    詳細は、「ネットワークプリンタの追加」に説明されている用語を参照してください。

  3. lpadmin(1M) コマンドを使用して、プリンタ名、デバイス、プリンタタイプ、および内容形式を定義します。

    1. プリンタ名とプリンタが使用するポートデバイスを定義します。


      # lpadmin -p printer-name -v /dev/null
      

      使用するデバイスは /dev/null です。

    2. プリンタが使用するインタフェースを指定します。


      # lpadmin -p printer-name -m /netstandard 
      

      ネットワークプリンタサポートソフトウェアで提供されるインタフェーススクリプトは /usr/lib/lp/model/netstandard です。

    3. プリンタ宛先、プロトコル、およびタイムアウト値を設定します。


      # 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
      

      プリンタへの接続の試行間で待機する秒数を表す再試行タイムアウト値を設定する。詳細は、「ネットワークプリンタの追加」を参照

    4. プリンタのファイル内容形式とプリンタタイプを指定します。


      # lpadmin -p printer-name -I content-type -T printer-type
      
      
      
      
  4. lpfilter(1M) コマンドを使用して、プリンタサーバーにフィルタを追加します。


    #	cd /etc/lp/fd
    # for filter in *.fd;do
        > name=`basename $filter .fd`
        > lpfilter -f $name -F $filter
        > done
    
  5. プリンタがプリンタ要求を受け入れて、その要求を印刷できるようにします。


    # accept printer-name
    #	enable printer-name
    
  6. lpstat(1M) コマンドを使用して、プリンタが正しく構成されていることを確認します。


    #	lpstat -p printer-name
    
  7. 新しいプリンタへのアクセスをクライアントに追加します。

    これでプリンタは追加されました。プリンタへのアクセスをクライアントに作成します。詳細は、「印刷クライアントの設定」を参照してください。

  8. オプションの作業を完了します。

    プリンタを設定するときは、オプションの作業がいくつかあります。残りの作業の参照先については、「印刷の設定の作業マップ」を参照してください。

この例のコマンドは、プリンタサーバーで実行しなければなりません。この例では次の情報を使用していますが、これらの情報は状況によって異なります。


# lpadmin -p luna1 -v /dev/null 1
# lpadmin -p luna1 -m netstandard 2
# lpadmin -p luna1 -o dest=nimquat:9100 -o protocol=tcp -o timeout=5 3
# lpadmin -p luna1 -I postscript -T PS 4
# cd /etc/lp/fd
# for filter in *.fd;do	
	  > name=`basename $filter .fd`	
	  > lpfilter -f $name -F $filter	
	  > done 5
# accept luna1
	destination "luna1" now accepting requests
# enable luna1	6
printer "luna1" now enabled 
# lpadmin -p luna1 -D "Room 1954 ps" 7
# lpstat -p luna1 8
		printer luna1 is idle. enabled since Jul 12 11:17 1999.  available.
  1. プリンタ名を定義する。デバイスを /dev/null に設定する。

  2. ネットワークプリンタ用のインタフェーススクリプトを定義する。

  3. 宛先、プロトコル、およびタイムアウトを設定する。

  4. プリンタが直接印刷できるファイル内容形式とプリンタタイプを指定する。

  5. 印刷フィルタをプリンタサーバーに追加する。

  6. プリンタが印刷要求を受け入れて、印刷できるようにする。

  7. プリンタの説明を追加する。

  8. プリンタが用意できていることを確認する。

プリンタ構成情報を変換する

この節では、サイトにある SunOS 5.5.1 またはその互換バージョンを稼動しているシステムのプリンタ構成情報を変換して、その情報を印刷クライアントにコピーすることにより、既存のプリンタにアクセスできるようにする方法を説明します。


注 -

既存のプリンタの台数が少ない場合は、Solaris プリンタマネージャか Admintool を使用してプリンタへのアクセスを追加する方が、プリンタ構成情報を変換して印刷クライアントに配布するよりも簡単です。プリンタへアクセスを追加する方法については、表 4-1 を参照してください。


プリンタ構成情報を変換する作業マップ

表 4-2 に、プリンタ構成情報を変換する作業の概要を示します。

表 4-2 作業マップ: プリンタ構成情報を変化する

作業 

説明 

手順の説明 

既存のプリンタ構成情報を変換する 

unOS 5.5.1 または互換バージョンのシステムのプリンタ構成情報を変換する

SunOS 5.5.1 リリースを使用しているサイトでは、/etc/lp/printers ディレクトリ内のプリンタ構成情報を、/etc/printers.conf 構成ファイルに変換する。通常、この作業は 1 回行うだけでよい

「SunOS 5.5.1 リリースのシステムの印刷情報を変換する方法」を参照

 

SunOS 4.1 を稼動するシステムのプリンタ構成情報を変換する 

SunOS 4.1 ソフトウェアを使用しているサイトでは、4.1 システムの /etc/printcap ファイル内のプリンタ構成情報を、/etc/printers.conf 構成ファイルに変換する。通常、この作業は 1 回行うだけでよい

「SunOS 4.1 リリースのシステムの印刷情報を変換する方法」を参照

NIS+ (+xfn) のプリンタ構成情報を NIS+ 形式に変換する 

下層の xfn アプリケーション層を持たない NIS+ ネームサービスでプリンタ構成情報を管理するとアクセス性能が向上する 

「NIS+ (+xfn) のプリンタ構成情報を NIS+ 形式に変換する方法」を参照

既存のプリンタ構成情報の変換

既存のプリンタ構成情報は、Solaris 8 またはその互換バージョンをインストールあるいはアップグレードするときに自動的に変換されます。この節では、SunOS 5.5.1 リリースあるいは SunOS 4.1 のシステムのプリンタ構成情報を、/etc/printers.conf プリンタ構成ファイルに変換する方法を説明します。変換作業を自動化するために、2 つの新しい印刷管理コマンドのいずれかを使用します。

ネームサービスを使用していない場合、サイトにある既存のプリンタを含む、/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.5.1 リリースのシステムの印刷情報を変換する方法

  1. SunOS 5.8 を実行しているシステムに、スーパーユーザーとしてログインします。

  2. そのシステムの /etc/lp/printers ディレクトリ内のプリンタ構成情報を /etc/printers.conf ファイルに変換します。


    # /usr/lib/print/conv_lp
    

SunOS 4.1 リリースのシステムの印刷情報を変換する方法

  1. SunOS 4.1 システムの /etc/printcap ファイルを、SunOS 5.8 で実行しているシステムにコピーします。

  2. /etc/printcap ファイルをコピーした、SunOS 5.8 を実行しているシステムに、スーパーユーザーとしてログインします。

  3. /etc/printcap ファイル内のプリンタ構成情報を /etc/printers.conf ファイルに変換します。


    # /usr/lib/print/conv_lpd
    

NIS+ (+xfn) のプリンタ構成情報を NIS+ 形式に変換する方法

次の変換スクリプトは、Solaris 8 リリースが動作するシステムでだけ実行できます。

  1. NIS+ マスターにスーパーユーザーとしてログインします。

  2. たとえば /tmp/convert という名前で次の変換スクリプトをシステムにコピーします。


    #!/bin/sh
    #
    #	Copyright (C) 1999 by Sun Microsystems, Inc.
    #	All Rights Reserved
    #
    PRINTER=""
    
    for LINE in `lpget -n xfn list | tr "¥t " "^A^B"` ; do
    	LINE=`echo ${LINE} | tr "^A^B" "¥t " | sed -e 's/^	 ¥t//g'`
    	case "${LINE}" in
    		*:)
    			PRINTER=`echo ${LINE} | sed -e 's/://g'`
    			;;
    		*=*)
    			lpset -n nisplus -a "${LINE}" ${PRINTER}
    			;;
    	esac
    done

    注 -

    カット&ペーストを使用してこのスクリプトのテキストファイルを作成する場合は、2 つある ^A^B (caratAcaratB) シーケンスを Control A Control B に変更してください。


  3. スクリプトを実行可能ファイルにします。


    # chmod 755 /tmp/convert
    
  4. 変換スクリプトを実行します。


    # /tmp/convert