Solaris のシステム管理 (印刷)

第 5 章 LP 印刷コマンドを使用したプリンタの設定 (作業)

この章では、LP 印刷コマンドを使ってプリンタを設定し、ネットワーク上のシステムからそれらのプリンタにアクセスできるようにする方法を説明します。

この章の内容は次のとおりです。

印刷の概要については、第 1 章Oracle Solaris オペレーティングシステムでの印刷の概要を参照してください。

LP 印刷コマンドを使用したプリンタの設定 (作業マップ)

作業 

説明 

参照先 

LP 印刷コマンドを使用して、直接接続された新しいプリンタを追加します。 

プリンタをシステムに物理的に接続したあとで、LP 印刷サービスコマンドを使用してプリンタを印刷できるようにします。  

「LP 印刷コマンドを使用して、直接接続された新しいプリンタを追加する方法」

lpadmin コマンドを使ってプリンタ待ち行列を追加しますが、その際、 localhost をホスト名として指定します。

lpadmin コマンドを -s オプションとともに使用して、ローカル印刷待ち行列の設定時にホスト名として localhost を指定します。この変更により、印刷サーバーはマシンのホスト名にかかわらず、同じ印刷ホスト名 localhost を維持できるようになりました。

「印刷待ち行列の追加時に localhost をホスト名として指定する方法 (LP 印刷コマンド)」

LP 印刷サービスコマンドを使用して、ネットワークに接続された新しいプリンタを追加します。 

LP 印刷コマンドを使用して、ネットワークに接続された新しいプリンタを追加します。 

「LP 印刷コマンドを使用して、ネットワークに接続された新しいプリンタを追加する方法」

Oracle Solaris 印刷サーバーに接続されているプリンタのリモート印刷待ち行列を、IPP を使用して追加します。 

IPP を使用してリモート印刷待ち行列へのアクセスを追加するには、2 つの方法があります。次のいずれかを行えます。

  • lpadmin コマンドを使用します。

  • lpset コマンドを使用します。

「印刷サーバーに接続されたリモートプリンタを IPP を使用して設定する方法」

プリンタベンダー提供のソフトウェアを使用して、ネットワークに接続された新しいプリンタを追加します。 

プリンタをネットワークに物理的に接続したあとで、プリンタのベンダーが提供するツールを使用してネットワーク接続プリンタを構成します。 

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

LP 印刷コマンドによる直接接続されたプリンタの設定

次の表では、lpadmin コマンドを使って新しいプリンタを設定したり既存のプリンタを変更したりするときに定義可能な、それぞれのプリンタ定義について説明します。

プリンタ定義 

印刷コマンドオプション 

説明 

例 

デフォルト設定 

必須か省略可能か 

プリンタ名

-p

プリンタの名前 

laser1

なし 

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

印刷サーバー

 

印刷サーバーの名前 

venus

Use localhost for Printer Server

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

説明

-d

ユーザー定義の文字列 

laser printer near breakroom

なし 

任意 

プリンタポート

-v

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

/dev/term/a

/dev/term/a

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

プリンタタイプ

-T

プリンタのタイプ 

unknown

PostScript

PPD ファイルを指定せずに接続プリンタまたはネットワーク接続プリンタをインストールするのに必須 

ファイル内容形式

-I

印刷する内容 

任意

PostScript

PPD ファイルを指定せずに接続プリンタまたはネットワーク接続プリンタをインストールするのに必須 

PPD ファイル名 

-n

PPD ファイルのフルパスおよび拡張子 .ppd を含むファイル名

path/necprinter.ppd

なし 

任意 

プリンタ障害通知

-A

ユーザーに障害を通知する方法 

-A mail

スーパーユーザーに対し write を実行する

任意 

デフォルトプリンタ 

-d

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

なし 

なし 

任意 

バナーページ制御メニュー: 

-o

バナーページを印刷するかどうかを選択する 

-o banner=never

-o banner=optional

任意 

プリンタの設定時に PPD ファイルを指定する

LP 印刷コマンドを使用してプリンタを追加または変更するときに PPD ファイルを指定するには、lpadmin コマンドを -n オプションとともに使用します。たとえば、foobar という名前の印刷待ち行列を Lexmark プリンタに追加したい場合、次のコマンドを入力します。


# lpadmin -p foobar -v device -I postscript -m standard_foomatic \
-n /path/Lexmark-Optra_E312-Postscript.ppd.gz

lpadmin -n コマンドで PPD ファイルを指定するときには、その PPD ファイルへのフルパスを指定する必要があります。

lpadmin -n コマンドを使用して PPD ファイルを追加する場合、PPD ファイルのパスに指定したリポジトリがシステム上に存在しないときは、PPD ファイルのコピーが user リポジトリの user ラベルディレクトリに格納されます。このディレクトリは /var/lp/ppd/user/manufacturer /ppd-file にあります。続いて、Solaris 印刷マネージャーのキャッシュが更新され、新しく追加された PPD ファイルからプリンタ情報が反映されます。詳細は、ppdmgr(1M) のマニュアルページを参照してください。

ProcedureLP 印刷コマンドを使用して、直接接続された新しいプリンタを追加する方法

この手順では、lpadmin コマンドの -n オプションに PPD ファイルを指定して新しい接続プリンタを追加する方法について説明します。この手順のあとに、2 つの例を示します。1 つ目の例は、PPD ファイルに関連付けられた新しい接続プリンタの追加方法を示したものです。2 つ目の例は、PPD ファイルに関連付けられていない新しい接続プリンタの追加方法を示したものです。

  1. プリンタをシステムに接続したあと、プリンタの電源を入れます。

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

  2. 印刷サーバーにログインし、スーパーユーザーになるか同等の役割を引き受けます。

  3. PPD ファイルを指定して接続したプリンタを構成するのに必要な情報を収集します。

    • プリンタ名とポートデバイス

    • ファイル内容形式

    • PPD ファイル

    プリンタで使用する PPD ファイルを決定するには、まず、プリンタのメーカー、モデル、およびドライバを定義します。

    LP 印刷コマンドを使用して新しいプリンタを追加または既存のプリンタを変更する際の、PPD ファイルの使用の概要については、「印刷の新機能」を参照してください。

  4. このプリンタで使用する、プリンタ名、ポートデバイス、ファイル内容形式、および PPD ファイルを定義します。

    PPD ファイルを指定する場合、ファイル内容形式は通常「PostScript」です。

    1. このプリンタで使用する、プリンタ名、ポートデバイスを指定します。


      # lpadmin -p printer-name -v /dev/printers/0
      

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

      lpadmin コマンドに -s オプションを使用して、印刷サービスホスト名として localhost を指定できるようになりました。詳細は、「印刷待ち行列の追加時に localhost をホスト名として指定する方法 (LP 印刷コマンド)」を参照してください。

    2. このプリンタで使用するインタフェーススクリプトを指定します。


      # lpadmin -p printer-name -m standard_foomatic
      
    3. このプリンタで使用するファイル内容形式と PPD ファイルを指定します。


      # lpadmin -p printer-name -I content-type -n /path/ppdfile
      

      ここで指定する PPD ファイルは、/path ディレクトリにあります。


      注 –

      /path がシステム上の PPD ファイルリポジトリでない場合は、PPD ファイルのコピーが user PPD ファイルリポジトリの user ラベルディレクトリに置かれます。詳細は、「PPD ファイル管理ユーティリティーを使用した PPD ファイルの管理 (作業マップ)」を参照してください。


    4. プリンタの説明 (備考欄) を指定します。


      # lpadmin -p printer-name -D "printer-description"
      

    詳細は、lpadmin(1M) のマニュアルページを参照してください。

  5. (省略可能) フィルタを印刷サーバーに追加します。


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


    # accept printer-name
    # enable printer-name
    
  7. プリンタが正しく構成されていることを確認します。


    # lpstat -p printer-name -l
    

    lpstat コマンドの出力には、指定した PPD ファイルが表示されます。


例 5–1 PPD ファイルを指定して新しい直接接続プリンタを追加する

この例では、PPD ファイルを指定して、新しく接続したプリンタを追加する方法を示します。-lpadmin コマンドの n オプションを使用すると、PPD ファイルを指定して新しい印刷待ち行列を追加できます。この例では次の情報を使用しています。


# lpadmin -p paper -v /dev/printers/0 (1)
# lpadmin -p paper -I postscript (2)
# lpadmin -p paper -m standard_footmatic (3)
# lpadmin -p paper -n /path/Lexmark-Optra_E312-Postscript.ppd.gz(4)
# lpadmin -p paper -D "Color printer on third floor, rm 3003" (5)
# cd /etc/lp/fd

# accept paper
	destination “paper” now accepting requests 
# enable paper	(6) 
printer “paper” now enabled 
# lpstat -p paper (7)
printer paper is idle. enabled since Feb 28 11:21 2004...
  1. このプリンタで使用するプリンタ名とポートデバイスを指定します

  2. プリンタが直接印刷できるファイル内容形式を設定します

  3. PPD ファイルを利用するためのインタフェーススクリプトを指定します


    注 –

    また、/path がシステム上の既存 PPD ファイルリポジトリでない場合、このコマンドは PPD ファイルを user PPD ファイルリポジトリの user ラベルにコピーします。


  4. PPD ファイルへのパスと、PPD ファイル名を指定します

  5. プリンタの説明を追加します

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

  7. プリンタが印刷できる状態にあることを確認します



例 5–2 PPD ファイルを指定せずに新しい直接接続プリンタを追加する

この例では、PPD ファイルへの関連付けを行わずに新しい接続プリンタを追加する方法を示します。この例のコマンドは、プリンタが接続されている印刷サーバーで実行しなければなりません。この例では次の情報を使用しています。

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

  2. このプリンタで使用するプリンタ名とポートデバイスを指定します

  3. プリンタタイプを設定します

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

  5. プリンタの説明を追加します

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

  7. プリンタが印刷できる状態にあることを確認します


参照

Procedure印刷待ち行列の追加時に localhost をホスト名として指定する方法 (LP 印刷コマンド)

この手順は、LP 印刷コマンドを使ってローカル印刷待ち行列を追加する際に、localhost オプションを印刷システムデータベース内のホスト名として指定する方法を示したものです。localhost をホスト名として使用するように、構成済みの印刷待ち行列を変更することもできます。

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印刷ホスト名を localhost に設定します。


    # lpadmin -p new-print-queue -s localhost -v device
    
  3. /etc/printers.conf ファイルのエントリを確認します。


    # lpget new-print-queue
    new-print-queue:
            bsdaddr=abc,new-print-queue,Solaris

    印刷待ち行列が正常に作成または変更されていれば、新しい印刷待ち行列または変更された印刷待ち行列の名前が lpget コマンドの出力に表示されます。


例 5–3 ホスト名として localhost を指定して印刷待ち行列を追加する

この例では、lpadmin コマンドを -s オプションとともに使用して、ホスト名として localhost を指定し、新しい印刷待ち行列 paper を追加する方法を示します。


$ su - root
# lpadmin -p paper -s localhost -v /dev/ecpp0

# lpget paper
paper:
        bsdaddr=localhost,paper,Solaris


例 5–4 ホスト名を指定するための lpadmin のデフォルトの動作を使用して、印刷待ち行列を追加する

この例では、新しい印刷待ち行列を追加するときにシステムのホスト名 abc を使用する、lpadmin コマンドのデフォルトの動作を示します。


$ su - root
# lpadmin -p newspaper -v /dev/printers/0

# lpget newspaper
fargo:
        bsdaddr=abc,newspaper,Solaris


例 5–5 ホスト名として localhost を使用するように印刷待ち行列を変更する

この例では、既存の印刷待ち行列 newspaper を変更して、新しい印刷サーバー名として localhost を指定する方法を示します。


$ su - root
# lpadmin -p newspaper -s localhost

# lpget newspaper
newspaper:
        bsdaddr=localhost,newspaper,Solaris

参照

Solaris 印刷マネージャーを使用して印刷待ち行列を追加または変更するときに、印刷サーバーのホスト名として localhost を指定する方法については、「印刷待ち行列の追加時に localhost をホスト名として指定する方法 (Solaris 印刷マネージャー)」を参照してください。

LP 印刷コマンドによるネットワーク接続されたプリンタの設定

「ネットワーク接続プリンタ」とは、ネットワークに直接接続されているハードウェアデバイスです。このプリンタは、印刷サーバーにケーブルで物理的に接続されていなくても、印刷サーバーからアクセスできます。ネットワーク接続プリンタは専用のシステム名と IP アドレスを持っています。


注意 – 注意 –

印刷サーバーの待ち行列化機能を使用せずにネットワーク接続プリンタを構成する方法はサポートされておらず、プリンタの構成ミスにつながります。

Solaris 印刷マネージャーを使用すると、ネットワーク接続プリンタを正しく構成できます。「新しいネットワークプリンタを設定」オプションを選択します。また、lpadmin コマンドを使用しても、ネットワーク接続プリンタを正しく構成できます。

ネットワーク接続プリンタを追加するときに、lpadmin - p queue-name -s printer-name コマンドまたは Solaris 印刷マネージャーの「プリンタへのアクセスを追加」オプションを使用しないでください。これらの方法は、リモート印刷サーバー上の既存の待ち行列をポイントするときにだけ使用します。印刷サーバーには、ネットワーク接続プリンタに対する待ち行列管理、フィルタリング、印刷管理の各機能が含まれています。ネットワーク接続プリンタに直接印刷するとプリンタの構成ミスが発生し、さまざまな問題が起きる可能性があります。また、コピー、バーストページを使用するかしないか、フィルタなどのジョブオプションも失われます。


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

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

ネットワーク接続プリンタ構成で使用する用語を説明します。印刷関連用語の詳細については、用語集を参照してください。

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

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

ネットワーク接続プリンタの追加方法に関する一般的な説明については、「LP 印刷コマンドによるネットワーク接続されたプリンタの設定」を参照してください。次は、Oracle 提供のソフトウェアを使用したプリンタの管理を説明します。

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

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


lpadmin -p printer-name -m netstandard 

プリンタノード名の選択

プリンタノード名はシステム管理者が選択します。ネットワーク上のノードと同様に、この名前は一意でなければなりません。プリンタノード名は、プリンタの IP アドレスと関連付けられます。

送信先名 (ネットワークプリンタアクセス名) の選択

印刷サブシステムはプリンタのアクセス情報を必要とします。このサブシステムは、プリンタへのネットワーク接続を行うときに送信先名を使用します。この名前は、システム管理者が lpadmin コマンドで印刷サブシステムに提供します。これは、プリンタ構成データベースの一部になります。プリンタアクセス名はプリンタノード名であり、ポート名で修飾される場合もあります。ポート指定はプリンタベンダー間で異なります。ポート指定については、プリンタのマニュアルを参照してください。

次に、プリンタアクセス名の書式を示します。

printer-node-name[:port-designation]

送信先名は、次の 3 つの形式のいずれかで指定できます。

単独名 (単純名)

(送信先) - 指定された送信先の printer-uri-supported キーと値のペアを printers.conf または printers 構成データベースで検索することによって解決されます。エントリの printer-uri-supported キーが見つからない場合は、エントリの bsdaddr 値がプリンタ URI 形式に変換され、使用されます。

詳細は、printers(4) および printers.conf(4) のマニュアルページを参照してください。

プリンタ URI

(scheme://endpoint) - 完全に解決され、印刷サービスと通信するためのプロトコルと通信エンドポイントを指定します。この送信先名の形式は、ユーザーのシステムの現在の管理ドメインの外部にある印刷サービスにアクセスする場合に役立ちます。名前には印刷サービスとの通信時に使用するプロトコルが含まれるため、RFC-1179 プロトコルよりも機能の豊富なプロトコルを選択できます。

POSIX

(server:queue[:extensions]) - これは完全な形式で、同等のプリンタ URI 形式 lpd://server/printers/queue[#extensions] に解決されます。この形式は下位互換性のためだけに残されています。代わりにプリンタ URI 形式を使用することをお勧めします。


例 5–6 ポート指定 (番号) 付き送信先名 (ネットワークプリンタアクセス名)

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


lpadmin -p printer_name -o dest=pn1:9100


例 5–7 BSD ポート指定 (名前) 付き送信先名 (ネットワークプリンタアクセス名)

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


lpadmin -p printer-name -o dest=cardboard:xxx_parallel_1


例 5–8 ポート指定なしの送信先名 (ネットワークプリンタアクセス名)

ポート指定がなく、プリンタノード名が newspaper の場合、プリンタアクセス名はプリンタノード名と同じになります。 newspaper です。この場合にプリンタを構成するには、次のコマンドを使用します。


lpadmin -p printer-name -o dest=newspaper

ネットワーク印刷プロトコルを選択する

LP 印刷サービスはデフォルトで、BSD 印刷プロトコルと生の TCP を使用してプリンタと通信します。プリンタのマニュアルには、使用するプロトコルについての情報が提供されています。一般に、プリンタに使用するのは TCP プロトコルです。


注 –

デバイス URI プロトコルが Solaris 10 5/08 リリースで導入されました。このプロトコルを使用するとリモートプリンタにアクセスできます。lpadmin コマンドまたは Solaris 印刷マネージャーを使用してネットワーク接続プリンタを追加するときに、device-uri を指定できます。


BSD プロトコルを選択するには、次のように入力します。


lpadmin -p printer-name -o protocol=bsd

TCP プロトコルを選択するには、次のように入力します。


lpadmin -p printer-name -o protocol=tcp

選択したプロトコルが BSD 印刷プロトコルの場合、さらにコントロールファイルをプリンタに送信する順番を選択できます。一部のプリンタは、コントロールファイルの後にデータファイルという順番を仮定します。その逆を仮定するプリンタもあります。詳しくは、プリンタベンダーのマニュアルを参照してください。デフォルトでは、コントロールファイルを先に送信します。

順番を選択するには、次のコマンドのいずれかを入力します。


lpadmin -p printer-name -o bsdctrl=first

lpadmin -p printer-name -o bsdctrl=last

タイムアウト値の設定

タイムアウトオプションは、プリンタに接続しようとする試行間で待機する時間 (秒数) を個別に選択するためのものです。ウォームアップ時間が長いプリンタの場合は、タイムアウト値を大きくします。デフォルトは 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

ProcedureLP 印刷コマンドを使用して、ネットワークに接続された新しいプリンタを追加する方法

この手順では、プリンタの構成中に PPD ファイルとの関連付けを行える拡張されたプリンタサポートを使って、新しいネットワーク接続プリンタを追加する方法について説明します。この手順のあとに、2 つの例を示します。1 番目の例では、lp コマンドで PPD ファイルを指定して新しいネットワーク接続プリンタを追加する方法を示します。2 番目の例では、lp コマンドで PPD ファイルを指定せずに新しいネットワークプリンタを追加する方法を示します。

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

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

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

  2. PPD ファイルを指定して新しいネットワーク接続プリンタを構成するのに必要な情報を収集します。

    • プリンタ名とポートデバイス

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

    • プロトコル

    • タイムアウト

    • ファイル内容形式

    • PPD ファイル

    PPD ファイルを決定するには、まず、プリンタのメーカー、モデル、およびドライバを定義します。

    詳細は、「LP 印刷コマンドによるネットワーク接続されたプリンタの設定」で説明した用語を参照してください。

  3. 印刷サーバーで、ログインしてスーパーユーザーになるか、同等の役割になります。

  4. このプリンタで使用する、プリンタ名、ポートデバイス、ファイル内容形式、および PPD ファイルを定義します。PPD ファイルを指定する場合、ファイル内容形式は通常「PostScript」です。

    1. このプリンタで使用する、プリンタ名、ポートデバイスを指定します。


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

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

      lpadmin コマンドに -s オプションを使用して、印刷サービスホスト名として localhost を指定できます。詳細は、「印刷待ち行列の追加時に localhost をホスト名として指定する方法 (LP 印刷コマンド)」を参照してください。

      -v オプションを使用して device-uri を指定できます。このプロトコルを使用するとリモートプリンタにアクセスできます。詳細は、「Oracle Solaris リリースでの印刷プロトコルの使用」を参照してください。

    2. このプリンタで使用するインタフェーススクリプトを指定します。


      # lpadmin -p printer-name -m netstandard_foomatic 
      

      ネットワーク接続プリンタ用のサポートソフトウェアと一緒に提供されるインタフェーススクリプトは /usr/lib/lp/model/netstandard_foomatic です。

    3. このプリンタで使用するファイル内容形式と PPD ファイルを指定します。

      PPD ファイルを指定する場合、ファイル内容形式は通常「PostScript」です。


      # lpadmin -p printer-name -I content-type -n 
      /path/ppdfile
      

      この PPD ファイルは、/path ディレクトリにあります。


      注 –

      /path がシステム上の PPD ファイルリポジトリでない場合は、PPD ファイルのコピーが user PPD ファイルリポジトリの user ラベルディレクトリに置かれます。詳細は、第 11 章PPD ファイル管理ユーティリティーを使用したプリンタの管理 (作業)を参照してください。


      詳細は、lpadmin(1M) のマニュアルページを参照してください。

    4. プリンタの説明 (備考欄) を指定します。


      # lpadmin -p printer-name -D  "printer-description"
      
  5. プリンタ送信先、プロトコル、およびタイムアウト値を設定します。


    # 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 と生の TCP の両方をサポートしています。

    -o timeout=value

    プリンタへの接続の試行間で待機する秒数を表す再試行タイムアウト値を設定します。

  6. (省略可能) フィルタを印刷サーバーに追加します。


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


    # accept printer-name
    # enable printer-name
    
  8. プリンタが正しく構成されていることを確認します。


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

    プリンタの設定が完了したら、プリンタへのアクセスを印刷クライアントに作成します。詳細は、「LP 印刷コマンドを使用してプリンタアクセスを追加する」を参照してください。ネームサービスを使用して印刷クライアントを定義する方法については、「ネームサービススイッチでの印刷サポート」を参照してください。

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

    プリンタを設定するときは、オプションの作業がいくつかあります。残りの作業の参照先を確認するには、「インターネット印刷プロトコルの構成 (作業マップ)」を参照してください。ネームサービスを使用して印刷クライアントを定義する方法については、「ネームサービススイッチでの印刷サポート」を参照してください。


例 5–9 PPD ファイルを指定して新しいネットワーク接続プリンタを追加する

この例では、PPD ファイルを指定して新しいネットワーク接続プリンタを追加する方法を示します。-lpadmin コマンドの n オプションを使用すると、PPD ファイルを指定して新しい印刷待ち行列を追加できます。この例のコマンドは、印刷サーバーで実行する必要があります。この例では次の情報を使用しています。実際の状況に合わせて指定する情報を変更してください。

  1. プリンタ名を定義し、デバイスを /dev/null に設定します

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

  3. 送信先、プロトコル、およびタイムアウトを設定します

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

  5. 使用する PPD ファイルを指定します

  6. プリンタの説明を追加します

  7. 印刷フィルタを印刷サーバーに追加します

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

  9. プリンタが印刷できる状態にあることを確認します



例 5–10 PPD ファイルを指定せずに新しいネットワーク接続プリンタを追加する

この例では、PPD ファイルを指定せずに新しいネットワーク接続プリンタを追加する方法を示します。これらのコマンドは、印刷サーバー上で実行する必要があります。この例では次の情報を使用しています。


# 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)
# lpadmin -p luna1 -D "Room 1954 ps" (5)
# cd /etc/lp/fd
# 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 (7)
printer "luna1" now enabled 
# lpstat -p luna1 (8)
printer luna1 is idle.enabled since Feb 28 11:21 2003.available.
  1. プリンタ名を定義し、デバイスを /dev/null に設定します

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

  3. 送信先、プロトコル、およびタイムアウトを設定します

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

  5. プリンタの説明を追加します

  6. 印刷フィルタを印刷サーバーに追加します

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

  8. プリンタが印刷できる状態にあることを確認します


Procedure印刷サーバーに接続されたリモートプリンタを IPP を使用して設定する方法

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. リモートプリンタを設定するには、次のいずれかの方法を選択します。

    • lpadmin コマンドを使用します。


      # lpadmin -p printer -s ipp://printer-ip-address/printers/printer-name
      
    • lpset コマンドを使用します。


      # lpset -a printer-uri-supported=ipp://printer-ip-address/printers/printer-name
      

      lpset コマンドで -a オプションを使用すると、キー/値のペアを指定できます。上記の出力では、キーとして printer-uri-supported、値として ipp://printer-ip-address/printers/printer-name が指定されています。通常、この値は、プリンタを直接示すのではなく、印刷サーバー上の印刷待ち行列を示すように設定します。

  3. (省略可能) 指定した URI を調べるには、次のコマンドを入力します。


    $ lpstat -p ipp://printer-ip-address/printers/printer-name
    

    lpstat コマンドを使用し、送信先として URI を指定すると、ローカルの印刷構成をバイパスして、ネットワークに接続されているプリンタまたはリモート印刷サーバーに直接接続できます。

プリンタベンダー提供のソフトウェアによる新しいネットワーク接続プリンタの追加

一般に、ネットワークプリンタには、プリンタベンダーから提供されているソフトウェアが必要です。プリンタにベンダー提供のソフトウェアがある場合、可能な限りそれを使用します。プリンタベンダー提供のソフトウェアは、そのプリンタの特性をサポートするように設計されていて、プリンタの能力を最大限に活用します。プリンタのマニュアルをよく読んで、LP 印刷サービスを使用できるように、プリンタをインストールおよび構成してください。

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

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

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

  2. プリンタのマニュアルに従って、ネットワーク接続プリンタを追加してください。

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

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

    プリンタを追加したら、次にプリンタへのアクセスを印刷クライアントに作成します。詳細は、「LP 印刷コマンドを使用してプリンタアクセスを追加する」を参照してください。

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

    ネットワーク接続プリンタを設定するときは、オプションの作業がいくつかあります。これらの作業の参照先を確認するには、「インターネット印刷プロトコルの構成 (作業マップ)」を参照してください。

印刷クライアントでのプリンタの設定および管理 (作業マップ)

表 5–1 印刷クライアントでのプリンタの設定および管理 (作業マップ)

作業 

説明 

参照先 

LP 印刷コマンドを使用してプリンタアクセスを追加します。 

LP 印刷コマンドを使用して、印刷クライアントでプリンタへのアクセスを追加します。 

「LP 印刷コマンドを使用してプリンタアクセスを追加する方法」

.printers ファイルを設定します。

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

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

プリンタとプリンタアクセスを削除します。 

プリンタの交換が必要な場合や、プリンタを別の場所に移動する場合には、プリンタ情報を print-client から削除します。

「LP 印刷コマンドを使用してプリンタおよびプリンタアクセスを削除する方法」

LP 印刷コマンドを使用してプリンタアクセスを追加する

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

プリンタへのアクセスは、ドメイン全体で構成することも、マシン単位で構成することもできます。プリンタ情報をネームサービスデータベースに追加すると、アクセスはドメイン全体に対して構成されます。

ProcedureLP 印刷コマンドを使用してプリンタアクセスを追加する方法

  1. スーパーユーザーになるか、同等の役割を引き受けます。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. プリンタへのアクセスを追加します。


    # lpadmin -p printer -s print-server -D description
    
  3. プリンタをシステムのデフォルトのプリンタ送信先として設定します。


    # lpamin -d printer
    
  4. プリンタが印刷できる状態にあることを確認します


    # lpstat -p printer
    

例 5–11 lp 印刷コマンドを使用してプリンタアクセスを追加する

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


# lpadmin -p luna -s saturn (1)
# lpadmin -p luna -D "Room 1954 ps" (2)
# lpadmin -d luna (3)
# lpstat -p luna (4)
  1. プリンタと印刷サーバーを指定します

  2. プリンタの説明を追加します

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

  4. プリンタが印刷できる状態にあることを確認します


.printers ファイルの設定

.printers ファイルはユーザーのホームディレクトリに格納します。このファイルには、ユーザーのデフォルトプリンタやその他の使用頻度の高いプリンタに関する情報が含まれています。.printers ファイルを使用すれば、ユーザー独自のプリンタ別名を設定できます。たとえば、_default 別名を使えば、ユーザーのデフォルトプリンタを指定できます。また、特殊な別名 _all を使えば、印刷ジョブの取り消し時に影響が及ぶプリンタのリストを定義したり、プリンタの状態を確認したりすることができます。

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

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

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

この手順は、ユーザー自身のホームディレクトリで .printers ファイルを設定する方法を示したものです。

  1. 自分のユーザー名とパスワードを使ってシステムにログインします。

  2. 必要であれば、$HOME にディレクトリを変更します。


    $ cd $HOME
    
  3. .printers ファイルの作成に使用するテキストエディタを起動します。

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


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


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

ProcedureLP 印刷コマンドを使用してプリンタおよびプリンタアクセスを削除する方法

  1. 削除対象のプリンタアクセスを持つ印刷クライアントで、スーパーユーザーまたは lp としてログインするか、同等の役割になります。

  2. 印刷クライアントであるシステム上で、プリンタに関する情報を削除します。


    # lpadmin -x printer-name
    
    -x

    指定したプリンタを削除します。

    printer-name

    削除するプリンタ名を指定します。

  3. 印刷サーバーにスーパーユーザーまたは lp としてログインするか、同等の役割になります。

  4. 印刷サーバーであるシステム上で、プリンタに対する印刷要求の受け付けを停止します。


    # reject printer-name
    

    reject printer-name は指定したプリンタへの印刷要求を拒否します。

    この手順を実行すると、プリンタの削除処理中は、そのプリンタの待ち行列に新しい要求が入らなくなります。詳細については、「プリンタへの印刷要求を受け付けるまたは拒否する方法」を参照してください。

  5. 印刷サーバーであるシステム上で、プリンタを停止します。


    # disable printer-name
    

    この手順を実行すると、印刷要求の印刷は停止されます。印刷を停止する方法については、「プリンタを使用可能または使用不可にする方法」を参照してください。

  6. 待ち行列に残っている印刷要求がある場合は、別のプリンタに移動します。

    印刷要求を別のプリンタに移動する方法については、「印刷要求を別のプリンタに移動する方法」を参照してください。

  7. 印刷サーバーであるシステム上で、プリンタを削除します。


    # lpadmin -x printer-name
    
  8. プリンタ情報が削除されていることを確認します。

    1. 印刷クライアント上でプリンタ情報が削除されていることを確認します。


      $ lpstat -p printer-name -l
      

      上記のコマンドの出力で、プリンタが存在しないことを示すエラーが表示されます。

    2. 印刷サーバー上でプリンタ情報が削除されていることを確認します。


      $ lpstat -p printer-name -l
      

      上記のコマンドの出力で、プリンタが存在しないことを示すエラーが表示されます。


例 5–12 プリンタとリモートプリンタへのアクセスを削除する

次の例は、印刷クライアント terra と印刷サーバー jupiter からプリンタ luna を削除する方法を示しています。この例では、印刷サーバーから印刷クライアント terra を削除する方法も示しています。


terra# lpadmin -x luna
Removed “luna”.
terra# lpstat -p luna -l 
jupiter# lpadmin -x luna
Removed “terra”.
jupiter# lpstat -p luna -l