Linuxを日常的に使う実験ブログ

Gentoo LinuxでBrother製プリンターを使う

 2014-09-24

 Gentoo Linux

こんにちは。今回のテーマは『Gentoo LinuxでBrother製プリンターを使う』です。今回はDCP-J525NをGentooで使えるようにしました。最近はプリンターメーカーもLinux対応ドライバを提供していますしフリーOSも市場での存在感を増してきているということでしょうか。確認していませんが、今回の記事はBrotherの他機種でも応用できると思います。Arch LinuxやUbuntu、Debian等については参考記事をご覧ください。 参考記事: Arch LinuxでBrother製プリンターを使う LinuxでBrother製プリンターを使う [adsense02]

導入環境

今回導入するGentoo LinuxはinitシステムがOpenRCdであることを前提としています。Systemdの場合にはGentoo wikiを参考にしてみてください。(筆者はSystemd環境では未検証です。)

LinuxGentoo Linux
プリンター機種DCP-J525N
接続方法無線LAN
initシステムOpen-RC

CUPSの準備

インストール

cupsが導入されていない場合は以下コマンドでインストールしましょう。

# emerge —ask cups

起動

以下コマンドはOpen-RCの場合です。Systemdを導入している方はsystemctlコマンドからcupsのセットアップをしてください。(参考:Gentoo wiki)

# /etc/init.d/cupsd start

/etc/init.d/cup-browsed start

システム起動時に自動起動するよう登録しておきましょう。

# rc-update add cupsd default

rc-update add cups-browsed default

ディレクトリの準備

root権限で以下のコマンドを実行しディレクトリを作成します。既にある場合は不要です。

# mkdir -p /var/spool/lpd

mkdir -p /usr/share/cups/model

mkdir -p /usr/lib/cups/filter

ドライバーのインストール

ダウンロード

今回は~/tempディレクトリにダウンロードし作業することとします。ドライバーはBrotherの公式ページからダウンロードしてください。今回はDCP-J525N用の以下ファイルをダウンロードしました。lpr用とcups用の2種類を用意してください。

インストール

筆者はdebにてインストール作業をしましたが、Gentoo wikiではrpmパッケージでのインストール方法が記載されています。どちらでも好きな方で良いと思います。 Debパッケージの場合 まずパッケージを以下コマンドで展開します。

$ cd ~/temp $ ar -p dcpj525nlpr-3.0.1-1.i386.deb data.tar.gz | tar zx $ ar -p dcpj525ncupswrapper-3.0.0-1.i386.deb data.tar.gz | tar zx

~/tempディレクトリにoptとusrの二つのディレクトリが生成されたはずです。このディレクトリを次のコマンドでコピーすることでインストールします。

$ sudo cp -r temp/opt/* /opt/ $ sudo cp -r temp/usr/bin/* /usr/bin/

そしてルート権限もしくはsudoで以下を実行

$ sudo /opt/brother/Printers/dcpj525n/cupswrapper/cupswrapperdcpj525n

Gentooの場合は/usr/libexec/cups/filter以下のファイルが読み込まれるようです。以下コマンドでリンクしておきましょう。

$ sudo ln -s /usr/lib/cups/filter/brother_lpdwrapper_dcpj525n /usr/libexec/cups/filter

rpmパッケージの場合 rpmがインストールされていない場合はインストールしておきましょう。

$ sudo emerge —ask rpm

rpmパッケージをダウンロードしたディレクトリに移動して以下コマンドを実行します。パッケージのインストール順に注意してください。lpr用が先です。

$ sudo rpm -ivh —nodeps dcpj525nlpr-3.0.1-1.i386.rpm $ sudo rpm -ivh —nodeps dcpj525ncupswrapper-3.0.0-1.i386.rpm

debパッケージと同様ですが、/usr/libexec/filterへのリンクを忘れないようにしましょう。

$ sudo ln -s /usr/lib/cups/filter/brother_lpdwrapper_dcpj525n /usr/libexec/cups/filter

WebブラウザでCUPSの設定

以降の設定ははArch Linuxの設定と同様ですが、プリンターの追加部分だけは加筆がありますのでご注意ください。 Webブラウザでhttp://localhost:631/にアクセスします。 「管理」タブを選択し「プリンターの追加」をクリック 03 ユーザーとパスワードを求められるので以下を入力

ユーザー:root パスワード:<rootパス>

07 追加プリンタの選択肢にBrotherプリンターがあるので選択します。 ※発見されたネットワークプリンターで選択するとトラブルを起こす場合があります。その場合は「AppSocket/HP JetDirect」でプリンターを指定してしてください。詳しくは下記のトラブルシューティングをご覧ください。 04 場所は空欄でも構いません。筆者は”Local Printer”と入れました。 「続ける」を押しプリンターを追加します。 05 追加が完了したら「プリンター」>「メンテナンス」タブから「テストページの印刷」を選択しテストプリントしましょう。 08 こんなテストプリントが印刷されたら成功です。お疲れ様でした。 09

トラブルシューティング

今回の設定にあたり筆者が遭遇したトラブルを挙げておきます。何かの役に立てば幸いです。

#1 unable to locate printer というメッセージが出る

チェックポイント:cups-browsedは起動しているか? 以下コマンドで確認しましょう。

$ sudo /etc/init.d/cups-browsed status

チェックポイント:プリンターのIPアドレスで指定してみる Cupsの画面上で「発見されたネットワークプリンター(Dicovered Network Printers)」を選ぶと接続できないことがあります。対策としては以下のようにIPアドレスを直接打ち込みます。プリンターを追加する際に「AppSocket/HP JetDirect」を選択して以下のように入力します。(原因はつかめてませんが、Network ManagerがIPアドレス取得に失敗している可能性あり)

socket://[IPアドレス]

#2 the printer is not responding というメッセージが出る

上記のようにIPアドレスで指定した場合、ルーター等で割り振るIPアドレスが変わっている可能性があります。登録したIPアドレスが正しいか確認してください。

最後に

Arch Linuxよりも簡単かと思っていたのですが、少々難航しました。筆者の手元にある機種のみでしかテストしていないので他機種も同様に動くかはわかりませんが、何かの参考になれば幸いです。 [adsense]