🖨️

FreeBSDサーバの CUPS で epson ew-052a を使う

に公開

FreeBSDにおけるCUPSについて

CUPS(Common Unix Printing System)について:
オープンソースの印刷システムで、macOS、Linux、およびFreeBSDなど多くのUNIX系OSで使用可能です。

  • 標準的な印刷プロトコルであるIPP (Internet Printing Protocol) を使用
  • ローカルおよびネットワークプリンタの両方をサポート
  • ウェブベースの管理インターフェースを提供 (通常はポート631で動作)
  • 様々なプリンタドライバに対応し、プリンタベンダー独自のものからオープンソースのものまで幅広くサポート
  • 印刷キュー管理、ジョブ制御、プリンタ共有などの機能を提供

ubuntuなどでプリンタを特に設定等に苦労することなく利用できるのは、CUPSが普及したことにあります。 CUPS以前は lprとghostscriptのフィルタを苦労して設定していましたし、IPPなどのプロトコルを利用することは困難でした。

接続するプリンタについて

  • EPSON の EW-052Aについて。
    EPSON EW-052Aは、エプソンのマルチファンクションインクジェットプリンタで比較的安価です。
    https://www.epson.jp/support/portal/support_menu/ew-052a.htm

  • IPアドレスの固定: DHCPなどで固定IPが設定したほうが良いでしょう。本投稿では 192.168.0.8 としています。

FreeBSDのサーバで使うには?

昔ながらのLPR設定をコツコツやれるかもしれませんが、ここはCUPSをインストールすることで利用はカンタンになります。なのでCUPSをインストールしていきます。

# pkg update
# pkg install cups

まず、CUPS本体はpkgでインストールできますが、EPSONのプリンタドライバは通常ports経由でのコンパイルが必要です。pkgリポジトリからは多くのプリンタドライバが提供されていないため、特定のプリンタモデル向けドライバはportsツリーからインストールする必要があります。
2-3. ports[1] で print/epson-inkjet-printer-escpr2[2]をインストールする。

EPSONプリンタドライバのインストール:

# cd /usr/ports/print/epson-inkjet-printer-escpr2
# make install clean

cups の起動手順

  • cupsd.confの設定を変更していきます。
  1. リモートからWeb UIにアクセスできるようにするための設定:

1-1. /usr/local/etc/cups/cupsd.confを編集します:

# vi /usr/local/etc/cups/cupsd.conf

1-2. Listenディレクティブを変更します:

  • 変更前
    Listen localhost:631

  • 変更後
    Listen 192.168.0.1:631

1-3.アクセス制限を設定します:

  • Location セクションを探し、以下のような設定を追加します
<Location />
  Order allow,deny
  Allow 192.168.0.0/24
</Location>
<Location /admin>
  Order allow,deny
  Allow 192.168.0.0/24
</Location>

<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
  Allow 192.168.0.0/24
</Location>

/etc/rc.conf 変更

CUPSを起動時に自動的に起動させるための設定を追記します。

# echo 'cups_enable="YES"' >> /etc/rc.conf

CUPS起動から設定まで

  • https://www.epson.jp/dl_soft/readme/32053.htm から linux用のPPDをダウンロードしてきます。 .deb 形式で問題ないかと思います。
  • ppd の配置位置は /opt 以下になりますので、予めファイルシステムを準備しておくのも良いでしょう。
  • deb ファイルを展開します。 展開先にはdata.tar.xz ファイルがあります。
  • data.tar.xz を展開すると /opt以下に展開されます。 PPDファイルが .gz 圧縮されているので、必要なものを先に展開しておくと良いかも?
  • CUPSの起動
# service cupsd start
  • Web GUIでプリンタ設定の手順

    • ウェブブラウザでhttp://192.168.0.1:631にアクセスします。
    • 「管理」タブをクリックします。
    • 「プリンタの追加」をクリックします。
    • 「ネットワークプリンタ」→「IPP」を選択します。
    • 「接続」欄にipp://192.168.0.8を入力します。
    • メーカーとして「EPSON」を選択します。
    • 機種として「EPSON EW-052A」を選択します(epson-inkjet-printer-escpr2がインストールされていることが前提)。
    • プリンタ名、説明、場所を入力します。
    • 「このプリンタを共有する」にチェックを入れます(必要に応じて)。
      *「プリンタの追加」ボタンをクリックして完了します。
  • 設定後、テストページを印刷して動作を確認できます:

# lpr -P EW-052A /usr/share/cups/data/testpage.pdf

まとめ

  • FreeBSDでCUPSを使用したプリンタサーバの構築は、以下のステップで実現できます:

    1. pkgコマンドでCUPS本体をインストール
    2. portsシステムを使用してEPSONプリンタドライバをインストール
    3. CUPSの設定ファイルを編集してリモートアクセスを許可
    4. /etc/rc.confにCUPSの自動起動設定を追加
    5. CUPSを起動し、Web UIからプリンタを設定

これにより、FreeBSDサーバを介してネットワーク上の他のコンピュータからEPSONプリンタEW-052Aを使用できるようになります。CUPSの管理インターフェースは使いやすく、プリンタキューの管理や設定変更も容易に行えます。また、複数のプリンタを追加して管理することも可能になりました。

脚注
  1. FreeBSD Portsコレクションは、FreeBSDシステム向けにソフトウェアをビルドしてインストールするためのフレームワークです。ソースコードを取得し、ローカル環境に合わせてコンパイル・インストールします。 ↩︎

  2. FreeBSD Bugzilla #255680 このバグレポートでは、print/epson-inkjet-printer-escpr2 パッケージのバージョンアップデートに関する問題が報告されています。特に、新しいバージョンでのサポートプリンタリストの更新や、インストール時の依存関係解決の問題について議論されています。このバグを確認することで、最新のEPSONプリンタドライバのサポート状況を把握できます。 ↩︎

Discussion