この章では,キュー,論理プリンタ,物理プリンタの作成および管理の方法と,プリンタに対する省略時のオブジェクトの作成方法を説明します。 この章は次の項に分けられています。
キューの作成と管理
物理プリンタの作成と管理
論理プリンタの作成と管理
省略時のオブジェクトの作成
この章で使用されるコマンドの詳細説明については,『Advanced Printing Software コマンド・リファレンス・ガイド』を参照してください。
6.1 キューの作成と管理
論理プリンタと物理プリンタの抽象化は,キューによって結び付けられます。1 つの論理プリンタと 1 つの物理プリンタを 1 つのキュー・オブジェクトに関連付けることによって,ユーザが印刷のために指定するプリンタと,出力デバイスの特性によって定義された物理プリンタとの関係を確立することになります。
キューを作成するときには,キューをスプーラに関連付けます。関連付けられたスプーラは,次の処理を行います。
ローカル・ファイルの
/etc/printers.conf
ファイルにエントリを作成することで,キューをネーム・サービスに登録します。
新しいキューを使用不能として初期化します。
新しいキューの名前をスプーラ属性
queues-supported
に追加します。
キューの作成は,pdcreate
コマンドまたは pdprintadmin GUI を使用して行います。pdprintadmin GUI を使用してプリンタを作成すると,プリント・システムでキューを自動的に作成するかどうかが尋ねられます。また,pdcreate
を使用してキューを作成するとき,pdcreate
の構文は次のとおりです。
pdcreate
[-c queue
]
[-x extended_attribute_string
]
[- X attribute_filename
]
[queue_name
]
production_q という名前のキューを作成し,それを red_spl という名前のスプーラに関連付けるには,次のコマンドを使用します。
# pdcreate -c queue red_spl:production_q
pdenable
コマンドを使用するとキューを使用可能にできます。キューを使用可能にすると,キューはプリント・ジョブを受け付けます。キューを使用可能にする場合,pdenable
コマンドの構文は次のようになります。
pdenable
[-c queue
]
[-m message text
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[queue_name
]
オペレータと管理者は
pdclean
コマンドを使用して,1 つのキューからすべてのジョブを削除することができます。
pdclean
コマンドを使用してキューからすべてのジョブを削除すると,関連付けられた物理プリンタで,現在印刷中,保持中,または,処理中のジョブは削除されます。このコマンドを実行する前に,キューを使用不能にする必要があります。
production_q という名前のキューからすべてのジョブを削除するには,次のコマンドを使用します。
# pdclean -c queue production_q
state
属性には,キューの現在の状態が入っています。
キューは次の 2 つの状態のいずれかになります。
ready (処理可能) -- キューの通常の動作状態。
paused (一時停止) -- キューは一時停止され,ready 状態に戻るまで物理プリンタにジョブを送信しません。
キューは
pdpause
コマンドで一時停止され,pdresume
コマンドで再開されます。
6.1.4 キュー属性のリスト
pdls
コマンドを使用すると,キューの属性を表示できます。
production_q
という名前のキューの
logical-printers-ready
属性と
physical-printers-ready
属性を表示するには,次のコマンドを使用します。
# pdls -c queue production_q
このコマンドの出力は,次のとおりです。
queue-name logical-printers-ready physical-printers-ready ---------- ---------------------- ----------------------- production_q colorPS hpcolorPS
キュー mail_q のすべての属性をリストするには,次のコマンドを使用します。
# pdls -c queue -r all -s line mail_q
このコマンドの出力は,次のとおりです。
mail_q: object-class = queue mail_q: queue-name = mail_q mail_q: associated-server = red_spl mail_q: enabled = no mail_q: availability = none mail_q: state = ready
プリント・システムでは,物理プリンタとは出力デバイスを表すオブジェクトのことです。
サポートされる物理プリンタには,それぞれのプリンタのためのプリンタ属性ファイル (Printer Attribute File - PAF) があります。PAF ファイルには,プリンタとの通信とその制御に必要な属性の推奨設定が含まれています。プリンタ属性ファイルは名前のフォーマットが
printer_model.paf
なので,新しい物理プリンタ用の適切なプリンタ属性ファイルは,プリンタ・モデルによって決定できます。たとえば,Digital_DEClaser5100_level2PS.paf は Digital DEClaser5100 プリンタ用のプリンタ属性ファイルになります。
paf ファイルは
/usr/pd/share/cap
ディレクトリに格納されています。
6.2.1 物理プリンタの作成
pdcreate コマンドを使用すると物理プリンタを作成できます。pdcreate コマンドの構文は次のとおりです。
pdcreate
[-c printer
]
[-x extended_attribute_string
]
[- X attribute_filename
]
[printer_name
]
物理プリンタを作成する際に指定する必要のある属性は,次のとおりです。
printer-model
-- プリンタのモデル名。
printer-address
-- プリンタのデバイス・アドレスまたはネットワーク・アドレス。
associated-queue
-- プリンタが関連付けられているキュー (1 つまたは複数) の名前。
printer-connection-method
-- シリアル接続,パラレル接続,ip - ソケット接続,LPD 接続,digital-printserver 接続がサポートされています。
プリンタ属性ファイルには,printer-model
,printer-connection-level
,printer-tcpip-port-number
属性の省略時の値が含まれています。他の属性の値については,物理プリンタを作成するときに指定するか,物理プリンタを作成した後でその値を設定または変更できます。
6.2.1.1 プリンタ・アドレスの設定
スーパバイザでは,接続されているすべてのプリンタについて,printer-address
属性に一意な値が指定されていることが必要です。この属性に値が割り当てられていない場合,物理プリンタを使用可能にすることはできません。
次の表は,スーパバイザが認識する printer-address 属性の一般的な形式です。この形式は,シリアル,パラレル,IP ネットワーク・ソケットの各接続を示しています。IP ネットワーク・ソケット・ポートは,シンプルなノード名,ドット付きまたはドットなしのドメイン構文のアドレス,ポート番号付きまたはポート番号なしのアドレスのいずれかになります。
表 6-1: プリンタ・アドレス・フォーマット
形式 | 説明 | 接続方法 | スーパバイザ |
/dev/lp<n> | パラレル・ポート n | パラレル | pdspvr |
/dev/tty<nn> | シリアル・ポート nn | シリアル | pdspvr |
name[:port] | ホスト名 (ドメインなし) とポート | IP ソケット | pdspvr |
name.dom[:port] | ドメインを指定したホスト名とポート | IP ソケット | pdspvr |
address [:port] | 数値の IP アドレスとポート | IP ソケット | pdspvr |
ホスト,プリンタ,拡張 | アウトバウンド・ゲートウェイ・プリンタ | bsd | pdspvlpr |
ポート番号を指定しなければ,スーパバイザはその番号を
printer-tcpip-port-number
属性から取り出すことに注意してください。printer-address
の一部としてポート番号を指定した場合は,printer-tcpip-port-number
に値が指定されていても,そのポート番号が優先されます。
6.2.1.2 プリンタ接続方法の設定
プリンタ・ハードウェアは,いくつかの方法でスーパバイザ・ホストに接続されます。デスクトップ・プリンタやミッドレンジ・プリンタには,通常,背面に 1 つ以上のコネクタがあり,それによってホスト,ターミナル・サーバ,ネットワークなどのデータ・ソースに接続できます。そのようなコネクタと,コネクタが接続しているハードウェアをプリンタ・インタコネクトといいます。
プリンタの中には,インタコネクトが,顧客が別個に購入するハードウェア・オプションであり,1 つのプリンタ・モデルに対して常に同じとは限らないものもあります。また,別のプリンタでは,接続可能なものは既知であって,変わりません。物理インタコネクトの例としては,次のものが挙げられます。
RS-232 シリアル
セントロニクス・パラレル
イーサネット
物理インタコネクトの中には,単方向や双方向などのバリエーションがあります。また,中には,TCP/IP などのリンク・レイヤ・プロトコルや bsd/lpd などのセッション・レイヤ・プロトコルをサポートするものもあります。
プリント・システムでの接続方法とは,サーバ・プロセスがプリンタ出力デバイスと通信できる一連の方法のことですprinter-connection-method
属性は,プリンタで使用できる適切な接続方法を指定します。サポートされている接続方法には,次のものがあります。
serial (シリアル)
parallel (パラレル)
ip-socket (IP ソケット)
digital-printserver (DIGITAL PrintServer)
bsd
1 つのスーパバイザは,複数の接続方法を同時に使用することによって,複数の出力デバイスをサポートできます。
printer-connection-method
の値が指定されていなければ,pdspvr
スーパバイザは次の基準で値を選択します。
printer-address
の値の形式が /dev/lp<n>
の場合,接続方法は parallel です。
printer-address の値の形式が /dev/tty<nn> の場合,接続方法は serial です。
printer-address の値が "/dev/デバイス・ファイル名" ではない場合,接続方法は ip-socket です。
プリンタの中には,他のプリンタが提供するよりも多くの接続機能を使用するものがあります。たとえば,シリアル・バック・チャネルに状態メッセージを提供するプリンタもあります。広範囲の接続タイプをサポートするために,プリント・システムは
printer-connection-level
属性を使用します。次の表に示すように,この属性に設定可能な値は 0 から 5 までです。
値 | 説明 |
0 | 何も指定していない - システムの省略時の値を使用する。 |
1 | 出力専用データ (単方向)。単方向のみのプリンタは,用紙切れや紙詰まり,オフラインなどの状態をスーパバイザ・プロセスに報告できない。スーパバイザは,フロー制御を利用 (利用可能な場合) して,プリンタの電源が入っていなかったり,利用可能でなかったりしたときに,ドキュメント・データがあふれるのを妨ぐ。 |
2 | 出力専用データ,状態ビットが返される。状態ビットの形式で状態を報告するプリンタは,プリンタがオフラインであるときや,エンジン・エラーが発生したときなどの状態情報をスーパバイザに提供できる。 |
3 | 双方向 (同期のとれたセッション制御のないもの)。双方向データ接続を利用する PostScript プリンタは,ホストに対してさらに詳細で,広範囲のプリンタ情報メッセージを送信する。プリント・システム・スーパバイザは,このようなプリンタ・メッセージの多くをイベントや障害テキストに変換する。これは,クライアントが表示できる。 |
4 | 双方向 (同期のとれたセッション制御のあるもの)。前述の値 3 での PostScript プリンタに関する説明を参照。 |
5 | DIGITAL PrintServer。 |
プリント・システム・ソフトウェアで提供されるプリンタ属性ファイルには,サポートされるそれぞれのプリンタの適切な接続レベル定義が含まれています。通常の環境では,プリンタ属性ファイル設定の
printer-connection-level
の値を変更する必要はありません。これは,通常,プリンタとそのインタコネクトによってレベルが決まるためです。ただし,ターミナル・サーバや他の特殊な目的のインタフェースを使用すると,プリント・システムが提供できるサポートのレベルに影響するので,プリンタに対する (性能は劣るが) 信頼性の高いサポートを得るために,接続レベルを低くしなければならないこともあります。
6.2.1.4 シリアル・ポート・パラメータ属性の設定
プリンタをシリアル・ポートに接続するには,いくつかの通信パラメータを指定する必要があります。printer-baud-rate 属性を指定しない場合,プリント・システムは,ポートがあらかじめ正しく設定されていると想定します。ただし,printer-baud-rate を指定した場合,スーパバイザは,他の属性が当初何も指定されていない場合は,それらの属性を管理者が指定した値,または次の表に示す値に設定します。
属性 | 有効な値 | 省略時の値 |
printer-baud-rate | 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 | 物理ポート設定を使用する。 |
printer-data-bits | 5, 6, 7, 8 | 8 |
printer-stop-bits | 0, 1, 2 | 1 |
printer-input-flow-control | none, xoff, dtr | xoff |
printer-output-flow-control | none, xoff, dtr | xoff |
printer-parity | none, even, odd, mark, space | none |
TCP/IP ソケット接続へ接続するには,プリンタが通信に使用するポート番号を知っている必要があります。printer-tcpip-port-number
属性により,スーパバイザは ip-socket 接続のプリンタに接続するときに,指定されたポート番号を使用します。
printer-address
属性の一部としてポート番号を指定した場合,そのポート番号はこの属性値を無効にします。プリンタ属性ファイルは,HP JetDirect プリンタなどのように,主流となっているネットワーク接続オプションをプリンタが備えているときにはいつでも
printer-tcpip-port-number
属性を含みます。
属性 | 有効な値 | 省略時の値 |
printer-tcpip-port-number | 1 - 65535 | 9100 |
次に示すのは,物理プリンタ作成の例です。
次の例は,blue_sup
で制御され,キュー
production_q
に関連付けられた物理プリンタ
dec5100
の作成方法を示しています。
# pdcreate -c printer \ -X Digital_DEClaser5100_Level2PS.paf \ -x printer-address=61.140.16.20 \ -x associated-queue=production_q \ blue_sup:dec5100
物理プリンタ
highcap
を作成するとき,Lexmark 4039 10plus Level 2 PS プリンタ用に,スーパバイザ
red_supr
で,プリンタ・アドレスが /dev/pts/1,関連付けられたキューが
mail_q
,input-trays-supported 属性と input-trays-ready 属性の追加値として large-capacity を持つように設定するには,次のように入力します。
# pdcreate -c printer \ -X LXK_4039plus_Level2PS.paf \ -x printer-address=/dev/pts/1 \ -x associated-queue=mail_q \ -x input-trays-supported+=large-capacity \ -x input-trays-ready+=large-capacity \ red_sup:lxk4039
Lexmark 4039 10plus Level 2 PS プリンタ用のプリンタ・データ・シートは,large-capacity をオプションの給紙トレイとして指定していることに注意してください。これはオプションなので,プリンタ属性ファイルは input-trays-supported 属性と input-trays-ready 属性のための値を含みません。このトレイをサイトで利用可能にするには,オプションのトレイ用の値を属性に追加する必要があります。この例では,作成操作中にこの値を設定できることを示しています。また,プリンタの作成後に,pdset
コマンドで属性値を追加することもできます。
プリンタやプリント・システムの機能を十分に活用するために,多くの属性を設定することができます。これらの属性によって,両面印刷,セパレータ・ページ,「N アップ (片面への複数ページ印刷)」などの機能を使用することができます。
次の例は,いくつかの一般的な属性を設定する方法を示しています。
ジョブとジョブの間に,プリンタがセパレータ・ページを印刷するようにするには,次のコマンドを使用して,必要な属性を物理プリンタに設定します。
# pdset -c printer \ -x 'job-sheets-supported=none job-copy-start job-copy-wrap' \ <pp-name> # pdset -c printer -x 'job-sheets-ready=none job-copy-start job-copy-wrap' \ <pp_name> # pdset -c printer \ -x 'document-sheets-ready=none document-set-start-copy-separate' \ <pp_name>
プリンタが両面印刷をサポートしており,PAF
ファイルにこの属性が設定されていない場合は,次の属性を追加または設定する必要があります。
# pdset -c printer -x 'sides-supported=1 2'\ -x 'sides-ready=1 2' <pp_name> # pdset -c printer -x 'sides-ready=1 2' \ -x 'sides-ready=1 2' <pp_name> # pdset -c printer -x 'plexes-supported=simplex \ duplex tumble' <pp_name>
プリンタが PostScript プリンタの場合に,横長フォーマットや縦長フォーマットでテキスト・ファイルを印刷できるようにするには,次のように設定します。
# pdset -c printer \ -x 'content-orientations-supported=landscape portrait' \ <pp_name>
物理プリンタを使用可能にすると,プリンタはそれに関連付けられたキューからのプリント・ジョブを受け付けることができます。
pdenable
コマンドを使用して物理プリンタを使用可能にします。物理プリンタを使用可能にする場合は,次のことに注意する必要があります。
associated-queue 属性で指定したキューが既に存在している必要があります。このキューをサポートするスプーラは,操作が正常に行われるように実行中でなければなりません。
スーパバイザ,スプーラ,キューの physical-printers-ready 属性にそのプリンタが追加されます。
pdenable
コマンドの構文は次のとおりです。
pdenable
[-c class_name
]
[-mmessage_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[server_name:
]
[printer_name
]
pdenable コマンドの省略時クラスが
printer
なので,プリンタを使用可能にするときに
-c
オプションを指定する必要はありません。
プリンタ dec5100 を使用可能にするには,次のコマンドを使用します。
# pdenable dec5100
プリンタ lxk4039 を使用可能にして,プリンタとプリンタの場所を説明するメッセージを含めるには,次のコマンドを使用します。
# pdenable -m "High-speed PostScript - Lab 2B" lxk4039
pddisable
コマンドは物理プリンタを使用不能にするために使用します。物理プリンタを使用不能にすると,プリンタは新しいプリント・ジョブを受け付けなくなります。ただし,現在印刷中または処理中のジョブは最後まで実行されます。
次の属性は,物理プリンタを使用不能にすると更新されます。
スーパバイザ,キュー,スプーラの physical-printers-ready 属性からそのプリンタの名前が消去されます。
pddisable
コマンドの構文は次のとおりです。
pddisable
[-c printer
]
[-m message_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[server_name:
]
[printer_name
]
次に示すのは,pddisable
コマンドを使用して物理プリンタを使用不能にする例です。
物理プリンタ lxk4039 を使用不能にするには,次のコマンドを使用します。
# pddisable lxk4039
pdpause
コマンドは,物理プリンタの出力を一時停止するために使用できます。物理プリンタを一時停止すると,次の処理が行われます。
スーパバイザは出力デバイスへのプリント・データの送信を停止します。
物理プリンタは可能な限りすぐに印刷を停止します。
物理プリンタに関連付けられたスプーラは,プリンタが一時停止 (paused) 状態の間は新しいジョブをスケジューリングしません。
一時停止されたときにプリンタが印刷をしていない場合にも,印刷をもう一度開始するには,再開操作 (pdresume
) が必要です。
pdpause
コマンドの構文は次のとおりです。
pdpause
[-c class_name
]
[-m message_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[printer_name
]
pdpause
を使用して物理プリンタを一時停止させる場合には,オブジェクト・クラスの省略時の値がプリンタなので,これを指定する必要はありません。
プリンタ dec5100 を一時停止させるには,次のコマンドを使用します。
# pdpause dec5100
pdresume
コマンドは,pdpause
コマンドによって一時停止されているプリンタの処理を再開します。プリンタを再開するときに,プリンタは,現在割り当てられているプリント・ジョブがある場合には,そのジョブが一時停止された時点から印刷を再開します。
pdresume
コマンドの構文は次のとおりです。
pdresume
[-c class_name
]
[-m message_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[printer_name
]
このコマンドの省略時のクラスはプリンタです。
プリンタ hpcolorPS を再開するには,次のコマンドを実行します。
# pdresume hpcolorPS
pddelete
コマンドは,物理プリンタ・オブジェクトを削除するために使用します。
物理プリンタ・オブジェクトを削除する前に,プリンタを使用不能にして,現在アクティブなジョブをすべて削除する必要があります。
次の属性は,物理プリンタを削除するときに更新されます。
スーパバイザ,スプーラ,およびキューの physical-printers-supported 属性が更新されます。
論理プリンタの printers-ready 属性と printer-associated-printers 属性が更新されます。
指定されたプリンタがキューに関連付けられた唯一の物理プリンタである場合,スプーラは,ジョブが別の物理プリンタに関連付けられるまで,そのキューでのジョブのスケジューリングを停止します。
pddelete
コマンドの構文は次のとおりです。
pddelete
[-c class_name
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[printer_name
]
プリンタ hpcolorPS を削除するには,次のコマンドを使用します。
# pddelete hpcolorPS
論理プリンタ・オブジェクトは,特定の特性と 1 つ以上の物理プリンタの機能を示す抽象化です。ユーザはジョブを印刷するときに,論理プリンタを指定することによって,ジョブやドキュメントの必要条件を満たす一連のデバイスにプリント・データを渡します。
次の例のように,pdcreate
コマンドを使用して,論理プリンタを作成し,オペランドの一部としてスプーラ・サーバを指定します。
pdcreate
[-c printer
]
[-x extended_attribute_string
]
[- X attribute_filename
]
[spooler_name:printer_name
]
論理プリンタを作成するとき,関連付けられたスプーラは次の処理を行います。
論理プリンタをネーム・サービスに登録します。
新しい論理プリンタを使用不能として初期化します。新しい論理プリンタを使用可能にするには,使用可能操作を実行する必要があります。
新しい論理プリンタの名前を,スプーラの
logical-printers-supported
属性に追加します。
プリント・システムは,論理プリンタを使用可能にする前に,論理プリンタに関連付けられたキューの名前を必要とします。オブジェクトを作成した後でも,対応する
associated-queue
属性を設定できますが,この属性は作成操作で指定するようにしてください。
作成操作で
associated-queue
属性を指定した場合,関連付けられたスプーラはスプーラの
logical-printers-supported
属性を更新します。associated-queue
を指定した場合は,指定されたキューが存在する必要があります。キューが存在しない場合,処理は失敗します。
また,initial-value-job
オブジェクトと
initial-value-document
オブジェクトを指定して,printer-initial-value-job
属性と
printer-initial-value-document
属性を持つ論理プリンタのジョブとドキュメントの省略時の値を設定することもできます。これらの属性は,作成操作で設定することも,オブジェクト作成後に設定操作で設定することもできます。
6.3.1 論理プリンタの作成例
次は,論理プリンタの作成例を示しています。
論理プリンタ doc2 を,スプーラ red_spl 上のキュー production_q に関連付けて作成するには,次のコマンドを使用します。
# pdcreate -c printer \ -x "associated-queue=production_q" red_spl:doc2
プリンタの機能を最大限に実現するために,設定が必要となる属性は数多くあります。これらの属性によって,プリンタの機能の使用を可能にし,両面印刷,セパレータ・ページ,「N アップ (片面への複数ページ印刷)」(テキスト・ファイルの方向) などの機能を有効にできます。
これらの属性は,論理プリンタが使用可能になったときに,物理プリンタの属性から継承されることに注意してください。論理プリンタを使用可能にする前に,論理プリンタ属性の値を物理プリンタ属性とは異なる値に設定した場合,物理プリンタの属性は継承されません。
6.3.3 論理プリンタに対する管理機能の実行
以降の各項では,プリント環境で論理プリンタに対して実行できる管理機能を説明します。機能には次のものがあります。
論理プリンタを使用可能にする
論理プリンタを使用不能にする
プリンタ属性をリスト表示する
論理プリンタに対して実行されたジョブを表示する
pdenable
コマンドは,論理プリンタを使用可能にするために使用されます。論理プリンタを使用可能にするときには,次の点に注意してください。
associated-queue 属性に名前を指定されたキューが既に存在している必要があります。
プリンタは,関連付けられたキューとスプーラの logical-printers-ready 属性に追加されます。
プリンタは,関連付けられたすべての物理プリンタの printers-ready 属性に追加されます。
プリンタは,論理プリンタにまだ定義されていない物理プリンタの xxx-supported 属性を継承します。
pdenable
コマンドの構文は次のとおりです。
pdenable
[-c printer
]
[-mmessage_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[printer_name
]
次に示すのは,論理プリンタを使用可能にする例です。
省略時のサーバ上の log_printer_1 を使用可能にするには,次のコマンドを使用します。
# pdenable log_printer_1
pddisable
コマンドは論理プリンタを使用不能にするために使用されます。論理プリンタを使用不能にすると,新しいプリント・ジョブ要求は受け付けられず,そのプリンタの名前は関連付けられたキューとスプーラの
logical-printers-ready
属性から削除されます。
pddisable
コマンドの構文は次のとおりです。
pddisable
[-c printer
]
[-m message_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[printer_name
]
次に示すのは,pddisable
コマンドを使用して論理プリンタを使用不能にする例です。
オプションを使用せずに論理プリンタを使用不能にするには,次のコマンドを使用します。
# pddisable logical_printer_1
pdls
コマンドを使用すると,論理プリンタの属性をリスト表示できます。pdls コマンドの構文は次のとおりです。
pdls
[-c class_name
]
[-ffilter_txt
]
[-F
]
[-g
]
[-r requested_attribute
]
[s-style_name
]
[x-extended_attribute_string
]
[X-attribute_filename
]
[printer_name
]
次の例は,pdls
コマンドの使用方法と,このコマンドで生成される出力を示しています。
論理プリンタ lpx0001 用のすべての属性を,1 行に 1 属性で表示するには,次のコマンドを実行します。
# pdls -c printer -r all -s line lpx0001 lpx0001: object-class = printer lpx0001: printer-name = lpx0001 lpx0001: availability = normal lpx0001: printer-realization = logical lpx0001: printer-state = idle lpx0001: enabled = yes lpx0001: associated-queue = px0001 lpx0001: associated-server = amanda lpx0001: printer-associated-printers = px3 pr1 lpx0001: printers-ready = px3 pr1
論理プリンタ lpx0001 の associated-queue 属性だけを表示するには,次のコマンドを実行します。
# pdls -c printer -r associated-queue lpx0001 associated-queue ----------------- px0001
pdq
コマンドを使用すると,論理プリンタに対して実行されたジョブのリストを作成することができます。このコマンドは,プリンタに関連付けられたキューの中に現在ある,1 つまたはすべてのジョブを表示するために使用できます。ジョブは,印刷のためにスケジューリングされた順序で表示されます。
次に示すのは,pdq
コマンドの使用例です。
lpx0001
にキューイングされたすべてのジョブのリストを表示するには,次のコマンドを実行します。
# pdq -p lpx0001 -r all -s line amanda:12: object-class = job amanda:12: job-identifier = amanda:12 amanda:12: assigned-queue = px0001 amanda:12: printer-name-requested = lpx0001 amanda:12: job-originating-host = bulldog amanda:12: job-owner = grace amanda:12: print-complete = yes amanda:12: user-name = grace amanda:12: number-of-documents = 4 amanda:12: job-submission-complete = yes amanda:12: submission-time = 26:06:97:11:10:42 amanda:12: total-job-octets = 464786 amanda:12: job-hold = no amanda:12: results-profile = {job-copies=1} amanda:12: job-name = cheatsheetCH2.ps amanda:12: printers-assigned = px3 amanda:12: current-job-state = printing amanda:12: started-printing-time = 26:06:97:11:10:44 amanda:12: previous-job-state = processing amanda:12: intervening-jobs = 0 amanda:12: job-copies = 1
ここで提供される情報は 1 つのジョブのものです。複数のジョブがこのプリンタにキューイングされている場合,これと同じ情報がそれぞれのジョブについて提供されます。
lpx0001
に対して実行されたジョブの簡潔な属性リストを表示するには,次のコマンドを実行します。
# pdq -p lpx0001 -r brief -s line amanda:16: job-identifier = amanda:16 amanda:16: job-name = voicemail.txt amanda:16: current-job-state = processing amanda:16: intervening-jobs = 0 amanda:16: printer-name-requested = lpx0001 amanda:16: printers-assigned = pr1 amanda:19: job-identifier = amanda:19 amanda:19: job-name = net.Form.ps amanda:19: current-job-state = printing amanda:19: intervening-jobs = 0 amanda:19: printer-name-requested = lpx0001 amanda:19: printers-assigned = px3
pddelete
コマンドは論理プリンタを削除するために使用します。論理プリンタを削除する際は,次のことを考慮してください。
プリンタを使用不能にして,アクティブなジョブを置かないようにする必要があります。
スーパバイザ,スプーラ,キューの physical-printers-supported 属性が更新されます。
論理プリンタの printers-ready 属性と printer-associated-printers 属性が更新されます。
指定されたプリンタがキューに関連付けられている唯一の物理プリンタである場合,スプーラは,そのキューが別の物理プリンタに関連付けられるまで,そのキューでのジョブのスケジューリングを停止します。
pddelete
コマンドの構文は次のとおりです。
pddelete
[-c printer
]
[-m message_txt
]
[-x extended_attribute_string
]
[-X attribute_filename
]
[printer_name
]
次のコマンドは,論理プリンタの削除方法を示しています。
プリンタ printer_1 を削除するには,次のコマンドを使用します。
# pddelete printer_1
印刷の省略時の値は,相当する属性がプリント要求の中に存在しない場合に,プリント・システムがジョブやドキュメントに自動的に適用する属性値です。プリント・システムはプリント・オブジェクトの 2 つのクラスを使用して,省略時の属性値のセットを特定します。これらのオブジェクト・クラスは,次のとおりです。
initial-value-job
-- 省略時の値を持つジョブ属性を含む
initial-value-document
-- 省略時の値を持つドキュメント属性を含む
省略時の値は,ジョブの本来の出力先である物理プリンタの機能を反映しています。このため,最初に物理プリンタを作成し,希望するプリンタ属性を設定してから,initial-value-job オブジェクトと initial-value-document オブジェクトを作成してください。
initial-value-job
オブジェクトと
initial-value-document
オブジェクトはスプーラ・オブジェクトなので,関連付けられたスプーラは,初期値オブジェクトを作成する前に存在している必要があります。
6.4.1 ジョブとドキュメントの省略時の値の指定
物理プリンタの機能を考慮して,1 つの物理プリンタにさまざまな省略時の値を指定するために,複数の
initial-value-job
オブジェクトと
initial-value-document
オブジェクトを作成することができます。initial-value-job オブジェクトと initial-value-document オブジェクトを適用する方法によって,物理プリンタが出力に使用する省略時の値が決定されます。
initial-value-job
オブジェクトまたは
initial-value-document
オブジェクトを適用するには,次のいずれか一方,または両方を行う必要があります。
論理プリンタに対して
printer-initial-value-job
属性と
printer-initial-value-document
属性を設定することで,論理プリンタにオブジェクト設定を適用します。
プリント要求に
initial-value-job
属性と
initial-value-document
属性を指定することで,オブジェクト設定を適用します。
initial-value-job
オブジェクトと
initial-value-document
オブジェクトを論理プリンタとジョブの両方に適用すると,ジョブに指定されたオブジェクトが,論理プリンタに指定されたオブジェクトを無効にします。
管理者は,initial-value-job
オブジェクトと
initial-value-document
オブジェクトをどのように適用するかを決定してください。
これらのオブジェクトを論理プリンタに適用するのであれば,適切な論理プリンタ属性 (printer-initial-value-job
および
printer-initial-value-document
) を設定することによって適用します。
これらのオブジェクトをジョブの実行時に適用するのであれば,適切なジョブ属性 (initial-value-job と initial-value-document) を設定することによって適用します。initial-value-job オブジェクトや initial-value-document オブジェクトが利用できることをユーザに知らせるのは管理者の責任です。
次の例を参考にすると,サイトで適用可能な initial-value-job オブジェクトと initial-value-document オブジェクトを判断できるでしょう。
initial-value-job オブジェクト JobDefaults1 には,ジョブ属性 job-sheets=job-copy-start が含まれていて,プリント・システムが JobDefaults1 を適用するときに,印刷された出力にジョブの開始シートを含めるようにします。これはよく使用されるので,JobDefaults1 を対応する論理プリンタに関連付けます。
# pdset -c printer \-x 'printer-initial-value-job=JobDefault1' \ [spooler_name:]logical_printer_name
ただし,開始シートがいらない場合もあるので,initial-value-job オブジェクト JobDefaults2 を属性 job-sheets=none で作成します。これは特殊な場合だと考えられるので,JobDefaults2 は論理プリンタには関連付けません。代わりに,JobDefaults2 は次のようにジョブの実行時に適用できます。
# pdpr -x 'initial-value-job=JobDefaults2' file_name
JobDefaults2 はジョブ実行プリント要求の一部なので,これは論理プリンタに関連付けられた JobDefaults1 を無効にします。
この例は,1 つの属性 (job-sheets) だけを説明していますが,initial-value-job オブジェクトの JobDefaults1 と JobDefaults2 は,属性が複数になると,異なる可能性があります。
6.4.2 省略時のオブジェクトの作成
サイトに必要なジョブとドキュメントの省略時の値を決定したので,initial-value-job オブジェクトと initial-value-document オブジェクトを作成する準備ができました。
pdcreate
コマンドを使用すると,initial-value-job オブジェクトと initial-value-document オブジェクトを作成できます。
これらのコマンドのフォーマットは次のとおりです。
pdcreate
[-c initial-value-job
]
[[spooler_name]:iv-job-name
]
pdcreate
[-c initial-value-document
]
[[spooler_name]:iv-doc-name
]
# pdcreate -c initial-value-job [spooler_name:]iv_job_name # pdcreate -c initial-value-document [spooler_name:]iv_document_name
省略時のサーバにオブジェクトが作成されない場合,スプーラ名を指定する必要があります。
initial-value-job
オブジェクトと
initial-value-document
オブジェクトに含めたいジョブ属性とドキュメント属性が既にわかっている場合は,pdcreate
コマンドに -x 'attribute_name=attribute_value' を指定することができます。
pdprintadmin GUI アプリケーションは,論理プリンタの省略時の設定へのアクセスを提供します。論理プリンタに initial-value-job オブジェクトと initial-value-document オブジェクトをまだ適用していない場合は,省略時の設定によって initial-value-job オブジェクトと initial-value-document オブジェクトを作成できます。
initial-value-job
オブジェクトと
initial-value-document
オブジェクトには,次に示すように 2 セットの属性があります。
オブジェクト自体に適用する属性には,次のようなものがあります。
対応するジョブやドキュメントの省略時の値を示す属性には,たとえば
initial-value-job
オブジェクトの場合は,次のものがあります。
initial-value-document
オブジェクトについては,次のものがあります。
pdset
コマンドを使用して,initial-value-job
オブジェクトと
initial-value-document
オブジェクトの属性を設定します。
# pdset -c initial-value-job \ -x attribute_name=attribute_value iv_job_name
# pdset -c initial-value-document \ -x attribute_name=attribute_value iv_document_name