2016年3月7日月曜日

アルプスの山々で CentOS7 ネットワークプリンタ設定

ド素人によるCentOS7 でのネットワークプリンタ設定。

かつてFreeBSDにおいては、右往左往しつつもどうにかなったプリンタ設定。あの当時もかなり無知だったが今でもほとんど無知なので、今回も無知相応の苦労をする。

そう、無知でさえなければアピースオブケイク!知識、何より努力って大事だぜAWESOME!(Neil Pasricha 氏ふう)



さておき。

数日前にも gutenprint-cups での設定を試みたのだが、無知相応に失敗した。手順としては

・gutenprint-cupsインストール
・メーカー提供のlinuxドライバをダウンロードしてインストール
・CUPSツール上でippを設定

このように。

結果は、インク残量データを見ることができるものの、テストページを印刷できなかった。また、インストール作業中もエラー無く進んだわけではなかった。ドライバ rpm ファイルの実行時に、依存性のエラーが出ていた。が、私はちょっと調べてわからなくて投げ出した。それでいてうまくいかないと言ってのけては「のび太レベル」の二次元マンガ的バカ幼稚。

 でも今回は、えらーめっせーじをちゃんと読んだよドラえもん!!

やっぱりのび太レベルじゃねーか。。


ここまでを踏まえて、再作業。

まず「ド素人が全く考えもしない」依存性の問題は多々ありうるので yum search epson で検索。

# yum search epson
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: mirrors.hustunique.com
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
138 packages excluded due to repository priority protections
=========================================================== N/S matched: epson ============================================================
epson-inkjet-printer-escpr.x86_64 : Drivers for Epson inkjet printers
gutenprint-cups.x86_64 : CUPS drivers for Canon, Epson, HP and compatible printers
iscan-firmware.noarch : Firmware for Epson flatbed scanners

  Name and summary matches only, use "search all" for everything.


機種共通汎用ドライバがあるようだ。次に、ぐーてんプリントカプスの有無を確認する。

# yum list installed | grep gutenprint

この環境では未インストールのようだ。先日のテスト後、OSからインストールし直しているためだと思われる(minimal+cinnamonのための最小限)。

今回は、敢えてぐーてんぷりんと無しの状態から、プリンターメーカーのドライバを入れてみる。もし? yumでまとめて入れてくれるなら運用上わかりやすいからだ。

# yum install epson-inkjet-printer-escpr.x86_64

Dependencies Resolved

Installing:
 epson-inkjet-printer-escpr                   x86_64

Installing for dependencies:
 bc                                           x86_64
 cups-filesystem                              noarch
 cups-filters                                 x86_64
 cups-filters-libs                            x86_64
 ghostscript                                  x86_64
 ghostscript-fonts                            noarch
 liberation-mono-fonts                        noarch
 openjpeg-libs                                x86_64
 poppler                                      x86_64
 poppler-data                                 noarch
 poppler-utils                                x86_64
 qpdf-libs                                    x86_64
 urw-fonts                                    noarch
 xorg-x11-font-utils                          x86_64

Transaction Summary

まとめてもらえるのはこの内容。しかし、そもそもこれらが何であるかが全くわかっていないのでバカの邪推にもならない。

さて、これらの導入後に cinnamon上のメインメニューを、プリンタ関連のユーティリティは見当たらない。

続いて、先日、メーカー提供ドライバをインストールしようとした際の問題を再確認する。

# rpm -Uvh epson-inkjet-printer-201113j-1.0.3-1lsb3.2.x86_64.rpm
warning: epson-inkjet-printer-201113j-1.0.3-1lsb3.2.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 8aa65d56: NOKEY
error: Failed dependencies:
    lsb >= 3.2 is needed by epson-inkjet-printer-201113j-1.0.3-1lsb3.2.x86_64

lsbの3.2以上が必要、lsbって何?教えてトライさ〜ん!!

のび太以上、クララ(偽)未満じゃねーか。。


Linux Standard Base - Wikipedia
https://ja.wikipedia.org/wiki/Linux_Standard_Base


ついでにもうひとつ、


Common Unix Printing System
https://ja.wikipedia.org/wiki/Common_Unix_Printing_System



なるほどオレがどんだけ無知か。さておき、lsb の表面の一部は知ることができたので、ぐーてん共々インストールする。

# yum install gutenprint-cups.x86_64

Installing:
 gutenprint-cups                        x86_64
Installing for dependencies:
 cups                                   x86_64
 cups-client                            x86_64
 ghostscript-cups                       x86_64
 gutenprint                             x86_64


また、lsbについてyumで検索すると、printingなる名称があったのでこれをインストールしてみる。

# yum install redhat-lsb-printing.x86_64

Installing:
 redhat-lsb-printing                          x86_64

Installing for dependencies:
 at                                           x86_64
 ed                                           x86_64
 foomatic-filters                             x86_64
 m4                                           x86_64
 mailx                                        x86_64
 patch                                        x86_64
 redhat-lsb-core                              x86_64
 redhat-lsb-submod-security                   x86_64
 spax                                         x86_64
 time                                         x86_64


先日の中途半端なプリンタ動作は、lsb依存の部分がNGで、SNMPを利用する機能(インク残量)だけが動いた、ということだろうか。やはりバカの邪推にもならないが、ゼロ円で教えてピーター!!


さておき、redhat な lsb プリンティングのインストール後だが、


# rpm -Uvh epson-inkjet-printer-escpr-1.6.4-1lsb3.2.x86_64.rpm
warning: epson-inkjet-printer-escpr-1.6.4-1lsb3.2.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 8aa65d56: NOKEY
error: Failed dependencies:
    lsb >= 3.2 is needed by epson-inkjet-printer-escpr-1.6.4-1lsb3.2.x86_64


この点は変わらなかった。そこで、乱暴ではあるのだが  yum install lsb を叩いてみると、出てくる出てくる、100超の依存関係が。

なるほど、これはちまちま調べていられないので、アプローチを変えてごっそり突っ込んでみる。結果、メーカーのドライバがエラー無くインストールできるようになった。


# rpm -ivh epson-inkjet-printer-escpr-1.6.4-1lsb3.2.x86_64.rpm
warning: epson-inkjet-printer-escpr-1.6.4-1lsb3.2.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 8aa65d56: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:epson-inkjet-printer-escpr-1.6.4-################################# [ 50%]
Cleaning up / removing...
   2:epson-inkjet-printer-escpr-1.5.2-################################# [100%]
#
#
# rpm -ivh epson-inkjet-printer-201113j-1.0.3-1lsb3.2.x86_64.rpm
warning: epson-inkjet-printer-201113j-1.0.3-1lsb3.2.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 8aa65d56: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:epson-inkjet-printer-201113j-1.0.################################# [100%]
#
#
#
# rpm -ivh epson-printer-utility-1.0.0-1lsb3.2.x86_64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:epson-printer-utility-1.0.0-1lsb3################################# [100%]
Install Message > Described entry of LITE in services.
Install Message > Backup file is /etc/services.bak.
Install Message > Start /usr/lib/epson-backend/setup to change setup.
#
#

しかし、だからといって cinnamon のメニューにEPSONが登場してくれるわけではない。プリンターメーカーのおろか、そもそも、プリンタ設定の項目さえない。ここで一応、gutenprint-cupsを上書きしてたが状況変わらず。そこで gutenprint-cups本来のこれ。

http://localhost:631/

administration から Add Printer で Internet Printing Protocol (http) を選択。なぜ IPP(http)かというと、目的のプリンタに対してWindow環境では TCP80で通信しているっぽいから。ほんのちょっとトラフィックの行き来を眺めただけなので、詳細は定かでない。

そして、当該機種を選びテストページを印刷するも、

pending since
Tue 06 Mar 2016 22:22:54 AM JST
"The printer URI is incorrect or no longer exists."

IPは通るので、私の無知で無根拠な「っぽい設定」が致命的にNGということだ。


このあと、IPP(http)を CUPSのページのガイド通りに socket:IPアドレス な記述に変更したところテストページが印刷できた。


 トライさんトライさん!
 目の前に書いてある字もろくに読もうとしない子でも、
 叩き直してもらえるの!?


「無理よ、廃児。そもそもlsbを入れる前になぜ途中まで設定できたかわかってないじゃないの。」




0 件のコメント:

コメントを投稿