
長い間、プリントサーバー(リモート印刷とスキャン)を作成するという古いRPIのアイデアに苦しみ、ついにこれに到達しました。
RPIのセット、Raspbianを備えたフラッシュドライブ、Wi-Fiアダプター、HP LaserJet Pro 1102プリンター、HP Deskjet F2180 MFP、およびUSBハブがあると仮定します。 プリントサーバーを使用するメインマシン(BB)はLinux上に存在します(ただし、Windowsでの使用の違いはごくわずかです)。
準備する
ワイヤ経由でRPIに接続しないように、wi-fi経由で自動接続を追加します。 これを行うには、RaspbianからUSBフラッシュドライブをBBに挿入し、/ bootに移動して、2つのファイルを作成します。
USBフラッシュドライブをRPI、wi-fiアダプター(ハブではなく直接-プリンター用)に挿入し、電源を接続します。 しばらくして、wi-fiルーターに登り、RPIを発行したアドレスを見つけ、SSH経由でそこにアクセスします。
raspi-configを実行してRPIを構成しましょう。
IPアドレス指定に慣れていない場合は、mDNSを介して機能するようにホスト名を構成できます。 / etc / hostnameおよび/ etc / hostsに名前を書き込みます (たとえば、printserver.local)。変更をsudo /etc/init.d/hostname.shにコミットし、再起動します。 再起動後、mDNS経由のRPIはprintserver.localで利用可能になります。 Linuxの場合、mDNSはデフォルトで機能します。Windowsの場合、 Bonjour印刷サービスをインストールする必要があります 。
CUPSを置く
最初にやろう
sudo apt-get update && sudo apt-get upgrade
次にCUPSをインストールします
sudo apt-get install cups
CUPSでプリンターを管理するには、lpadminグループにユーザーを追加する必要があります。 デフォルトのユーザー-piの下で作業すると仮定します。 ここに追加します:
sudo usermod -a -G lpadmin pi
プリントサーバーはホームネットワークにあるため、すべてのユーザーがアクセスできるようにしてから再起動します。
sudo cupsctl --remote-any sudo /etc/init.d/cups restart
原則として、 https://printserver.local:631 /で利用可能な既製のCUPSがあり、おそらく、そのような多くのプリンターで機能しますが、この場合は機能しません。
HP LaserJet Pro 1102プリンター
この獣の場合、標準の配信には適切なドライバーが見つかりませんでした。 foomaticからドライバーをインストールする必要がありました。
sudo apt-get install printer-driver-foo2zjs-common printer-driver-foo2zjs
管理パネルでこのプリンターの別のドライバーを選択します: HP LaserJet 1022 Foomatic / foo2zjs-z1
彼は印刷し始めましたが、 非常にゆっくり 、時には愚かにも私のコマンドをスキップしました。
長い間、ほとんどの場合1ページで、ドライバーをインストールせずに任意のデバイスから印刷できるため、このドライバーで構成を残しました。 大容量の場合、CUPSで同じプリンターの異なる構成を構成する必要がありました。
xinetdを使用してHP-jetdirectプリンターをエミュレートします。 まず、xinetdをインストールします。
sudo apt-get install xinetd
次に、xinetdのサービスを構成します。
service hp-jetdirect { socket_type = stream protocol = tcp wait = no user = pi # server = /usr/bin/lp server_args = -d HP_LaserJet_Professional_P1102_direct -o raw groups = yes disable = no }
HP_LaserJet_Professional_P1102_directは、CUPSでjet-direct-printerプロファイルが呼び出されるものです。
実行:
/etc/rc.d/xinetd start
次に、管理パネルに移動して、HP_LaserJet_Professional_P1102_directという名前の新しいプリンターを作成します。 主なものは、このドライバーを選択することです:ローカルRawプリンター。 その結果、プリンターのネットワークリンクはhttps://printserver.local:631 / printers / HP_LaserJet_Professional_P1102_directになり、BBでの印刷をセットアップするときに使用する必要があります。
これですべてです。今、主なことは、印刷するマシンにドライバーをインストールすることです。大量の印刷は通常の速度で行われます。
HP Deskjet F2180スキャナー
実際には、これはスキャナーではなく、MFPですが、スキャナーとしてのみ使用しています。
スキャンには正気が必要です
sudo apt-get install sane
次に、ユーティリティを使用します。このユーティリティを使用すると、スキャナー用に用意されているものを確認できます
sudo sane-find-scanner
HP Deskjet F2180スキャナーの場合、ほとんど表示されません。
hpからドライバーをインストールします。
sudo apt-get install hplip
検索を繰り返します。
found USB scanner (vendor=0x0424, product=0xec00) at libusb:001:003
さて、スキャナーがコマンドを受信できるかどうかを確認しましょう
pi@PrintServer:~ $ sudo scanimage -L device `hpaio:/usb/Deskjet_F2100_series?serial=CN78R4R3PB04TK' is a Hewlett-Packard Deskjet_F2100_series all-in-one
つまり、RPIスキャナーは機能します。
次に、リモートLinuxでsaneおよびsane-utilsをインストールし、 / etc / sane.d / net.confに移動して、最下部にRPIアドレスを追加します
残念ながら、リモートマシンでは、 sudo scanimage -Lが返されました 。
No scanners were identified. If you were expecting something different, check that the scanner is plugged in, turned on and detected by the sane-find-scanner tool (if appropriate). Please read the documentation which came with this software (README, FAQ, manpages).
ポートをスキャンすると、RPIはポート6566が閉じていることを確認しました。 さて、xinetdをもう少し設定してください
sudo nano /etc/xinetd.d/sane-port
挿入
service sane-port { socket_type = stream port = 6566 wait = no user = root group = root server = /usr/sbin/saned disable = no }
サービスを終了、保存、再起動します。
sudo service xinetd restart
リモートマシンでsudo scanimage -Lを繰り返して、
device `net:printserver.local:hpaio:/usb/Deskjet_F2100_series?serial=CN78R4R3PB04TK' is a Hewlett-Packard Deskjet_F2100_series all-in-one
必要なもの。 xsaneを実行してスキャンを開始できます。
ご清聴ありがとうございました。
upd praeivis xsaneはWindowsの下にあります
中古
http://www.raspberry-pi-geek.com/Archive/2013/01/Converting-the-Raspberry-Pi-to-a-wireless-print-server
https://samhobbs.co.uk/2014/07/raspberry-pi-print-scanner-server
https://blog.johanv.org/posts/old/node-195.html
http://lib.ru/unixhelp/linuxset.txt