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

LP 印刷スケジューラの管理 (作業マップ)

作業 

説明 

参照先 

プリンタの状態をチェックします。 

lpstat コマンドを使用すると、すべてのプリンタまたは特定のプリンタの状態を調べることができます。このコマンドでは、使用できるプリンタを特定したり、それらのプリンタの特性を確認したりできます。

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

印刷スケジューラを停止します。 

印刷スケジューラが印刷要求の受け入れを停止した場合、印刷スケジューラを停止し、再起動しなければならないことがあります。 

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

印刷スケジューラを再起動します。 

印刷スケジューラを停止した場合は、プリンタが要求を受け入れられるようにするため、印刷スケジューラを再起動する必要があります。 

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

オプションを使用して、印刷スケジューラを起動します。 

Solaris 管理機能 (SMF) において印刷スケジューラにオプションを渡すには、2 つの方法があります。1 回の呼び出し用にオプションを設定するか、システムブート後もオプションが残るように設定できます。 

「1 回の呼び出しの間のみ有効な印刷オプション値を設定する方法」

「システムリブート後にも有効なプリンタオプション値を設定する方法」

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

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

PPD ファイルを使用して印刷待ち行列を作成したり変更したりした場合、その PPD ファイルが lpstat 出力に表示されます。印刷待ち行列の作成時に PPD ファイルを指定しなかった場合、lpstat 出力の PPD エントリは none になります。

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

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

  2. プリンタの状態をチェックします。

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


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

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

    -p printer-name

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

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

    -D

    指定した printer-name の説明 (備考欄) が表示されます。

    -l

    指定した printer-name の特性が表示されます。

    -t

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


例 8–1 プリンタの状態をチェックする

次の例は、システムのデフォルトプリンタを表示する方法を示しています。


$ lpstat -d
system default destination: luna

次の例は、プリンタ luna の状態を表示する方法を示しています。


$ lpstat -p luna
printer luna is idle. enabled since Jul 12 11:17 2001. available.

次の例は、プリンタ asteroid とプリンタ luna の説明 (備考欄) を表示する方法を示しています。


$ lpstat -p "asteroid luna" -D
printer asteroid faulted. enabled since Jan 5 11:35 2004. available.
unable to print: paper misfeed jam

Description: Printer by break room
printer luna is idle. enabled since Jan 5 11:36 2004. available.
Description: Printer by server room.

次の例は、プリンタ luna の特性を表示する方法を示しています。


$ lpstat -p luna -l
printer luna is idle. enabled since Thu Jul 12 15:02:32 PM PDT
        Form mounted: 
        Content types: postscript
        Printer types: PS
        Description:
        Connection: direct
        Interface: /usr/lib/lp/model/standard
				PPD: none
        After fault: continue
        Users allowed:
                (all)
        Forms allowed:
                (none)
        Banner not required
        Character sets:
							 (none)
				Default pitch:
        Default page size: 80 wide 66 long
        Default port settings:

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

印刷スケジューラ lpsched は、印刷サーバー上の印刷要求を処理します。ただし、印刷スケジューラがシステム上で動作を停止したために、印刷要求の受け付けや印刷が停止されることがあります。lpadmin コマンドは、ローカルプリンタがシステムに追加されると、自動的に lpsched サービスを有効にし、すべてのローカルプリンタが削除されると、サービスを無効にします。次の手順は、印刷スケジューラを停止し、再起動する方法を解説します。印刷スケジューラが動作を停止するときに印刷要求が印刷中だった場合は、印刷スケジューラを再起動すると、その印刷要求全体が印刷されます。

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

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

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

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


    # svcs application/print/server
    

    また、lpstat -r コマンドを使用しても印刷スケジューラが動作しているかどうかを確認できます。

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

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


    # svcadm disable application/print/server
    

    また、lpshut コマンドを使用しても印刷スケジューラを停止できます。

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

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

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

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


    # svcs application/print/server
    

    また、lpstat -r コマンドを使用しても印刷スケジューラが動作しているかどうかを確認できます。

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

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


    # svcadm enable application/print/server
    

    また、/usr/lib/lpsched コマンドを使用しても印刷スケジューラを起動できます。印刷スケジューラを /usr/lib/lpsched コマンドを使用して起動する方法と、svcadm enable application/print server コマンドを使用して起動する方法の違いについては、「オプションを使用して印刷スケジューラを起動する」を参照してください。

オプションを使用して印刷スケジューラを起動する

SMF を使用して印刷スケジューラにオプションを渡すには、2 つの方法があります。

Procedure1 回の呼び出しの間のみ有効な印刷オプション値を設定する方法

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

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

  2. オプション値を設定します。


    # /usr/lib/lpsched option value
    
    -f num_filters

    印刷サーバーで並行的に実行可能な、スローフィルタの数を指定します。

    -n num_notifiers

    印刷サーバーで並行的に実行可能な、通知プロセスの数を指定します。

    -p fd_limit

    lpsched プロセスのファイル記述子の資源制限を指定します。

    -r reserved_fds

    スケジューラが、高負荷の状況下における内部通信に予約したファイル記述子の数を指定します。


例 8–2 1 回の呼び出しの間のみ有効な印刷オプション値を設定する

この例では、フィルタの数を 2 に設定する方法を示します。残りのオプションでは、印刷スケジューラ内のデフォルトを使用します。


# /usr/lib/lpsched -f 2

印刷スケジューラ内のデフォルトオプションを使用するには、/usr/lib/lpsched コマンドをオプションなしで実行します。

/usr/lib/lpsched コマンドを使用して印刷スケジューラを起動する場合は、svccfg コマンドで設定された値は使用されません。


Procedureシステムリブート後にも有効なプリンタオプション値を設定する方法

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

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

  2. 1 つまたはすべてのオプションを設定します。


    # svccfg
    svc:> select svc:/application/print/server
    svc:/application/print/server> setprop property = value
    .
    .
    .
    svc:/application/print/server> quit
    

    設定したいオプションごとに、setprop property = value コマンドを各行で繰り返します。

  3. 印刷サーバーの現在の属性値を表示し、オプションが正しく設定されているかどうかを確認します。


    # svcprop svc:/application/print/server
    
  4. 印刷スケジューラを再起動します。

    • 印刷スケジューラが実行されていない場合は、次のコマンドを使用します。


      # svcadm refresh svc:/application/print/server
      # svcadm enable svc:/application/print/server
      
    • 印刷スケジューラが実行されている場合は、次のコマンドを使用します。


      # svcadm refresh svc:/application/print/server
      # svcadm restart svc:/application/print/server
      

    印刷スケジューラが実行されているかどうかを確認するには、svcs application/print/server コマンドを実行します。


例 8–3 システムリブート後にも有効なプリンタオプション値を設定する

この例では、フィルタの数を 1 に設定する方法を示します。このオプションは、システムをリブートしたあと、または印刷スケジューラを再起動したあとにも有効です。


# svccfg
svc:> select svc:/application/print/server
svc:/application/print/server> setprop lpsched/num_filters = count: 1
svc:/application/print/server> quit

この例では、すべてのオプションを設定する方法を示します。


# svccfg
svc:> select svc:/application/print/server
svc:/application/print/server> setprop lpsched/num_filters = count: 1
svc:/application/print/server> setprop lpsched/num_notifiers = count: 1
svc:/application/print/server> setprop lpsched/fd_limit = count: 4096
svc:/application/print/server> setprop lpsched/reserved_fds = count: 2
svc:/application/print/server> quit

次に、すべてのオプションを設定するスクリプト例を示します。


#!/bin/ksh

svccfg <<-EOF
select svc:/application/print/server
setprop lpsched/num_filters = count: 1
setprop lpsched/num_notifiers = count: 1
setprop lpsched/fd_limit = count: 4096
setprop lpsched/reserved_fds = count: 2

EOF