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

LP 印刷コマンドを使用した印刷要求の管理 (作業マップ)

作業 

説明 

参照先 

印刷要求の状態をチェックします。 

lpstat コマンドを使用し、印刷要求の状態をチェックします。

「印刷要求の状態をチェックする方法」

プリンタを使用可能または使用不可にします。 

enable コマンドと disable コマンドを使用し、プリンタが待ち行列に入っている印刷要求を印刷するか保留するかを制御します。

「プリンタを使用可能または使用不可にする方法」

プリンタへの印刷要求を受け付けるまたは拒否します。 

accept コマンドと reject コマンドを使用すると、印刷要求が格納される印刷待ち行列のオンとオフを切り替えることができます。

「プリンタへの印刷要求を受け付けるまたは拒否する方法」

印刷要求を取り消します。 

cancel コマンドを使って印刷要求を取り消します。

「印刷要求を取り消す方法」

特定のユーザーからの印刷要求を取り消します。 

特定のユーザーからの印刷要求を取り消します。 

「特定のユーザーからの印刷要求を取り消す方法」

印刷要求を別のプリンタに移動します。 

現在印刷待ち行列に入っている印刷要求があれば、移動するか取り消します。 

「印刷要求を別のプリンタに移動する方法」

印刷要求の優先順位を変更します。 

Change the priority of a print request in one of the following ways:

  • 印刷が終了していない印刷要求を停止する。

  • 印刷要求を待ち行列の先頭に移動する。

  • 印刷待ちのジョブの優先順位を変更する。

「印刷要求の優先順位を変更する方法」

ユーザーが印刷クライアントから印刷要求を出すと、その印刷要求は印刷サーバー上の待ち行列に追加されてからプリンタに送信されます。印刷要求が待ち行列に入っている間は、クライアントシステムからの要求で取り消したり、その状態情報を取得したりできます。LP 印刷サービスコマンドで印刷要求の移動、停止、再開または優先順位の変更などを実行するには、印刷サーバーにログインする必要があります。これらの動作によって、印刷サービスを絶えずスムーズに機能させることができます。

次の表は、lp -H コマンドを使用して印刷要求の優先順位を変更する値を示しています。

表 8–1 印刷要求の優先順位を変更する値

-H change-priority の値

説明 

hold

ユーザーが取り消すか、LP 印刷サービスに要求の印刷再開を指示するまで、印刷要求を停止します。 

resume

停止されていた印刷要求を待ち行列に戻します。印刷要求は、優先順位と待ち行列内での位置に従って印刷されます。すでに印刷中の印刷ジョブを停止すると、resume は印刷要求が次に印刷されるように待ち行列の先頭に配置します。

immediate

印刷要求を待ち行列の先頭に配置します。要求がすでに印刷中であれば、次の要求をすぐに印刷できるように、印刷中の要求を停止します。 

Procedure印刷要求の状態をチェックする方法

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

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

  2. プリンタと印刷要求の状態をチェックします。

    ここには、もっとも一般的に使用するオプションだけを掲載してあります。そのほかの有効なオプションについては、lpstat(1) のマニュアルページを参照してください。


    $ lpstat -o [list] | -u [user-list]
    -o list

    特定のプリンタの印刷要求の状態が表示されます。list には、1 つ以上のプリンタ名、プリンタクラス名、または印刷要求 ID を指定できます。

    list に、複数のプリンタ名、クラス名、および ID を指定するには、空白またはコンマで値を区切ります。空白を使用する場合は、値のリストを引用符で囲みます。

    list を指定しなければ、すべてのプリンタに送信された印刷要求の状態が表示されます。

    -u user-list

    特定のユーザーの印刷要求の状態が表示されます。user-list では複数のユーザー名を指定できます。

    このコマンドで複数のユーザーを指定するには、空白またはコンマでユーザー名を区切ります。空白を使用する場合は、名前のリストを引用符で囲みます。

    user-list を指定しなければ、すべてのユーザーの印刷要求の状態が表示されます。

    lpstat コマンドを使用して印刷要求の状態をチェックすると、印刷要求ごとに 1 行ずつ表示されます。

    各行には、左から右に、次の情報が表示されます。

    • 要求 ID

    • ユーザー

    • 出力バイト数

    • 要求日時

    • 「being filtered」など、要求に関する情報


例 8–4 印刷要求の状態をチェックする

次の例は、ユーザー fred にはプリンタ luna の待ち行列に入っている印刷要求が 1 つあることを示しています。


$ lpstat
luna-1    fred     1261    Jul 12 17:34

次の例は、ユーザー paul には待ち行列に入っている印刷要求がないことを示しています。


$ lpstat -u paul

次の例は、プリンタ moon の待ち行列に入っている印刷要求が 2 つあることを示しています。


$ lpstat -o moon
moon-78    root     1024   Jul 14 09:07
moon-79    root     1024   Jul 14 09:08

プリンタの印刷の有効化と無効化

enable コマンドおよび disable コマンドは、プリンタが待ち行列に入っている印刷要求を印刷するか停止するかを制御します。プリンタを使用不可にすると、プリンタは待ち行列内の要求の印刷を停止します。ただし、要求は待ち行列に追加され続けます。要求が待ち行列に追加されないようにするには、プリンタを設定して印刷要求を拒否させなければなりません。印刷要求の拒否については、「印刷要求の受け付けまたは拒否」を参照してください。

Solaris 印刷マネージャーを使用してプリンタを追加すると、プリンタは有効になり印刷要求を受け付けます。Solaris 印刷マネージャーは、それ以上のプリンタ管理は提供しません。

プリンタが使用不可になっている場合は、使用可能にしなければなりません。この状態は、プリンタ障害が起きると発生することがあります。プリンタを使用可能にすると、印刷サービスがそれ以後に印刷待ち行列の要求を拒否しても、待ち行列が空になるまで、印刷待ち行列からの要求が印刷されます。

次の図は、プリンタが使用不可になったときに印刷要求の処理が中断される様子を示しています。

図 8–1 プリンタが使用可能または使用不可になる場合

待ち行列内の要求を処理する、使用可能にしたプリンタと、待ち行列内の要求を処理しない、使用不可にしたプリンタを示す図。

Procedureプリンタを使用可能または使用不可にする方法

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

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

  2. 印刷要求の印刷を停止します。


    # disable [-c | -W] [-r "reason"] printer-name
    
    disable

    現在のジョブを取り消してから、プリンタを使用不可にします。現在のジョブは保存され、プリンタが使用可能になると、印刷が再開されます。

    -c

    現在のジョブを取り消してから、プリンタを使用不可にします。現在のジョブが後から印刷されることはありません。

    -W

    現在のジョブが終了するまで待ってからプリンタを使用不可にします。

    -r "reason"

    プリンタが使用不可になった理由をユーザーに示します。理由は格納され、ユーザーが lpstat -p コマンドを使用してプリンタの状態をチェックすると表示されます。

    printer-name

    印刷要求の印刷を停止するプリンタ名を指定します。


    注 –

    プリンタのクラスを使用可能または使用不可にすることはできません。個々のプリンタのみを使用可能または使用不可にすることができます。


  3. 印刷要求の印刷を開始します。


    # enable printer-name
    
  4. プリンタが使用可能になっていることを確認します。


    # lpstat -p printer-name
    

例 8–5 プリンタを使用可能または使用不可にする

次の例は、プリンタ luna 上の現在のジョブを停止し、あとから印刷できるように保存して、プリンタが印刷要求の印刷を停止した理由を表示する方法を示しています。


# disable -r "changing the form" luna

次の例は、プリンタ luna で印刷要求の印刷を開始する方法を示しています。


# enable luna
printer "luna" enabled

印刷要求の受け付けまたは拒否

accept および reject コマンドを使用すると、プリンタの印刷待ち行列をオンまたはオフにできます。

reject コマンドを使用すると、プリンタの印刷待ち行列がオフになります。新しい印刷要求は印刷サーバーの待ち行列に入れません。ただし、その待ち行列に入っているすべての印刷要求は、そのまま印刷されます。すでに待ち行列に入っている要求の印刷を停止したい場合は、そのプリンタを使用不可にしなければなりません。次の表は、acceptrejectenabledisable の各コマンドの機能を比較したものです。

表 8–2 acceptrejectenabledisable の印刷コマンドの機能

コマンド 

機能 

accept

印刷待ち行列に送信された印刷要求を受け付けます。 

disable

現在印刷待ち行列にある印刷要求を停止します。 

enable

印刷待ち行列にある要求を印刷します。 

reject

印刷待ち行列に送信された印刷要求を拒否します。 

印刷要求が拒否されると、LP 印刷サービスはその要求を出したユーザーにメッセージを送信します。そのメッセージは、指定されたプリンタが印刷要求を受け付けていないことを通知します。

また、要求を受け付けない理由をコマンド行から指定できます。その理由は、ユーザーがプリンタの待ち行列をチェックしようとするとユーザーのシステムに表示されます。次の図は、印刷待ち行列に拒否されたときに印刷要求の処理が中断される様子を示しています。

図 8–2 印刷待ち行列が要求を受け付けるか拒否する場合

印刷要求を受け付けて処理するプリンタと、印刷要求を拒否するプリンタを示す図。

Procedureプリンタへの印刷要求を受け付けるまたは拒否する方法

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

  2. プリンタの印刷要求の受け付けを停止します。


    # reject [-r "reason"] printer-name
    
    -r "reason"

    プリンタが印刷要求を拒否している理由をユーザーに示します。理由は格納され、ユーザーが lpstat -p コマンドを使用してプリンタの状態をチェックすると表示されます。

    printer-name

    印刷要求の受け付けを停止するプリンタ名を指定します。

    待ち行列に入れられた要求は、プリンタが使用可能になっている限りそのまま印刷されます。印刷を停止するようにプリンタを使用不可にする手順については、「プリンタを使用可能または使用不可にする方法」を参照してください。

  3. プリンタの印刷要求の受け付けを開始します。


    # accept printer-name
    
  4. プリンタの状態が、印刷要求を受け付けているか、拒否しているかをチェックします。


    $ lpstat -p printer-name
    

例 8–6 プリンタへの印刷要求を受け付けるまたは拒否する

次の例は、プリンタ luna の印刷要求の受け入れを停止する方法を示しています。


# reject -r "luna is down for repairs" luna
destination "luna" will no longer accept requests

次の例は、プリンタ luna が印刷要求を受け入れるように設定する方法を示しています。


# accept luna
destination "luna" now accepting requests

印刷要求の取り消し

cancel コマンドを使用して、印刷待ち行列にある印刷要求を取り消したり、印刷中のジョブを取り消したりできます。

cancel コマンドには、次の 3 つの使用方法があります。

cancel コマンドを使用すると、要求が取り消されたことと、待ち行列内の次の要求が印刷されることを示すメッセージが表示されます。

次の条件に当てはまるユーザーだけが、印刷要求を取り消すことができます。

特定の要求を取り消すには、その要求 ID を知る必要があります。要求 ID は必ず、プリンタ名、ハイフン、印刷要求番号から構成されています。たとえば、luna-185 となります。

印刷要求を出すと、要求 ID が表示されます。印刷要求 ID を忘れた場合は、-o printer オプションを指定して lpstat コマンドを使用すると ID を調べることができます。

Procedure印刷要求を取り消す方法

  1. ほかのユーザーの印刷要求を取り消すには、スーパーユーザーまたは lp になるか、同等の役割になります。

  2. 取り消す印刷要求の要求 ID を調べます。


    # lpstat 
    

    詳細については、「印刷要求の状態をチェックする方法」を参照してください。

  3. 印刷要求を取り消します。


    # cancel request-id | printer-name
    
    request-id

    取り消す印刷要求の要求 ID を指定します。このコマンドで複数の要求 ID を指定できます。要求 ID を区切るには空白またはコンマを使用します。空白を使用する場合は、要求 ID のリストを引用符で囲みます。

    printer-name

    現在印刷中の印刷要求を取り消したいプリンタを指定します。

    このコマンドで複数のプリンタ名を指定できます。プリンタ名を区切るには空白またはコンマを使用します。空白を使用する場合は、プリンタ名のリストを引用符で囲みます。

  4. 印刷要求が取り消されていることを確認します。


    $ lpstat -o printer-name
    

例 8–7 印刷要求の取り消し

次の例は、luna-3luna-4 の印刷要求を取り消す方法を示しています。


$ cancel luna-3 luna-4
request "luna-3" cancelled
request "luna-4" cancelled

次の例は、プリンタ luna 上で現在印刷中の印刷要求を取り消す方法を示しています。


# cancel luna
request "luna-9" cancelled

Procedure特定のユーザーからの印刷要求を取り消す方法

  1. ほかのユーザーの印刷要求を取り消すには、スーパーユーザーまたは lp になるか、同等の役割になります。

  2. 特定のユーザーからの印刷要求を取り消します。


    $ cancel -u user-list [printer-name]
    -u user-list

    特定のユーザーの印刷要求を取り消します。

    user-list では複数のユーザー名を指定できます。ユーザー名を区切るには空白またはコンマを使用します。空白を使用する場合は、名前のリストを二重引用符で囲みます。

    printer-name

    指定したユーザーの印刷要求を取り消すプリンタを指定します。

    printer-name では複数のプリンタ名を指定できます。プリンタ名を区切るには空白またはコンマを使用します。空白を使用する場合は、プリンタ名のリストを引用符で囲みます。

    printer-name を指定しなかった場合、指定されたユーザーの印刷要求がすべてのプリンタ上で取り消されます。


例 8–8 特定のユーザーからの印刷要求を取り消す

次の例は、プリンタ luna 上でユーザー george から依頼されたすべての印刷要求を取り消す方法を示しています。


# cancel -u george luna
request "luna-23" cancelled

次の例は、ユーザー george から依頼されたすべての印刷要求をすべてのプリンタ上で取り消す方法を示しています。


# cancel -u george
request "asteroid-3" cancelled
request "luna-8" cancelled

印刷要求の移動

プリンタの使用方法を変更する計画がある場合や、プリンタの使用を中止する場合は、LP 印刷サービスを設定して新たな印刷要求を拒否しなければなりません。さらに、現在印刷待ち行列に入っている要求があれば、移動するか取り消すかする必要があります。lpmove コマンドを使用すると、個々の印刷要求またはすべての印刷要求を別のローカルプリンタに移動できます。

要求 ID は印刷要求を移動しても変更されないので、ユーザーは引き続き各自の要求を調べることができます。新しく指定したプリンタでは満たせない要件 (特定のファイル内容形式やフォームなど) を持つ印刷要求は移動できません。この種の印刷要求は取り消さなければなりません。

Procedure印刷要求を別のプリンタに移動する方法

あるプリンタから別のプリンタにすべての要求を移動する場合は、要求 ID がわからなくてもかまいません。ただし移動する前に、該当する印刷要求の数を調べておきます。

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

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

  2. 元のプリンタ上で印刷要求の要求 ID を一覧表示します。


    # lpstat -o printer-name1
    
  3. 宛先プリンタが印刷要求を受け付けているかどうかをチェックします。


    # lpstat -a printer-name2
    

    -a printer-name2 と指定すると、印刷送信先が要求を受け付けているかどうかが報告されます。

  4. 元のプリンタから宛先プリンタにすべての印刷要求を移動します。


    # lpmove printer-name1 printer-name2
    
    printer-name1

    すべての印刷要求の移動元となるプリンタ名を指定します。

    printer-name2

    すべての印刷要求の移動先となるプリンタ名を指定します。

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

    一部の要求を宛先プリンタ上で印刷できない場合は、元のプリンタの待ち行列内に残ります。要求 ID を使用すると、lpmove コマンドで特定の印刷要求を別のプリンタに移動することもできます。

  5. 元のプリンタ上で印刷要求の受け付けを開始します。

    すべての印刷要求を別のプリンタに移動すると、lpmove コマンドは元のプリンタへの印刷要求の受け付けを自動的に停止します。そのプリンタへの新しい印刷要求の受け付けを開始したい場合は、この手順が必要です。


    # accept printer-name1
    
  6. 移動元のプリンタの待ち行列に残っている印刷要求をチェックします。


    # lpstat -o printer-name1
    

    すべての指定した印刷要求が移動先のプリンタ待ち行列に移動されたことを確認します。


    # lpstat -o printer-name2
    

例 8–9 印刷要求を別のプリンタに移動する

次の例は、プリンタ luna からプリンタ terra に印刷要求を移動する方法を示します。その後、移動元プリンタ luna に印刷要求の受け付けを再開するよう指示します。


# lpmove luna terra
# accept luna

印刷要求の優先順位の変更

印刷要求を出し終わったら、その優先順位を印刷サーバーの待ち行列内で次のように変更できます。

Procedure印刷要求の優先順位を変更する方法

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

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

  2. 優先順位を変更したい印刷要求の要求 ID を決めます。


    # lpstat
    

    詳細については、「印刷要求の状態をチェックする方法」を参照してください。

  3. 印刷要求の優先順位を変更します。


    # lp -i request-id -H change-priority
    
    -i request-id

    変更したい印刷要求の要求 ID を指定します。

    このコマンドで複数の要求 ID を指定できます。要求 ID を区切るには空白またはコンマを使用します。空白を使用する場合は、要求 ID のリストを引用符で囲みます。

    -H change-priority

    印刷要求の優先順位を変更する方法として、次の 3 つのどれかを指定します。 holdresume、または immediate です。

    change-priority の有効値については、表 8–1 を参照してください。

    また、lp-q コマンドを使用すると、指定した印刷要求の優先順位を変更できます。優先順位は、最上位の 0 から最下位の 39 までの間で変更できます。


例 8–10 印刷要求の優先順位を変更する

次の例は、要求 ID が asteroid-79 の印刷要求を優先順位 1 に変更する方法を示しています。


# lp -i asteroid-79 -q 1