Red Hat Training

A Red Hat training course is available for RHEL 8

10.10. cups-browsed を使用してリモートプリントサーバーのプリンターをローカルに統合する

cups-browsed サービスは、DNS サービス検出 (DNS-SD) と CUPS ブラウジングを使用して、共有リモートプリンターのすべて、またはフィルタリング後のサブセットを、ローカルの CUPS サービスで自動的に利用できるようにします。

たとえば、管理者はワークステーションでこの機能を使用して、信頼できるプリントサーバーのプリンターのみをアプリケーションの印刷ダイアログで使用できるようにすることができます。プリントサーバーが多数のプリンターを共有している場合、リストに表示されるプリンターの数を減らすために、参照するプリンターを特定の条件でフィルタリングするように cup-browsed を設定することもできます。

注記

アプリケーションの印刷ダイアログが DNS-SD などの他のメカニズムを使用してリモートプリンターのリストを表示している場合、cups-browsed は影響を及ぼしません。また、cups-browsed サービスは、ユーザーがリストにないプリンターに手動でアクセスすることを妨げるものではありません。

前提条件

  • CUPS サービスがローカルホストで設定されている
  • リモート CUPS プリントサーバーが存在する。このサーバーには次の条件が適用されます。

    • サーバーが、クライアントからアクセス可能なインターフェイスでリッスンしている。
    • /etc/cups/cups.conf ファイル内のサーバーの <Location /> ディレクティブにある Allow from パラメーターにより、クライアントの IP アドレスからのアクセスが許可されている。
    • サーバーがプリンターを共有している。
    • ファイアウォールルールにより、クライアントからサーバーの CUPS ポートへのアクセスが許可されている。

手順

  1. /etc/cups/cups-browsed.conf ファイルを編集し、次の変更を加えます。

    1. ポーリングするリモート CUPS サーバーごとに BrowsePoll パラメーターを追加します。

      BrowsePoll remote_cups_server.example.com
      BrowsePoll 192.0.2.100:1631

      リモート CUPS サーバーが 631 とは異なるポートでリッスンする場合は、ホスト名または IP アドレスに <port> を追加します。

    2. オプション: フィルターを設定して、ローカル CUPS サービスに表示されるプリンターを制限します。たとえば、名前に sales_ が含まれるキューをフィルタリングするには、次のパラメーターを追加します。

      BrowseFilter name sales_

      さまざまなフィールド名でフィルタリングしたり、フィルターを無効にしたり、正確な値を照合したりできます。詳細は、cups-browsed.conf(5) マニュアルページのパラメーターの説明と例を参照してください。

    3. オプション: ポーリング間隔とタイムアウトを変更して、参照サイクルの数を制限します。

      BrowseInterval 1200
      BrowseTimeout 6000

      プリンターが参照リストから消えるのを避けるために、BrowseIntervalBrowseTimeout の両方を同じ比率で増やしてください。つまり、BrowseInterval の値を 5 以上の整数で乗算し、その計算結果の値を BrowseTimeout に使用します。

      デフォルトでは、cups-browsed は 60 秒ごとにリモートサーバーをポーリングし、タイムアウトは 300 秒です。ただし、キューの数が多いプリントサーバーでこれらのデフォルト値を使用すると、大量のリソースが消費される可能性があります。

  2. cups-browsed サービスを有効にして起動します。

    # systemctl enable --now cups-browsed

検証

  • 使用可能なプリンターをリスト表示します。

    # lpstat -v
    device for Demo-printer: implicitclass://Demo-printer/
    ...

    プリンターの出力に implicitclass が含まれていれば、cups-browsed が CUPS でプリンターを管理しています。

関連情報

  • cups-browsed.conf(5) man ページ