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

第 9 章 ネットワーク上のプリンタの管理 (作業)

この章では、IPP、RFC-1179、および SMB ネットワークプロトコルの使用時にプリンタをリモート管理する方法について説明します。IPP を使用したプリンタ設定の計画については、第 3 章ネットワーク印刷サービスの設定 (作業)を参照してください。

この章の内容は次のとおりです。

印刷サービスとプリンタの概要については、第 1 章Oracle Solaris オペレーティングシステムでの印刷の概要を参照してください。

インターネット印刷プロトコル使用時のネットワーク上のプリンタの管理 (作業マップ)

表 9–1 IPP を使用したプリンタの管理: 作業マップ

作業 

説明 

参照先 

IPP の使用時に、プリンタの状態を確認し、プリンタに関する情報を取得します。 

IPP の使用時にプリンタの状態を確認するには、lpset コマンドを使用します。

「IPP の使用時にプリンタに関する情報を取得する方法」

IPP の使用時に、リモート印刷要求を移動します。 

IPP の使用時に印刷ジョブを新しい送信先に移動するには、lpmove コマンドを使用します。

「IPP の使用時に印刷待ち行列の間でリモート印刷要求を移動する方法」

IPP の使用時に、リモート印刷要求を変更します。 

IPP の使用時にリモート印刷要求を変更するには、lp コマンドを使用します。

「IPP の使用時にリモート印刷要求を変更する方法」

IPP の使用時に、プリンタを共有します。 

IPP の使用時にプリンタを共有するには、デフォルトのファイル構成を変更する必要があります。 

「IPP の使用時にプリンタを共有する」

IPP 認証機構をオンに設定します。 

一部の Oracle Solaris リリースでは、uri-path と操作の組み合わせによってはクライアント認証が必要です。

「IPP 認証機構をオンに設定する」

IPP の使用時に、印刷待ち行列を受け入れることができるように認証を設定します。 

uri パスに対して操作が処理されるようにするには、適切な認証情報が必要です。

「IPP の使用時に印刷待ち行列を受け入れることができるように認証を設定する」

IPP AuthUser ファイルにユーザーを追加します。

IPP AuthUser ファイルにユーザーを追加するには、htpasswd コマンドを使用して httpd-standalone-ipp.conf ファイルを変更する必要があります。

「 IPP AuthUser ファイルにユーザーを追加する方法」

ProcedureIPP の使用時にプリンタに関する情報を取得する方法

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

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

  2. IPP の使用時にプリンタに関する情報を取得するには、次のように入力します。


    # lpset -a printer-uri-supported=ipp://server/printers/server queue
    
  3. プリンタのリターン出力を確認するには、次のように入力します。


    # lpstat -p test -l
    

例 9–1 IPP の使用時にプリンタに関する情報を取得する


# lpset -a printer-uri-supported=ipp://server/printers/test test
# lpstat -p test -l
printer test disabled since Fri Nov 03 11:48:53 2006. available.
        new printer
        Form mounted:
        Content types: application/postscript
        Description:
        Connection:
        Interface: /usr/lib/lp/model/uri
        PPD: /usr/lib/lp/model/ppd/system/foomatic \
/HP/HP-Color_LaserJet_4600-Postscript.ppd.gz
        On fault: write root
        After fault: continue
        Users allowed:
                (all)
        Forms allowed:
                (none)
        Media supported:
                Letter
                A4
                11x17
                A3
                A5
                B5
                Env10
                EnvC5
                EnvDL
                EnvISOB5
                EnvMonarch
                Executive
                Legal
        Banner required
        Character sets:
                (none)
        Default pitch:
        Default page size:
        Default port setting:
        Options:

ProcedureIPP の使用時に印刷待ち行列の間でリモート印刷要求を移動する方法

IPP の使用中に、リモートの印刷ジョブを印刷待ち行列の間で移動するには、lpmove コマンドを使用します。印刷ジョブは、要求 ID または送信先を指定することによって、新しい送信先に移動できます。

  1. IPP の使用時に、ある印刷待ち行列から別の印刷待ち行列へリモート印刷要求を移動するには、次のコマンドを入力します。


    $ lpmove request-id old-destination new-destination
    

例 9–2 要求 ID を指定してリモート印刷要求を移動する

次の例は、要求 ID を使用してリモート印刷要求 luna-185 を新しい送信先プリンタ lucille に移動する方法を示しています。


$ lpmove luna-185 lucille


例 9–3 送信先を指定してリモート印刷要求を移動する

次の例は、プリンタ luna のすべての印刷要求を新しい送信先プリンタ lucille に移動する方法を示しています。


$ lpmove luna luciille

ProcedureIPP の使用時にリモート印刷要求を変更する方法

IPP の使用時に、lp コマンドを使用してさまざまな作業を実行できます。lp コマンドの使用については、lp(1) のマニュアルページを参照してください。

  1. リモートの印刷ジョブを変更するには、lp コマンドを適切なコマンドオプションとともに使用します。


    $ lp [-d] [-H] [-i] [-n] [-o]
    
    -d

    印刷要求の送信先を指定します。

    -H

    特殊処理を指定します。特殊処理の値に従って要求を印刷します。

    -i

    要求 ID を指定します。

    -n

    部数を指定します。このオプションは数字で指定してください。デフォルト値は 1 です。

    -o

    プリンタに依存するオプションを指定します。


例 9–4 以前に保留された印刷要求を送信する

次の例は、以前に保留された印刷要求をプリンタ lucille に送信する方法を示しています。


$ lp -d lucille -H hold /etc/motd


例 9–5 要求した部数を変更する

次の例は、要求 ID lucille-233 で要求されたコピー枚数を変更する方法を示しています。


$ lp -i lucille-233 -n 5


例 9–6 両面印刷機能の有効化と解除

次の例は、指定された要求 ID に対して両面印刷機能を有効化して解除する方法を示しています。


$ lp -i lucille-233 -o Duplex=DuplexNoTumble -H resume

IPP の使用時にプリンタを共有する

Oracle Solaris OS をインストールすると、IPP 待機サービスは、最初の印刷待ち行列を追加するときに、印刷サーバーで自動的に有効になります。また、最後の印刷待ち行列が削除されると、待機サービスは無効になります。Oracle Solaris 10 リリースのデフォルト設定は、かなり甘い設定になっています。セキュリティーに問題がある場合は、デフォルトの設定を変更して、より厳しい設定にすることもできます。認証を受けずにサービスでサポートされる IPP 操作は、もっとも破壊度の低い操作に制限されるべきです。

操作には次のようなものがあります。

IPP 認証機構

IPP は HTTP の階層の上に置かれています。このため、このプロトコルは、HTTP および Apache ソフトウェアに組み込まれている認証機構を使用します。特定の Oracle Solaris リリースのオペレーティングシステムに付属するデフォルト設定では、これらの認証機構が使用されません。

たとえば、クライアントシステムで一般的に使用される printer-uri の形式は次のとおりです。


ipp://server/printers/queue

Windows を実行しているシステムで印刷する場合は、次の構文を使用して URI を指定します。


http://server:631/printers/queue

IPP 認証機構をオンに設定する

認証を行うには、次のように accept コマンドを使用します。


$ accept ipp://server/admin/queue

たとえば、サーバー noreaster 上の印刷待ち行列 masterly の認証を行うには、次のように入力します。


$ accept ipp://noreaster/admin/masterly

認証を求めるプロンプトが表示されます。

uri パスに対して操作が処理されるようにするために、適切な認証情報を入力します。

次に例を示します。


system% accept ipp://printing/printers/wspe
accept: ipp://printing/printers/wspe: operation-not-supported
system% accept ipp://printing/admin/wspe
passphrase for user-name to access ipp://printing/admin/wspe:
accept: ipp://printing/admin/wspe: not-authorized
system%

注 –

IPP のデフォルトの設定では、その uri パスに対して操作が許可されていないため、次のコマンドは失敗します。


$ accept ipp://server/printers/queue

IPP の使用時に印刷待ち行列を受け入れることができるように認証を設定する

IPP の使用時に印刷待ち行列を受け入れることができるように認証を設定するには、/etc/apache/httpd-standalone-ipp.conf ファイルを編集します。

次のエントリを追加して認証を設定します。

例については、/etc/apache/httpd-standalone-ipp.conf ファイルを参照してください。

Procedure IPP AuthUser ファイルにユーザーを追加する方法

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

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

  2. htpasswd コマンドを使用して、/etc/apache/httpd-standalone-ipp.conf ファイルを更新します。


    # /usr/sfw/bin/htpasswd /etc/ipp-users user-name
    
  3. ユーザーが追加されたことを /etc/ipp-users ファイルで確認します。


    # grep user-name /etc/ipp-users
    

RFC-1179 印刷プロトコル使用時のネットワーク上のプリンタの管理 (作業マップ)

表 9–2 RFC-1179 印刷プロトコルを使用したプリンタの管理: 作業マップ

作業 

説明 

参照先 

RFC-1179 プロトコルを使用して、印刷要求をカスケードします。 

この手順は、印刷ホストを使用して印刷要求をカスケードする場合に、印刷スケジューラサービスへの依存関係を解消するために使用します。 

「RFC-1179 プロトコルを使用して印刷要求をカスケードする方法」

RFC-1179 ネットワークプロトコルの使用時にプリンタを共有します。 

RFC-1179 印刷プロトコルの使用時にプリンタを共有するには、ネットワーク待機サービスの有効化と無効化を行います。 

「ネットワーク印刷サービスの有効化、無効化、および再起動 (作業マップ)」

ProcedureRFC-1179 プロトコルを使用して印刷要求をカスケードする方法

RFC-1179 プロトコルリスナーは、FMRI svc:/application/print/rfc1179 (in.lpd) で表されます。デフォルトでは、この FMRI は印刷スケジューラサービス svc:/application/print/server に依存しており、ホストが印刷スケジューラサービスを実行している場合にのみ実行されます。

通常、RFC-1179 リスナーは、印刷スケジューラが実行されていなければ必要ありません。ただし、ホストを使用して印刷要求をカスケードする場合は、印刷スケジューラサービスへの依存関係を解消しなければなりません。

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

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

  2. スケジューラサービスへの依存関係を解消します。


    # cat <<EOF | svccfg
    >			select application/print/rfc1179
    >			delpg lpsched
    >			end
    >			EOF
    
  3. 依存関係を解消したら、次のコマンドを実行し、変更を即座に有効にします。


    # svcadm refresh application/print/rfc1179
    

SMB プロトコル使用時のネットワーク上のプリンタの管理 (作業マップ)

Oracle Solaris OS を実行しているサービスが、ネットワーク上にある Windows システムも含むさまざまなシステムに、ファイルサービスと印刷サービスを提供することがよくあります。Windows システムだけが存在しているネットワークでは、通常は SMB プロトコルを使用してプリンタを共有します。Oracle Solaris OS では、SMB のサーバー側サポートが Samba を介して提供され、サービス管理機能 (SMF) によって管理されます。クライアント側の印刷サポートも Samba を介して使用可能になります。Windows でホストされているプリンタにアクセスするには、ローカル印刷待ち行列を設定する必要があります。これが必要になるのは、UNIX と Windows では印刷モデルが異なるためです。

SMB サービスは /etc/sfw/smb.conf ファイルの内容によって制御されます。Oracle Solaris をシステムにインストールすると、このファイルのサンプル /etc/sfw/smb.conf-example が提供されます。SMB プロトコルを使用してプリンタを共有するには、まずサービスを有効にする必要があります。

このサービスの使用を開始するには、次の手順に従います。