Your SlideShare is downloading. ×
  • Like
Part Print
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply
Published

 

Published in Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
494
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 1目次 0.1 プリンティングシステム概要 . . . . . . . . . . . . . . . . . . . . . . . 1 0.1.1 歴史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 0.1.2 LPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 0.1.3 /etc/printcap . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 0.1.4 CUPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 0.1.5 プリンタの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 0.1.6 SystemV(BSD) 系のコントロールコマンド . . . . . . . . . . . . 6 0.2 HP2150 複合機を local にセットアップする (centos 4) . . . . . . . . . . 7 0.2.1 HP2150 まずは電源投入 . . . . . . . . . . . . . . . . . . . . . . 7 0.2.2 HP2150 プログラムのインストール . . . . . . . . . . . . . . . . 8 0.3 HP2150 複合機を local にセットアップする (centos 5) . . . . . . . . . . 12 0.4 jetadmin(port 9100) によるお手軽ネットワークプリンティング . . . . . 13 0.4.1 材料をそろえる . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 0.4.2 下準備をおこなう . . . . . . . . . . . . . . . . . . . . . . . . . . 14 0.4.3 設定をおこなう (CentOS5.3) . . . . . . . . . . . . . . . . . . . . 15 0.4.4 設定をおこなう (Ubuntu 9.04) . . . . . . . . . . . . . . . . . . . 16 0.4.5 問題点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170.1 プリンティングシステム概要 *10.1.1 歴史 CUPS(Common Unix Printing System) とよばれる新しいシステムが開発されるまでの Linux の標準の印刷システムは LPD(BSD 系の印刷システム) でした0.1.2 LPD 最近のディストリビューションでは LPD はつかわれなくなってきていますが、コマンドとしてはその名前と機能を世襲しているようです。 テキストファイルが非 postscript プリンタにおくられるまでのながれは *1 atmarkit Linux 印刷システムの仕組みと設定
  • 2. 0.1. プリンティングシステム概要 目次 テキストファイル /etc/printcap で指定されたフィルタ(例:magicfilter、lpdomatic など) 。ファイ ルタイプをマジックナンバーで判定して、対応する処理プログラムを呼び出す) テキストファイルを PostScript に変換するフィルタ(mpage、a2ps、enscript な ど) GhostScript(/usr/bin/gs。PostScript インタプリタ) gs に組み込まれているプリンタドライバ printer で印刷 設定ファイル: /etc/printcap サーバプロセス: lpd スプールディレクトリ: /var/spool/lpd/プリンタ名 管理コマンド: lpc、lpq、lprm プリントコマンド: lpr スプールディレクトリはプリンタへの出力が完了するまで、印刷ジョブを一時的にキューイングしておくディレクトリです。。0.1.3 /etc/printcap/etc/printcap の設定例(ローカルプリンタの場合)lp1: :mx=0: :sd=/var/spool/lpd/lp1: :sh: :lp=/dev/lp0: :if=/usr/share/printconf/util/mf_wrapper: mx=0 (mx#0 ?) ファイルサイズの最大サイズを制限。#0 は制限なしの sd=/var/spool/lpd/lp1 スプールディレクトリを/var/spool/lpd/lp1 に指定 sh バナーページを打ち出さない設定 lp=/dev/lp0 出力デバイスをパラレルポート/dev/lp0 に指定 if=/usr/share/printconf/util/mf wrapper フィルタプログラムの指/etc/printcap の設定例(リモートプリンタの場合)lp: :mx=0: :sd=/var/spool/lpd/lp: :sh: :rm=linux0: :rp=lp1: rm=linux0 リモートプリンタサーバのホスト名を linux0 に指定 rp=lp1 リモートプリンタサーバのプリンタ名を lp1 に指定build SOHO env2(w/ CentOS4 & BBrouter) 2 toshitsugu Hirasawa
  • 3. 目次 0.1. プリンティングシステム概要 ク ラ イ ア ン ト か ら の ア ク セ ス を 許 可 す る た め に 、リ モ ー ト プ リ ン タ サ ー バの/etc/hosts.equiv または/etc/hosts.lpd ファイルに、クライアント名あるいはすべてのクライアントを表す + を記述しておきます。   CUPS においても、CUPS 設定時に LPD 対応アプリケーションの互換のためにツールが/etc/printcap を自動生成します。0.1.4 CUPS CUPS は多様なプリンタ、多様なファイル形式に対して標準的なインターフェイスを持ち、モジュール化された印刷システムです。標準の印刷プロトコルは新しい IPP(Internet Printing Protocol)ですが、LPD や SMB もサポートしています。  コマンドラインインターフェイスとして、BSD 系や System V 系とほぼ同等なコマンドラインインターフェイスを提供しています。米 Easy Software Products によって開発され、GPL で配布されています。 CentOS 5の(ほぼディフォルト状態では)[root@cent5-19 tmp]# cat /tmp/yumlist | grep cupscups.i386 1:1.2.4-11.18.el5_2.2 installedcups-libs.i386 1:1.2.4-11.18.el5_2.2 installedhal-cups-utils.i386 0.6.2-5.2.el5 installedlibgnomecups.i386 0.2.2-8 installedapcupsd.i386 3.14.3-1.el5.rf dagapcupsd-cgi.i386 3.14.0-3.el5 epelapcupsd-gui.i386 3.14.0-3.el5 epelbluez-utils-cups.i386 3.7-2.2.el5.centos updatescups-devel.i386 1:1.2.4-11.18.el5_2.2 updatescups-lpd.i386 1:1.2.4-11.18.el5_2.2 updatescups-pdf.i386 2.4.6-1.el5 epelgimp-print-cups.i386 4.2.7-22 baselibgnomecups-devel.i386 0.2.2-8 base[root@cent5-19 tmp]# cups 本体 cups-libs ライブラリ hal-cups-utils HAL を利用してローカルプリンタを検出 libgnomecups CUPS を GNOME と統合 foomatic プリンタドライバと PPD ファイルのデータベース system-config-printer GUI 設定ツール テキストファイルが非 PostScript プリンタに送られるまでの処理は次のようになります。 テキストファイル ファイルの MIME タイプに対応したフィルタ (CUPS フィルタあるいは CUPS 対 応 GhostScript。PPD ファイルを参照して処理を行う) CUPS バックエンド プリンタ PPD(Postscript Printer Description)は、プリンタの機能記述ファイルです。非build SOHO env2(w/ CentOS4 & BBrouter) 3 toshitsugu Hirasawa
  • 4. 0.1. プリンティングシステム概要 目次PostScript プリンタであっても、CUPS フィルタあるいは CUPS 対応 GhostScript から参照されます CUPS バックエンドはフィルタプログラムによって加工されたファイルをプリンタに送る作業を行います。バックエンドプログラムには、http、ipp、lpd、parallel、serial、smb、socket、usb などがあります。 設定ファイル /etc/cups/printers.conf、/etc/cups/cupsd.conf サーバプロセス cupsd スプールディレクトリ /var/spool/cups フィルタディレクトリ /usr/lib/cups/filter model(PPD)ディレクトリ /usr/share/cups/model バックエンドディレクトリ /usr/lib/cups/backend ログファイル /var/log/cups/access log、/var/log/cups/error log 管理コマンド CUPS コ マ ン ド:cupsenable、cupsdisable、lpinfo、 lpoptions BSD 系 (lpc、 、 lpq lprm) System V 系 (lpad- min、lpstat、accept、reject、cancel) プリントコマンド BSD 系:lpr /etc/printcap も lpd 対応アプリケーションのために生成されます CUPS のサーバは/usr/sbin/cupsd です。次のようにして起動します。 /etc/init.d/cups start0.1.5 プリンタの設定 プリンタの設定と管理には、Web ブラウザベースの設定、GUI ツール、lpadmin コマンド(System V 系)の 3 通りの方法があります。Web ブラウザからの設定 http://localhost:631 からGUI ツールからの設定 システム → 管理 → 印刷 → を選択CLI lpadmin コマンドからの設定 lpadmin コマンドをつかってコマンドラインからの設定もできますが GUI でいいでしょ。詳細は WEB で (Linux 印刷システムの仕組みと設定)[root@cent5-19 cups]# pwd/etc/cups[root@cent5-19 cups]# cat printers.conf# Printer configuration file for CUPS v1.2.4# Written by cupsd on 2008-11-05 12:29<DefaultPrinter hp2150local>Info hp2150Location localDeviceURI usb://HP/PSC%202150%20Series?serial=MY2BED717N1Ybuild SOHO env2(w/ CentOS4 & BBrouter) 4 toshitsugu Hirasawa
  • 5. 目次 0.1. プリンティングシステム概要State IdleStateTime 1225855727Accepting YesShared YesJobSheets none noneQuotaPeriod 0PageLimit 0KLimit 0OpPolicy defaultErrorPolicy stop-printer</Printer>[root@cent5-19 cups]# /etc/cups/cupsd.conf の設定をのぞいてみると[root@cent5-19 cups]# cat cupsd.conf | grep -v "^ *#" | grep -v "^$"MaxLogSize 2000000000LogLevel infoSystemGroup sys rootListen localhost:631 < リモートからアクセスしたい場合はここをListen /var/run/cups/cups.sock < いじるんだろうねBrowsing OnBrowseOrder allow,denyBrowseAllow @LOCALDefaultAuthType Basic<Location /> Order allow,deny Allow localhost < リモートからアクセスしたい場合は ALL?</Location><Location /admin> Encryption Required Order allow,deny Allow localhost</Location><Location /admin/conf> AuthType Basic Require user @SYSTEM Order allow,deny Allow localhost</Location><Policy default> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subs Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit Pause-Printer Resume-Printer Set-Printer-Attributes Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold- AuthType Basic Require user @SYSTEM Order deny,allow </Limit> <Limit Cancel-Job CUPS-Authenticate-Job> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit>build SOHO env2(w/ CentOS4 & BBrouter) 5 toshitsugu Hirasawa
  • 6. 0.1. プリンティングシステム概要 目次</Policy>[root@cent5-19 cups]#0.1.6 SystemV(BSD) 系のコントロールコマンド 括弧は BSD 系 accept キューへの入力許可 reject キューへの入力禁止 cupsenable (lpc キューからプリンターへの出力許可 cupsdisable キューからプリンターへの出力禁止 lpstat -t キューの状態表示 cancel キューの中のジョブの削除 lp (lpr) ディフォルトプリンタへの打ち出し lp -d lp2(lpr -P lp2) lp2 プリンタへの打ち出し lp -n 2(lpr -#2 ) 2 部打ち出し 具体的にはこんな感じで[root@cent5-19 cups]# lpstat -t < lpstat -tスケジューラは動作中ですシステムのデフォルトの宛先: hp2150localhp2150local のデバイス: usb://HP/PSC%202150%20Series?serial=MY2BED717N1Yhp2150local は 2008 年 11 月 05 日 12 時 35 分 49 秒 以来リクエストを受け付けていますプリンタ hp2150local は待機中です。2008 年 11 月 05 日 12 時 35 分 49 秒 以来有効です[root@cent5-19 cups]#[root@cent5-19 cups]#[root@cent5-19 cups]# reject hp2150local < reject[root@cent5-19 cups]# lpstat -tスケジューラは動作中ですシステムのデフォルトの宛先: hp2150localhp2150local のデバイス: usb://HP/PSC%202150%20Series?serial=MY2BED717N1Yhp2150local は 2008 年 11 月 05 日 12 時 35 分 49 秒 以来リクエストを受け付けていません - Rejecting Jobsプリンタ hp2150local は待機中です。2008 年 11 月 05 日 12 時 35 分 49 秒 以来有効です Rejecting Jobs[root@cent5-19 cups]# accept hp2150local < accept[root@cent5-19 cups]# lpstat -tスケジューラは動作中ですシステムのデフォルトの宛先: hp2150localhp2150local のデバイス: usb://HP/PSC%202150%20Series?serial=MY2BED717N1Yhp2150local は 2008 年 11 月 05 日 12 時 35 分 49 秒 以来リクエストを受け付けていますプリンタ hp2150local は待機中です。2008 年 11 月 05 日 12 時 35 分 49 秒 以来有効です[root@cent5-19 cups]# cupsdisable hp2150local < cupsdisable[root@cent5-19 cups]# lpstat -tスケジューラは動作中ですシステムのデフォルトの宛先: hp2150localhp2150local のデバイス: usb://HP/PSC%202150%20Series?serial=MY2BED717N1Yhp2150local は 2008 年 11 月 05 日 12 時 54 分 08 秒 以来リクエストを受け付けていますプリンタ hp2150local は 2008 年 11 月 05 日 12 時 54 分 08 秒 以来無効です - Paused[root@cent5-19 cups]# cupsenable hp2150local < cupsenable[root@cent5-19 cups]# lpstat -tスケジューラは動作中ですbuild SOHO env2(w/ CentOS4 & BBrouter) 6 toshitsugu Hirasawa
  • 7. 目次 0.2. HP2150 複合機を LOCAL にセットアップする (CENTOS 4)システムのデフォルトの宛先: hp2150localhp2150local のデバイス: usb://HP/PSC%202150%20Series?serial=MY2BED717N1Yhp2150local は 2008 年 11 月 05 日 12 時 54 分 23 秒 以来リクエストを受け付けていますプリンタ hp2150local は待機中です。2008 年 11 月 05 日 12 時 54 分 23 秒 以来有効です[root@cent5-19 cups]# BSD 系の場合はこんなかんじで lpc コントロール (後述) lpq キューの表示 lprm キューのなかのジョブの削除[root@cent5-19 cups]# lpclpc> ?コマンドは短縮できます。 コマンド:exit help quit status ? < コマンドすくない?lpc> statushp2150local: プリンタはデバイス ’usb’ 上。速度 -1 キューは有効です 印刷は有効です エントリがありません デーモンは提供されていますlpc>0.2 HP2150 複合機を local にセットアップする (centos 4) これは centos4 の場合で古いです。obso ですが、とりあえず0.2.1 HP2150 まずは電源投入 root になり、/var/log/message を眺めながら、あらかじめ USB に接続した HP2150の電源スイッチを投入してみます。Nov 24 17:43:45 cent4-23 kernel: usb 1-2: new full speed USB device using address 2Nov 24 17:43:50 cent4-23 kernel: drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 2 if 1 alt 0 proto 2 vid 0x03F0Nov 24 17:43:50 cent4-23 kernel: usbcore: registered new driver usblpNov 24 17:43:50 cent4-23 kernel: drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driverNov 24 17:43:50 cent4-23 kernel: SCSI subsystem initializedNov 24 17:43:50 cent4-23 kernel: Initializing USB Mass Storage driver...Nov 24 17:43:50 cent4-23 kernel: scsi0 : SCSI emulation for USB Mass Storage devicesNov 24 17:43:51 cent4-23 kernel: Vendor: HP Model: psc 2150 Rev: 1.00Nov 24 17:43:51 cent4-23 kernel: Type: Direct-Access ANSI SCSI revision: 02Nov 24 17:43:52 cent4-23 scsi.agent[3159]: disk at /devices/pci0000:00/0000:00:1f.2/usb1/1-2/1-2:1.3/host0/target0:0:0/0:0:0:0Nov 24 17:43:52 cent4-23 kernel: usbcore: registered new driver usb-storageNov 24 17:43:52 cent4-23 kernel: USB Mass Storage support registered.Nov 24 17:43:52 cent4-23 kernel: Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0 /var/log/message はこんな感じになりました。build SOHO env2(w/ CentOS4 & BBrouter) 7 toshitsugu Hirasawa
  • 8. 0.2. HP2150 複合機を LOCAL にセットアップする (CENTOS 4) 目次0.2.2 HP2150 プログラムのインストール 必要なパッケージがインストールされているかどうかを確認します。 hpijs hp InkJet Server(ドライバみたいなもの) hpoj hp OfficeJet driver*2 *3[root@cent4-23 init.d]# rpm -aq | grep hpihpijs-1.6-2 < hpijs が必要[root@cent4-23 init.d]#[root@cent4-23 init.d]# rpm -aq | grep gimpgimp-gap-2.0.2-2gimp-2.0.5-5gimp-print-plugin-4.2.7-2xsane-gimp-0.92-13gimp-print-utils-4.2.7-2gimp-data-extras-1.2.0-12gimp-print-4.2.7-2gimp-help-2-0.1.0.3[root@cent4-23 init.d]# rpm -aq | grep ghostghostscript-7.07-33 < gs は 6.53 以上ghostscript-fonts-5.50-13[root@cent4-23 init.d]# hpoj 以外は OK みたいですね。それでは hp2150 関係のインストールを rpm パッケージからやってみます。[root@cent4-23 samba]# cat /tmp/yum.list | grep hpojhpoj.i386 0.91-9 basehpoj-devel.i386 0.91-9 baselibsane-hpoj.i386 0.91-9 base[root@cent4-23 samba]#[root@cent4-23 samba]# yum install hpoj* libsane-hpoj*Setting up Install ProcessSetting up repositoriesaddons 100% |=========================| 951 B 00:00base 100% |=========================| 1.1 kB 00:00update 100% |=========================| 951 B 00:00extras 100% |=========================| 1.1 kB 00:00Reading repository metadata in from local filesParsing package install argumentsResolving Dependencies--> Populating transaction set with selected packages. Please wait.---> Downloading header for hpoj to pack into transaction set.hpoj-0.91-9.i386.rpm 100% |=========================| 14 kB 00:00---> Package hpoj.i386 0:0.91-9 set to be updated---> Downloading header for libsane-hpoj to pack into transaction set.libsane-hpoj-0.91-9.i386. 100% |=========================| 8.0 kB 00:00---> Package libsane-hpoj.i386 0:0.91-9 set to be updated *2 http://hpinkjet.sourceforge.net *3 http://hpoj.sourceforge.netbuild SOHO env2(w/ CentOS4 & BBrouter) 8 toshitsugu Hirasawa
  • 9. 目次 0.2. HP2150 複合機を LOCAL にセットアップする (CENTOS 4)---> Downloading header for hpoj-devel to pack into transaction set.hpoj-devel-0.91-9.i386.rp 100% |=========================| 6.9 kB 00:00---> Package hpoj-devel.i386 0:0.91-9 set to be updated--> Running transaction check--> Processing Dependency: net-snmp for package: hpoj--> Processing Dependency: libnetsnmp.so.5 for package: hpoj--> Restarting Dependency Resolution with new changes.--> Populating transaction set with selected packages. Please wait.---> Downloading header for net-snmp-libs to pack into transaction set.net-snmp-libs-5.1.2-11.EL 100% |=========================| 21 kB 00:00---> Package net-snmp-libs.i386 0:5.1.2-11.EL4.6 set to be updated---> Downloading header for net-snmp to pack into transaction set.net-snmp-5.1.2-11.EL4.6.i 100% |=========================| 33 kB 00:00---> Package net-snmp.i386 0:5.1.2-11.EL4.6 set to be updated--> Running transaction check--> Processing Dependency: libsensors.so.3 for package: net-snmp--> Restarting Dependency Resolution with new changes.--> Populating transaction set with selected packages. Please wait.---> Downloading header for lm_sensors to pack into transaction set.lm_sensors-2.8.7-2.40.3.i 100% |=========================| 23 kB 00:00---> Package lm_sensors.i386 0:2.8.7-2.40.3 set to be updated--> Running transaction checkDependencies Resolved============================================================================= Package Arch Version Repository Size=============================================================================Installing: hpoj i386 0.91-9 base 286 k hpoj-devel i386 0.91-9 base 19 k libsane-hpoj i386 0.91-9 base 43 kInstalling for dependencies: lm_sensors i386 2.8.7-2.40.3 update 426 k net-snmp i386 5.1.2-11.EL4.6 base 491 k net-snmp-libs i386 5.1.2-11.EL4.6 base 1.7 MTransaction Summary=============================================================================Install 6 Package(s)Update 0 Package(s)Remove 0 Package(s)Total download size: 2.9 MIs this ok [y/N]: まずはここまで rpm パッケージをインストールしました。 さて、どんなファイルがインストールされたのか確認しましょう。/etc/rc.d/init.d/hpoj/usr/bin/hpojip-test/usr/bin/ptal-connect/usr/bin/ptal-device/usr/bin/ptal-devid/usr/bin/ptal-hp/usr/bin/ptal-pml/usr/bin/ptal-print/usr/lib/cups/backend/ptal/usr/lib/libhpojip.so.0build SOHO env2(w/ CentOS4 & BBrouter) 9 toshitsugu Hirasawa
  • 10. 0.2. HP2150 複合機を LOCAL にセットアップする (CENTOS 4) 目次/usr/lib/libhpojip.so.0.1/usr/lib/libptal.so.0/usr/lib/libptal.so.0.1/usr/sbin/ptal-cups/usr/sbin/ptal-init/usr/sbin/ptal-mlcd/usr/sbin/ptal-photod/usr/sbin/ptal-printd/usr/share/doc/hpoj-0.91/usr/share/doc/hpoj-0.91/COPYING/usr/share/doc/hpoj-0.91/LICENSE/usr/share/doc/hpoj-0.91/LICENSE.OpenSSL/usr/share/doc/hpoj-0.91/README/usr/share/doc/hpoj-0.91/index.html/usr/share/doc/hpoj-0.91/info-devname.html/usr/share/doc/hpoj-0.91/info-pml-objects.html/usr/share/doc/hpoj-0.91/info-protocols.html/usr/share/doc/hpoj-0.91/libptal.html/usr/share/doc/hpoj-0.91/libsane-hpoj.html/usr/share/doc/hpoj-0.91/ptal-connect.html/usr/share/doc/hpoj-0.91/ptal-device.html/usr/share/doc/hpoj-0.91/ptal-devid.html/usr/share/doc/hpoj-0.91/ptal-hp.html/usr/share/doc/hpoj-0.91/ptal-init.html/usr/share/doc/hpoj-0.91/ptal-mlcd.html/usr/share/doc/hpoj-0.91/ptal-photod.html/usr/share/doc/hpoj-0.91/ptal-pml.html/usr/share/doc/hpoj-0.91/ptal-printd.html/usr/share/doc/hpoj-0.91/setup-build-details.html/usr/share/doc/hpoj-0.91/setup-build.html/usr/share/doc/hpoj-0.91/setup-connect-details.html/usr/share/doc/hpoj-0.91/setup-connect.html/usr/share/doc/hpoj-0.91/setup-photo-details.html/usr/share/doc/hpoj-0.91/setup-photo.html/usr/share/doc/hpoj-0.91/setup-print-details.html/usr/share/doc/hpoj-0.91/setup-print.html/usr/share/doc/hpoj-0.91/setup-scan-details.html/usr/share/doc/hpoj-0.91/setup-scan.html/usr/share/doc/hpoj-0.91/xojpanel.html[root@cent4-23 samba]# PC 電源投入時のサービス hpoj がどうなっているのかを確認します[root@cent4-23 init.d]# pwd/etc/rc.d/init.d[root@cent4-23 init.d]# cat hpoj#!/bin/bash# chkconfig: 2345 54 61# description: ptal-init is the init script and device setup utility # for the HP OfficeJet Linux driver.# Should be started before and stopped after your print spooler (lpd or CUPS).exec /usr/sbin/ptal-init "$@"[root@cent4-23 init.d]#[root@cent4-23 init.d]# file /usr/sbin/ptal-init/usr/sbin/ptal-init: perl script text executable[root@cent4-23 init.d]#build SOHO env2(w/ CentOS4 & BBrouter) 10 toshitsugu Hirasawa
  • 11. 目次 0.2. HP2150 複合機を LOCAL にセットアップする (CENTOS 4) 実体は/usr/sbin/ptal-init なる perl のスクリプトですね。 さっそくセットアップ ( /usr/sbin/ptal-init setup ) しましょう。[root@cent4-23 ~]# /usr/sbin/ptal-init setupStopping the HP OfficeJet Linux driver.----------------------------------------------------------------------This program manages devices controlled by the HP OfficeJet Linuxdriver (hpoj). It attempts to probe your computer for local parallel-and USB-connected devices, and allows you to specify network addressesfor remote JetDirect-connected devices.If you experience any difficulties in detecting your device(s), thenrefer to the hpoj documentation for troubleshooting information.----------------------------------------------------------------------Currently defined device names ([*]=default): (none)----------------------------------------------------------------------Probe for parallel-connected devices ([y]/n)? n----------------------------------------------------------------------Probe for USB-connected devices ([y]/n)? yProbing "/dev/usb/lp0"... Found "PSC 2150 Series" with serial number "MY333D60S81Y". This device will be set up as "mlc:usb:PSC_2150_Series". Press <Enter> alone to continue or <Ctrl-D> to skip this device, or enter a different desired name suffix (without the "mlc:usb:" prefix) here ---> Setting up as "mlc:usb:PSC_2150_Series". Enabling ptal-mlcd and ptal-printd. Enabling ptal-photod.Probing "%001%002"... No device found.Probing "%001%001"... No device found.----------------------------------------------------------------------Press <Enter> alone to continue, or if you would like to add aJetDirect-connected device, then enter its dotted-decimalIP address or hostname here --->----------------------------------------------------------------------Done updating device configuration files stored under /etc/ptal.If you make manual changes to those files, then be sure to runbuild SOHO env2(w/ CentOS4 & BBrouter) 11 toshitsugu Hirasawa
  • 12. 0.3. HP2150 複合機を LOCAL にセットアップする (CENTOS 5) 目次"/usr/sbin/ptal-init start" so they will take effect.----------------------------------------------------------------------Starting the HP OfficeJet Linux driver. mlc:usb:PSC_2150_Series[root@cent4-23 ~]# このセットアップの/var/log/message はNov 24 17:50:09 cent4-23 ptal-mlcd: SYSLOG at ExMgr.cpp:652, dev=<mlc:usb:probe>, pid=3379, e=2, t=1Nov 24 17:50:09 cent4-23 ptal-mlcd: SYSLOG at ExMgr.cpp:652, dev=<mlc:usb:probe>, pid=3386, e=111, tNov 24 17:50:09 cent4-23 ptal-mlcd: SYSLOG at /home/buildcentos/building/BUILD/hpoj-0.91/mlcd/ExMgr.Nov 24 17:50:32 cent4-23 ptal-mlcd: SYSLOG at ExMgr.cpp:652, dev=<mlc:usb:probe>, pid=3402, e=111, tNov 24 17:50:32 cent4-23 ptal-mlcd: ERROR at ExMgr.cpp:2525, dev=<mlc:usb:probe>, pid=3402, e=16, t=Nov 24 17:50:32 cent4-23 ptal-mlcd: SYSLOG at ExMgr.cpp:652, dev=<mlc:usb:probe>, pid=3411, e=111, tNov 24 17:50:32 cent4-23 ptal-mlcd: ERROR at ExMgr.cpp:2525, dev=<mlc:usb:probe>, pid=3411, e=11, t=Nov 24 17:50:55 cent4-23 ptal-mlcd: SYSLOG at ExMgr.cpp:652, dev=<mlc:usb:PSC_2150_Series>, pid=3432Nov 24 17:50:55 cent4-23 ptal-printd: ptal-printd(mlc:usb:PSC_2150_Series) successfully initializedNov 24 17:50:57 cent4-23 ptal-photod: ptal-photod(mlc:usb:PSC_2150_Series) successfully initialized, って感じです。 締めは chkconfig にて サービスの起動の設定をおこないます。起動の順番は lpd より前である必要があります。(うん、本当?)[root@cent4-23 init.d]# pwd/etc/rc.d/init.d[root@cent4-23 init.d]# ls -l | grep hp-rwxr-xr-x 1 root root 266 2 月 22 2005 hpoj[root@cent4-23 init.d]#[root@cent4-23 init.d]# chkconfig hpoj on[root@cent4-23 init.d]# cd ..[root@cent4-23 rc.d]# find . | grep hpoj./rc5.d/S54hpoj./rc2.d/S54hpoj./rc1.d/K61hpoj./init.d/hpoj./rc6.d/K61hpoj./rc4.d/S54hpoj./rc0.d/K61hpoj./rc3.d/S54hpoj[root@cent4-23 rc.d]#0.3 HP2150 複合機を local にセットアップする (centos 5) cent5 の場合 cups をつかってまずはローカルプリンターとしてやってみる 先に書いた CUPS のドキュメントをまずは参照してください。 まずは、USB ケーブル経由で hp2150 を接続すると Nov 5 11:40:51 cent5-19 kernel: ohci_hcd 0000:03:02.0: wakeupbuild SOHO env2(w/ CentOS4 & BBrouter) 12 toshitsugu Hirasawa
  • 13. 目次 0.4. JETADMIN(PORT 9100) によるお手軽ネットワークプリンティングNov 5 11:40:52 cent5-19 kernel: usb 2-2: new full speed USB device using ohci_hcd and address 2Nov 5 11:40:52 cent5-19 kernel: usb 2-2: configuration #1 chosen from 1 choiceNov 5 11:40:52 cent5-19 kernel: drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 2 if 1 alt 0 proto 2 vid 0x03F0Nov 5 11:40:52 cent5-19 kernel: usbcore: registered new driver usblpNov 5 11:40:52 cent5-19 kernel: drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driverNov 5 11:40:52 cent5-19 kernel: Initializing USB Mass Storage driver...Nov 5 11:40:52 cent5-19 kernel: scsi4 : SCSI emulation for USB Mass Storage devicesNov 5 11:40:52 cent5-19 kernel: usbcore: registered new driver usb-storageNov 5 11:40:52 cent5-19 kernel: USB Mass Storage support registered.Nov 5 11:40:57 cent5-19 kernel: Vendor: HP Model: psc 2150 Rev: 1.00Nov 5 11:40:57 cent5-19 kernel: Type: Direct-Access ANSI SCSI revision: 02Nov 5 11:40:57 cent5-19 kernel: sd 4:0:0:0: Attached scsi removable disk sdgNov 5 11:40:57 cent5-19 kernel: sd 4:0:0:0: Attached scsi generic sg8 type 0 と認識する。 つぎは rpm パッケージの確認[hirasawa@cent5-19 ~]$ rpm -aq | grep ^hphpijs-1.6.7-4.1.el5.4hplip-1.6.7-4.1.el5.4[hirasawa@cent5-19 ~]$ rpm -aq | grep cupslibgnomecups-0.2.2-8cups-libs-1.2.4-11.18.el5_2.2hal-cups-utils-0.6.2-5.2.el5cups-1.2.4-11.18.el5_2.2[hirasawa@cent5-19 ~]$ hpoj なんとか (officejet 系)のやつはなくなったんだね。 この状態で http://localhost:631 をたたいて、設定すればこれで OK でした。簡単だねぇ0.4 jetadmin(port 9100) によるお手軽ネットワークプリン ティング 我が家のプリンタは hp の psc2150 で 2 台あったりします. USB 接続のいわゆる複合機 (printer,scanner,copier) ってやつです。 psc2150 には市販のプリンターサーバに接続してあり、このプリンタサーバ (port 9100,いわゆる JetDirect,JetAdmin) 経由で CentOS5.3、Ubuntu9.04 などからネットワークプリントしてます。 で、QP 3分 ネットワーク クッキング! *4 3分でネットワーク接続設定をトライしてみましょう。0.4.1 材料をそろえる • CentOS 5.3, または Ubuntu9.04 あたりの旬の OS が乗っかった PC *4 Q は COMPAQ、P は HP のつもりなんですけど だめ?build SOHO env2(w/ CentOS4 & BBrouter) 13 toshitsugu Hirasawa
  • 14. 0.4. JETADMIN(PORT 9100) によるお手軽ネットワークプリンティング 目次 • 市販のプリンターサーバ     ここでは、 1. Corega FPServerUSB http://corega.jp/product/list/usb/fpsvusb.htm *5 2. SX-1000U わ た し は SX-1000U に 変 身 さ せ ま し た が 、ウ ヒ ン ド ウ ズ 環 境 が な い が た め に あ ま り エ ン ハ ン ス し た 意 味 が な い ?   CG-FPSUBD で も 十 分 か も? http://www.corega.co.jp/product/list/others/fpsubd.htm http://www.silex.jp/products/usbdeviceserver/sx1000u.html *6 *7 をそろえてみました。  Port9100 が Open している製品ならば、どれでも美味し くいただけるとおもいます。 • USB 接続型のプリンター USB 接続型のプリンターが必要ですここではドライバの豊富さから HP のプリン タなんかが失敗がなくていいと思います*8   (ミカクニンですが) リコーさんとか もいいんじゃねーですかな?0.4.2 下準備をおこなう まずは、プリンターサーバの IP アドレスを設定してください。最近のやつはほとんどhttp(port80) から管理画面にはいれるはずです。(ここらへんは自力でがんばってやってください) きちっと設定できたら、ネットワーク越しにつぎのような感じでみえるはず。 我が家の場合は 192.168.1.248 FPServer USB 192.168.1.249 SX-1000Uとなります。 FPServer USB の場合は Printer 自体の電源をいれないと port9100 が開きませんでした。[root@cent5-15 ~]# nmap 192.168.1.248 << FPServer USBStarting Nmap 4.20 ( http://insecure.org ) at 2009-06-06 11:56 JSTInteresting ports on 192.168.1.248:Not shown: 1693 closed portsPORT STATE SERVICE21/tcp open ftp80/tcp open http *5 ヤフオクで 2000 円ぐらい? *6 もとの機種は Corega CG-FPSUBD です。この製品の FW のシグネチャをちょろっと変更することに より SX-1000U に ごにょごにょ *7 ヤフオクで 4000 円ぐらい? *8 インクが高いけどね (笑), 自分で詰め替えれば ごにょごにょbuild SOHO env2(w/ CentOS4 & BBrouter) 14 toshitsugu Hirasawa
  • 15. 目次 0.4. JETADMIN(PORT 9100) によるお手軽ネットワークプリンティング515/tcp open printer9100/tcp open jetdirect << このポートが開いていることMAC Address: 00:0A:79:1A:XX:XX (corega K.K.)Nmap finished: 1 IP address (1 host up) scanned in 12.588 seconds[root@cent5-15 ~]# nmap 192.168.1.249 << SX-1000UStarting Nmap 4.20 ( http://insecure.org ) at 2009-06-06 11:56 JSTInteresting ports on sx-usbserver.hirasawa.local (192.168.1.249):Not shown: 1688 closed portsPORT STATE SERVICE21/tcp open ftp23/tcp open telnet80/tcp open http515/tcp open printer631/tcp open ipp9100/tcp open jetdirect << このポートが開いていること9101/tcp open jetdirect9102/tcp open jetdirect9103/tcp open jetdirectMAC Address: 00:0A:79:66:XX:XX (corega K.K.)Nmap finished: 1 IP address (1 host up) scanned in 1.958 seconds[root@cent5-15 ~]# いちおう、これで下準備は完了です。 Port515(printer)?, Port631(ipp)? とかみえてますが、なんですかそれ?わたしはport9100 しかしりませんなぁ (笑)0.4.3 設定をおこなう (CentOS5.3) • GNOME から、システム → 管理 → 印刷を選択 プリンタ設定ウインドウが開きます • プリンタ設定ウィンドウ上から、”新規プリンタ”をクリック 新規プリンタウィンドウが開きます • 新規プリンタウィンドウ上にて (1) プリンタ名、(2) 説明 (option), (3) 場所 (option) を記述します。  わたしの場合は、(1),(2),(3) をすべて、”psc2150-248”とかにしてます 記述が終了したら、”次に進む”をクリック • ”接続の選択”から AppSocket/HP JetDirect を選択 選択すると、右ペインに (1) ホスト名、(2) ポート番号 (default 9100) が表れるの で、 たとえば、192.168.1.xx など、自分の環境に併せて記述  記述が終了したら、”次に進む”をクリック • プリンタドライバの選択画面 製造元ごとにプリンタドライバの一覧が表れる (例 Alps,Anitech,Apollo,Apple...) ので、ここ (わたしの場合)は HP を選択 build SOHO env2(w/ CentOS4 & BBrouter) 15 toshitsugu Hirasawa
  • 16. 0.4. JETADMIN(PORT 9100) によるお手軽ネットワークプリンティング 目次  つぎに進む • モデルの選択画面 ここ(わたしの場合)は psc 2150 を選択。 つぎに進む • 最終確認画面 ”新規プリンター xxxx を socket://192.168.1.xxx:9100 に作成しようとしていま す” と表示される ”適用”ボタンをクリック 以上で終了。0.4.4 設定をおこなう (Ubuntu 9.04) • GNOME(?) から、システム → システム管理 → 印刷 を選択 プリンタ設定ウインドウが開きます • プリンタ設定ウィンドウ上から、”新規”をクリック 新規プリンタウィンドウが開きます • 新規プリンタウィンドウからデバイスの選択をおこないます ネットワークプリンタ → AppSocket/HP JetDirect を選択 選択すると、右ペインに (1) ホスト名、(2) ポート番号 (default 9100) が表れるの で、 たとえば、192.168.1.xx など、自分の環境に併せて記述  記述が終了したら、”次に進む”をクリック • プリンタドライバの選択画面 製造元ごとにプリンタドライバの一覧が表れる (例 Alps,Anitech,Apollo,Apple...) ので、ここ (わたしの場合)は HP を選択   つぎに進む • モデルの選択画面 ここ(わたしの場合)は psc 2150 を選択。 つぎに進む • プリンタの説明画面 (1) プリンタ名、(2) 説明 (option), (3) 場所 (option) を記述します。  わたしの場合は、(1),(2),(3) をすべて、”psc2150-248”とかにしてます 記述が終了したら、”次に進む”をクリック • ”テストページを印刷しますか?”画面がポップアップ  やっておきましょう。 以上です。build SOHO env2(w/ CentOS4 & BBrouter) 16 toshitsugu Hirasawa
  • 17. 目次 0.4. JETADMIN(PORT 9100) によるお手軽ネットワークプリンティング0.4.5 問題点 • わたしの持っているプリンターサーバ製品は両方とも双方向通信機能の搭載をう たっているけど、使えないよね? インクの残料がわからないのが不便といえば不便。 • HP psc2150 にのみ限っていえば、両面印刷もできるし、一枚あたりの印刷ページ  数もコントロールできるし、まぁ、100 点はあげられないにしても、家庭で使う には 十分とおもいます。(たまに印刷文字が抜けたりするのはご愛嬌ですが、だ れが悪いのは?) • 同様にスキャナーの利用もネットワーク越しだと(わたしには)無理!build SOHO env2(w/ CentOS4 & BBrouter) 17 toshitsugu Hirasawa