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

プリンタと印刷スケジューラの管理

この節では、プリンタと印刷スケジューラを管理するために日常的に行う作業について説明します。

プリンタとプリンタアクセスの削除

プリンタの交換が必要な場合や、プリンタを別の場所に移動したい場合は、印刷サーバーから物理的に削除する前に、LP 印刷サービスからプリンタ情報を削除しなければなりません。また、プリンタ上の現在の印刷要求がすべて印刷されるか、別のプリンタに移動して印刷されるかを確認する必要があります。

プリンタ情報を印刷サーバーから削除するだけでなく、印刷クライアントまたはネットワークネームサービスからも削除する必要があります。印刷サーバーからローカルプリンタを削除する場合は、印刷クライアントまたはネットワークネームサービスからリモートプリンタエントリを削除する必要があります。プリンタを別の印刷サーバーに移動する場合は、印刷クライアントまたはネットワークネームサービスから古いリモート印刷エントリを削除し、リモートプリンタへのアクセスを新しい位置に追加する必要があります。

ローカルとリモートのプリンタの削除方法については、「プリンタとリモートプリンタへのアクセスを削除する方法」を参照してください。Admintool を使用して、ローカルまたはリモートプリンタを削除できます。ただし、Admintool では、待ち行列に入っている印刷要求を別のプリンタに移動できません。

プリンタとリモートプリンタへのアクセスを削除する方法

  1. 削除したいプリンタへアクセスできる印刷クライアントに、スーパーユーザーまたは lp としてログインします。

  2. 印刷クライアントからプリンタに関する情報を削除します。

    print-client# lpadmin -x printer-name
    
    -x

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

    printer-name

    削除したいプリンタ名 

    指定したプリンタに関する情報が、印刷クライアントの /etc/lp/printers ディレクトリから削除されます。

  3. 印刷クライアントが同じ印刷サーバー上の別のプリンタを使用しない場合は、その印刷サーバーに関する情報を印刷クライアントから削除します。

    print-client# lpsystem -r print-server
    
    -r

    指定した印刷サーバーを削除する 

    print-server

    削除したい印刷サーバー名 

    印刷サーバーが、印刷クライアントの /etc/lp/Systems ファイルから削除されます。

  4. プリンタへアクセスできる各印刷クライアント上で、手順 2 から 手順 3 までを繰り返します。

  5. 印刷サーバーにスーパーユーザーまたは lp としてログインします。

  6. プリンタ上で印刷要求を停止します。

    print-server# reject printer-name
    
    reject printer-name
    

    指定したプリンタの印刷要求を拒否する 

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

  7. プリンタを停止します。

    print-server# disable printer-name
    

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

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

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

  9. プリンタを印刷サーバーから削除します。

    print-server# lpadmin -x printer-name
    

    プリンタの構成情報が、印刷サーバーの /etc/lp/printers ディレクトリから削除されます。

  10. 削除したばかりのプリンタを使用していた印刷クライアントが、まだ印刷サーバー上で別のプリンタを使用中でなければ、その印刷クライアントに関する情報を削除します。

    print-server# lpsystem -r print-client1 [,print-client2...]
    
    -r

    指定した印刷サーバーを削除する 

    print-client

    印刷サーバーから削除したい印刷クライアント名。このコマンドで複数の印刷クライアントを指定できる。印刷クライアント名を区切るには空白またはコンマを使用する。空白を使用する場合は、印刷クライアントのリストを引用符で囲む 

    指定した印刷クライアントが、印刷サーバーの /etc/lp/Systems ファイルから削除されます。

  11. プリンタ情報が削除されていることを確認します。

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

      print-client$ lpstat -p printer-name -l
      

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

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

      print-server$ lpstat -p printer-name -l
      

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

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

次の例では、コマンドは印刷クライアント terra と印刷サーバー jupiter からプリンタ luna を削除し、印刷クライアント terra を印刷サーバーから削除します。

terra# lpadmin -x luna
Removed "luna".
terra# lpstat -p luna -l 
jupiter# lpadmin -x luna
jupiter# lpsystem -r terra
Removed "terra".
jupiter# lpstat -p luna -l 

プリンタの状態のチェック

多くの日常的なプリンタ管理作業には、LP 印刷サービスや特定のプリンタの状態に関する情報が必要です。たとえば、どのプリンタが使用できるかを判別し、そのプリンタの特性を検査しなければならない場合があります。lpstat コマンドを使用すると、LP 印刷サービスや特定のプリンタに関する状態情報を調べることができます。

プリンタの状態をチェックする方法

  1. ネットワーク上の任意のシステムにログインします。

  2. lpstat コマンドを使用してプリンタの状態をチェックします。

    ここには、最も一般的に使用するオプションのみを掲載してあります。他のオプションについては、lpstat(1) のマニュアルページを参照してください。

    $ lpstat [-d] [-p printer-name [-D] [-l]] [-t]
    -d
    

    システムのデフォルトプリンタが表示される 

    -p printer-name
    

    プリンタが使用可能かアイドル状態か、いつ使用可能または使用不可になったか、および印刷要求を受け付けているかどうかが表示される。 

    このコマンドで複数の印刷クライアントを指定できる。印刷クライアント名を区切るには空白またはコンマを使用する。空白を使用する場合は、印刷クライアントのリストを引用符で囲む。printer-name を指定しなければ、すべてのプリンタの状態が表示される

    -D
    

    指定した printer-name の記述が表示される

    -l
    

    指定した printer-name の特性が表示される

    -t
    

    すべてのプリンタの状態、使用可能かどうか、印刷要求を受け付けているかどうかなど、LP 印刷サービスに関する状態情報が表示される 

例 - プリンタの状態をチェックする

次の例では、コマンドはシステムのデフォルトプリンタ名を表示します。

$ lpstat -d
system default destination: luna

次の例では、コマンドはプリンタ luna の状態を表示します。

$ lpstat -p luna
printer luna is idle. enabled since Jun 16 10:09 1998. available.

次の例では、コマンドはプリンタ asteroidluna の記述を表示します。

$ lpstat -p "asteroid luna" -D
printer asteroid faulted. enabled since Jun 16 10:09 1998. available.
	unable to print: paper misfeed jam
 
	Description: Printer by break room.
printer luna is idle. enabled since Jun 16 10:09 1998. available.
	Description: Printer by server room.

次の例では、コマンドはプリンタ luna の特性を表示します。

$ lpstat -p luna -l
printer luna is idle. enabled since Jun 16 10:11 1998. 
available.
	Content types: any
	Printer types: unknown
	Description: Printer by server room.
	Users allowed:
		(all)
	Forms allowed:
		(none)
	Banner not required
	Character sets:
		(none)
	Default pitch:
	Default page size:

印刷スケジューラの再起動

印刷スケジューラ lpsched は、印刷サーバー上の印刷要求を処理します。ただし、印刷スケジューラがシステム上で動作を停止したために、印刷要求の受け付けや印刷が停止されることがあります。

印刷スケジューラを再起動するには、/usr/lib/lp/lpsched コマンドを使用できます。印刷スケジューラが動作を停止するときに印刷要求が印刷中だった場合は、印刷スケジューラを再起動すると、その印刷要求全体が印刷されます。

印刷スケジューラを停止する方法

  1. 印刷サーバーにスーパーユーザーまたは lp としてログインします。

  2. 印刷スケジューラが動作しているかどうかをチェックします。

    # lpstat -r
    

    印刷スケジューラが動作していない場合は、「scheduler is not running」というメッセージが表示されます。

  3. 印刷スケジューラが動作している場合は停止します。

    # /usr/lib/lp/lpshut
    

印刷スケジューラを再起動する方法

  1. 印刷サーバーにスーパーユーザーまたは lp としてログインします。

  2. 印刷スケジューラが動作しているかどうかをチェックします。

    # lpstat -r
    

    印刷スケジューラが動作していない場合は、「scheduler is not running」というメッセージが表示されます。

  3. 印刷スケジューラが動作していない場合は起動します。

    # /usr/lib/lp/lpsched