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

アイドル状態になった (ハングした) プリンタの問題を解決する方法

この作業には、プリンタがアイドル状態であってはならないのにアイドル状態になるときに使用する多数の手順が含まれています。通常は各手順を順番に試しますが、順番どおりでなくてもかまいません。

プリンタの準備ができているかチェックするには

  1. プリンタ状態情報を表示します。


    # lpstat -p printer-name
    

    表示される情報は、プリンタがアイドル状態かアクティブ状態か、使用可能か使用不可か、または印刷要求を利用できるか受け付けていないかを示します。すべて正常と思われる場合は、この節の他の手順に進んでください。lpstat コマンドを実行できない場合は、「LP 印刷サービスのハングを解除する方法」を参照してください。

  2. プリンタが利用できない (要求を受け付けていない) 場合は、プリンタが要求を受け付けるようにします


    # accept printer-name
    

    プリンタは、その印刷待ち行列に要求を受け付け始めます。

  3. プリンタが使用不可になっている場合は、再び使用可能にします。


    # enable printer-name
    

    このコマンドでは、待ち行列にある要求を処理するように、プリンタを再び使用可能にします。

印刷のフィルタリングをチェックするには

lpstat -o コマンドを使用して、印刷のフィルタリングをチェックします。


$ lpstat -o luna
luna-10           fred         1261   Mar 12 17:34 being filtered
luna-11           iggy         1261   Mar 12 17:36 on terra
luna-12           jack         1261   Mar 12 17:39 on terra
$

待機している最初の要求がフィルタリングされているかどうかを調べます。上の例のような出力になる場合は、ファイルがフィルタリングされています。プリンタはハングせず、要求の処理に少し時間がかかっているだけです。

プリンタ障害の後に印刷を再開するには

  1. プリンタ障害に関するメッセージがある場合は、その障害を解決してください。

    プリンタ障害の警告がどのように指定されているかに応じて、メッセージを電子メールで root に送らせるか、root がログインした端末に書き出すことができます。

  2. プリンタを再び使用可能にします。


    # enable printer-name
    

    プリンタ障害によって要求がブロックされた場合は、このコマンドで強制的に再試行します。このコマンドが動作しない場合は、この節の他の手順を続行します。

ローカル待ち行列で停止している印刷要求をリモートプリンタに送信するには

  1. 印刷クライアント上で、プリンタサーバーへの印刷要求を、それ以上待ち行列に入れないようにします。


    # reject printer-name
    
  2. 印刷クライアント上で、プリンタサーバーに ping 要求 (存在をチェックする要求) を送信します。


    print_client# ping print_server
    print_server is alive

    print_server not available」というメッセージが表示される場合は、ネットワークに問題があります。

  3. 問題を解決したら、新しい印刷要求を待ち行列に入れられるようにします。


    # accept printer-name
    
  4. 必要であれば、再びプリンタを使用可能にします。


    # enable printer-name
    

プリンタサーバーの待ち行列で停止する印刷クライアントからの印刷要求を使用可能にするには

  1. プリンタサーバー上で、印刷クライアントからプリンタサーバーへの印刷要求を、それ以上待ち行列に入れないようにします。


    # reject printer-name
    
  2. lpsched ログファイルを表示します。


    # more /var/lp/logs/lpsched
    

    表示される情報を参考にして、印刷クライアントからプリンタサーバーへの印刷要求が印刷されない原因を正確に把握できます。

  3. 問題を解決したら、新しい印刷要求を待ち行列に入れられるようにします。


    # accept printer-name
    
  4. 必要であれば、プリンタサーバー上で再びプリンタを使用可能にします。


    # enable printer-name