« Googleさん | メイン | 決めゼリフ »

複合プリンタpsc2150をOSXとWindowsで共有(OS10.2,3)

- MacOSX

先日Hewlett-PackardのPSC 2150を購入した。

これはインクジェットカラープリンタ、スキャナ、カラーコピー、 デジカメのメモリからのダイレクトプリントといろいろこなす多機能マシンであり、 フルに機能を使いこなす日はいつ来るんだろうかと思いつつも、なかなかお気に入りである。

このPSC2150のインターフェイスは、USBポート一つのみなので、 MacとWindowsマシンが混在するわが家のLAN環境では、 両方のマシンから同時にプリントできない。

ということで、片方のマシンにつないだプリンタを共有して、 両方のマシンから利用することができれば非常に便利である。 (USBの端子を使うごとに差し替えるのはめんどくさい)

ということで、以下に「MacOSXに接続したHP PSC 2150をWIndowsマシンからも利用できるようにした」過程を記す。

CUPS利用

この技術のニーズはかなり少ないらしく情報収集に難航したが、 やっとたどり着いたのがMacFreekさんの Networkのコーナーの2002年9月25日の記事「WindowsPCからMac(OSX)プリンターの利用(共有)」

これは「MacOSXに接続されているプリンタをWindowsPCから利用する」というもので、 まさにドンピシャである。 詳しくはリンク先を参照してもらうとして、基本的な内容は以下のようなものである。

・MacOSXはUNIXなので、UNIXのプリンタ共有サービス(CUPS)を使える
・CUPSを使えるようにすれば、Windowsマシンからもプリンタが使える

ということでMacFreekさんのサイトの手順に従って作業を進めていく。

CUPS設定

「システム環境設定」→「共有」→「サービス」から、「プリンター共有」を有効にする。
これによって、CUPSを起動している。

次に設定ファイルを変更する。 これにはターミナルからviなどのエディターを使う必要がある。 これから編集するファイルは一般ユーザーには変更できないため、 管理者権限でファイルを編集しなくてはいけないからである。
しょうがないので、viの使い方について以下のサイトで参照し、がんばって編集する。
viエディタの使い方 , viの使い方

(追記:管理者権限を必要とするファイル編集もターミナルを使わない方法あり →管理者権限でのファイル編集

ターミナルで以下のコマンドを打ち込み、vi でファイルを開く。

以下のLineのコメントを外す(行頭の#を消す)。

同様ディレクトリにあるmime.typesを開く。

以下の行を見つけ出して先頭の#を消す。

以上で編集作業は終了。
しかしこのままではCUPSでプリンターを認識しないため、 HPが出しているHPIJSというドライバをインストールする必要がある。

(03' 11/5 追記:Panther(OS10.3)にOSアップグレード後は、 上記二つの変更が元に戻ってしまうため、再度作業が必要)

HPIJS

まずこのプリンタ共有の仕組みは、OSX上でUNIXにおけるプリントのシステムであるCUPS(Common Unix Printing System)というものを使うことによって実現している。

そこで、CUPSでpsc2150を使える状態にする必要がある。

LinuxPrinting.orgを調べて見た所、 PSC2150はHPで配付されているhpijsというドライバを使うとCUPSでプリント可能である ということなので、 Tutrialの記述に従ってHPIJSを使えるようにしよう。

まずHPのサイトのHPIJSインストール手順に従いインストールを行う。 簡単に言うと以下のようなものである。

  1. HPIJSをインストール、確認
  2. GhostscriptがIJSをサポートしているバージョンであることを確認、サポートしていなければバージョンアップ

以下詳細。上記サイトの記述そのまんまだと微妙にダメなので注意(下記太字の部分が変更部分)。

1・ダウンロードとインストール
上記のサイトよりhpijs-1.4.1.tar.gzをダウンロード。 バージョンは、その時ある最新のものを用いる。1.4.1はJan '03時点での最新版。

ここまでで、Makefileというテキストファイルが生成するので、 このファイルをviやJedit、mi、テキストエディターなど、 お好きなテキストエディタで開き、636行目あたりにある下記の行を見つけて以下のように修正。

cp -ax ppd/* $(ppddir)

この行の「-ax」を削除して

cp /ppd/* $(ppddir)

と変更する。これは、cpコマンドに「-ax」というオプションをつけるとエラーが出るため。
できたら、以下のコマンドを入力する。

installは管理者権限でないとできないので、「sudo」を使う。 エラーが出ずにうまくいったら、ターミナルに下のおまじないを入力。

これでhpijsへのpathを通す。

2・確認

ターミナルに以下のコマンドを入力する。

下のような表示が出ればOK。 当然、バージョンが異なれば、1.4.1の数字は変わる。

  Hewlett-Packard Co. Inkjet Server 1.4.1
  Copyright (c) 2001-2003, Hewlett-Packard Co.

3・GhostscriptがIJSをサポートしているか確認

grepの前は小文字の「L」ではなく「 | 」(縦棒)。
正しく入力すると、下のような一行表示される。

uniprint xes cups ijs nullpage

エラーメッセージが表示された場合は、Ghostscriptがインストールされていないことになるので、 がんばって再度インストール。

以上でhpijsドライバをインストールできた。

PPDファイル設置

HPIJS1.5以降では /usr/share/ppd/ にPPDファイルがインストールされるので、この項の作業は不要

このページでPSC2150用のPPDファイルを生成する。

「PPD-O-Matic」の項で

「Select printer」→「psc2150」→「Generate PPD file」

と選択。 生成したPPDファイルがブラウザに表示されるので、「Save as」でローカルに保存する。 ダウンロードしたときに拡張子が.txtになっている場合があるので、その場合は修正する。
'03 8/11注:「Generate PPD file」の下の行で「download」を選択することで、 ブラウザに表示させずに直接ダウンロードできるようになっていた。 拡張子もそのままで良いようだ)

次にそのPPDファイルを管理者権限で/usr/share/cups/model/ に移す。 パーミッションがおかしい場合があるので変更。 下はPPDファイルがデスクトップにある場合の例。

動作確認

これまで変えた設定を反映させるため、CUPSを再起動する。

これでPSC 2150をCUPSから利用できるようになっているはず。
ということで、やっとMacfreekさんのサイトの手順4を参考に、作業を進める。

Jaguarの場合
・アプリケーションのPrint Centerを起動
・ Option/Alt key を押したまま追加ボタンを押す.
・詳細を選ぶ
・下段のプリンターの種類で「該当のプリンター」の一番下にPSC2150が出て来るので、選ぶ
・装置名はNetPrinterとか適当につける。

Pantherの場合
・アプリケーションのPrint Centerを起動
・追加ボタンを押す
・一番上のプルダウンで「USB」を選ぶ
・PSC2150の電源が入って接続されている状態であれば、「製品」に「PSC 2150 Series」が表示される
・PSC 2150 Seriesを選択し、下段のプリンターの種類で「HP」から「HP PSC 2150 , Foomatic + hpijs」を選ぶ

これを共有用の設定とする。

さて、CUPSはブラウザ上で管理することができるインターフェースを持っている。 Safari、IE、Mozillaなどお好きなブラウザで下記の場所を開く。

 http://localhsot:631/

ここで「Manage Printers」を選ぶと、 登録されているプリンタが、プリントセンターと同じ内容で表示される。 そう。これは中身はプリントセンターと同じなのだ。 プリントセンターはこれを見ている、とも言える。

ということは、先程登録したプリンタも表示されているはず。 めでたく表示されていたら、クリックする。されていなかったら、やりなおし・・・

次に、このプリンタで正しく印刷できるかテストするため、 「Print Test Page」をクリックする。 プリンタが動き出せば、OK。 数分経っても動き出さなければ、どこか問題があることになる。

Windowsマシン設定

次はWindowsマシン側からの設定。

Windowsマシン側に要求されるスペックは、USBポートがあることである。 というのも、PSC 2150を使うにはWindowsマシンにドライバをインストールする必要があるのだが、 USBポートを持たないマシンにはドライバのインストールができないからである。

ということで、Windowsマシン側で必要な作業は以下の通り。

  1. ドライバをインストールする
  2. http://192.168.xxx.xxx:631/printers/ (←192.168.xxx.xxxはMacのローカルIP。コントロールパネル「共有」から確認可)
    でMacでのプリンター設定画面にアクセスする。 先程登録したPSC 2150があるはずなので、そのプリンタのアイコンをクリックし、ジャンプした先のページのURLをコピーする。次のようになっているはず。
    http://192.168.xxx.xxx:631/printers/登録したプリンター名
  3. 「設定」→「プリンタとFAX」→右クリックで「プリンタの追加」
  4. 「ネットワークプリンタ」を選択
  5. 「ネットワーク上のプリンタに接続する」を選択し、  2.で調べたURLをペーストする
  6. ドライバを選択する画面になるが、HPを選択してもPSC 2150は出てこないので 適当なダミーのドライバを選択し、登録を終える
  7. 「設定」→「プリンタとFAX」に登録したプリンタが現れるはずなので、 そのプリンタの「プロパティー」→「詳細」からドライバを「PSC 2150」に変更する

7でダミーのドライバを選択するところがポイント。

まとめ

以上でWindowsマシンを用いて、Macに接続したPSC 2150からプリントできるようになったと思う。 このHPIJSやらCUPSやらというのは本来UNIX用の仕組みだけれども、 OSXはUNIX族であるだけに使えてしまうところがおもしろい。

使うたびにUSBプリンタを付けかえたほうが100000倍楽! という方には何の価値もない情報ですが、誰かの役に立てば幸いです。

参考サイト

web拍手とは

トラックバック

このエントリーのトラックバックURL:
http://soap.s216.xrea.com/umu/mt/mt-trackback-script.cgi/423

この一覧は、次のエントリーを参照しています: 複合プリンタpsc2150をOSXとWindowsで共有(OS10.2,3):

» プリンタ共有 送信元 aim-laboratory
MacのプリンタをWindowsから共有する。 うむらうす: 複合プリンタpsc2150をOSXとWindowsで共有 参考にさせて頂きました。... [詳しくはこちら]

» プリンタの設定 送信元 PukiWiki/TrackBack 0.1
プリンタの電源は基本的に常時ONでお願いします! 利用可能なプリンタ sparrow(133.11.31.174) dali(133.11.31... [詳しくはこちら]

» プリンタの設定 送信元 PukiWiki/TrackBack 0.1
プリンタの電源は基本的に常時ONでお願いします! 利用可能なプリンタ sparrow(133.11.31.174) dali(133.11.31... [詳しくはこちら]

» Memo/CUPS 送信元 PukiWiki/TrackBack 0.2
PSC2450をネットワークプリンタにする方法 † というか,以前はLinkStation(Vine Linuxマシン)に接続する だけで何も苦... [詳しくはこちら]

コメント (10)

UNIX素人:

藁をも掴む思いで「OSX PSC2150」のキーワードでこちらに辿りつきました。
僕の悩みを解消してくれる内容に間違い無いのですが、UNIXは全く分からず、色々調べながらご指導通りの作業を行っています。
しかしどうしても、maekfileを修正した後の項からエラーとなり、先に進みません。
こんな質問をこちらに書いて良いのかも分かりませんが、可能であればお教え頂けないでしょうか?

ハル:

どのような状態かわかりませんので、いくつか教えて下さい。
1.HPIJSのバージョンはいくつですか?
2.エラーメッセージはどのようなものですか?
こちらで、OSX10.3.5、hpijs1.6.2で試してみた所、問題なく進めました。おそらく、Makefileの部分で、全角スペースが入るなどしているものと思われます。
一度hpijs-1.x.x.tar.gzをダウンロードし直すのも手かと思います。

UNIX素人:

遅くなり申し訳ありませんでした
ご質問への回答としては、
1.HPIJSのバージョンは hpijs1.4.1 と 1.6.1 の両方で試しました。 OSは Mac OS X 10.3.5 です。
2.以下は、実際にターミナルで行った内容とその結果になります。

% su
Password:
# cd desktop
# cd hpijs-1.6.1
# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... no
checking for gcc... no
checking for cc... no
checking for cc... no
checking for cl... no
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.
# make
su: make: Command not found.
# vi makefile.in   ←ここで実際に修正した箇所は638行目でした
# sudo make instal
sudo: make: command not found

素人目でいま気が付いたのですが、./configure のところでエラーになっているのでしょうか?
先ずは英語を訳して、どういう意味なのか調べてみたいと思っています
以上です。

ハル:

エラーは ./configure で出ていますので、make は実行できていません。
エラーの内容としては、「C言語のコンパイラがない」と言われています。
これは、OSXのインストールCDに付属している、「Xcodes」(Pantherの場合)又は「Developer Tools」(Jaguarの場合)からインストールできますので、その後にもう一度チャレンジしてみて下さい。

また、最初にsuをしてから作業を行っておられるようですが、一般ユーザーのまま行ってみて下さい。
管理者権限が必要なコマンド「make install」だけで、このコマンドを管理者権限で実行するための呪文が「sudo」です。

unix素人:

何度も申し訳ありません
「Xcodes」をインストールしてからご指摘通りにチャレンジしてみましたが、結果はダメみたいです。

手順は以下の通りです

1.configureの実行
 この時、ハルさんの言われた通り一般ユーザーで実行した結果は以下の通りでした。
 % cd desktop/hpijs-1.6.2
 % ./configure
 ./configure: line 950: config.log: Permission denied

 試しに、SUにして実行した結果は以下の通りでした。
 # ./configure
 checking for a BSD-compatible install... /usr/  bin/install -c
 checking whether build environment is sane... yes
 checking for gawk... no
 checking for mawk... no
 checking for nawk... no
 checking for awk... awk
 checking whether make sets $(MAKE)... yes
 checking for gcc... gcc
 checking for C compiler default output... a.out
   中略
 configure: creating ./config.status
 config.status: creating Makefile
 config.status: executing depfiles commands

2.makeの実行
 上記で「これは成功したのかも?」と思い、makeを実行した結果が以下の通りでした。
 # sudo make install
 if g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"hpijs\" -DVERSION=\"1.6.2\"
  中略
 make install-data-hook
 mkdir -p //usr/share/ppd/HP
 rm -f //usr/share/ppd/HP/HP*hpijs*.ppd*
 cp /ppd/* //usr/share/ppd/HP
 cp: /ppd/*: No such file or directory
 make[2]: *** [install-foomatic] Error 1
 make[1]: *** [install-data-am] Error 2
 make: *** [install-am] Error 2

と言う結果でした。
明らかに「Error」の文字があるので撃沈ですよね。
もしかして、「Xcodes」をインストールした後、再起動していないからでしょうか?
もう一度、再起動してからチャレンジしてみます。

unix素人:

makeは上手く行きました。
再起動をして、再度ハルさんの手順通り実行したのですがうまくいかず、試しにSUにしてから./configureとmakeを実行してみたところ、正常に終わったように見えます。

 % su
 # ./configure
 checking for a BSD-compatible install... /usr/bin/install -c
 checking whether build environment is sane... yes
 checking for gawk... no
    中略
 configure: creating ./config.status
 config.status: creating Makefile
 config.status: executing depfiles commands
 
 # make
 if g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKA
    中略
 dj3600_cmap.o ljcolor.o printerproxy.o printerfactory.o

 # rehash
 # hpijs -h
 Hewlett-Packard Co. Inkjet Server1.6.2
 Copyright (c) 2001-2004, Hewlett-Packard Co.

ここで更に問題が発生しました。
gsが動きません。
ハルさんの言われる小川氏のページより「ESP Ghostscript 7.07.1 for MacOSX 10.2/10.3」をダウンロードし、インストール後再起動しました。
いよいよ次のステップへ進められると思い、勇んでいたのですが、結果は以下の通りでした。

 # gs -h igrep ijs
 su: gs: Command not found.

如何なものでしょうか?
ちなみに、configureからgsまでを通しでやってみても結果は同じでした。
是非、我が家のPSC2150をネットワークプリンタとして使えるよう、先人であるハルさんのご協力を心よりお願いします。

ハル:

進んでいるようですね。あと一息です。
さて、gsのインストールは終わっているということで、パスが通っていないように思われます。
とりあえず、以下のコマンドを試してもらえますでしょうか。
/usr/local/bin/gs -h | grep ijs
そのまま進んでも問題ない気もするのですが・・・。

unix素人:

まるで生みの辛さです!

こんなメッセージが表示されました。

 % /usr/local/bin/gs -h | grep ijs
 hpdjportable ibmpro ijs imagen inferno iwhi iwlo iwlq jetp3852 jj100 jpeg
 %

何故かハルさんの言う通りの結果がでません。
やはり、「hpijs」か「ESP」が正常にインストールされていないのでしょうか?
どちらもホームページよりダウンロードし(同時にSTAFF〜(?)が自動起動して解凍される?)、hpijsについては、ご指導の1の2(%cd hpijs-1.6.2)から実行しました。
ESPについては、インストール手順に従い「ESPGhostscript.pkg」をダブルクリックで進めました。
何か問題があるのでしょうか?

ハル:

> hpdjportable ibmpro ijs imagen inferno iwhi iwlo iwlq jetp3852 jj100 jpeg

3つ目に「ijs」と表示されているので、OKですよ。
gsは正しくインストールされています。
次に進んでみて下さい。

unix素人:

本日は会社に泊まり込みで仕事(Windows使い)なので、次へのステップに進めませんが、休憩中のいま、改めてハルさんの当ページを見直して見たところ、随所で素人向けに改訂して頂けているところが感激しました。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

最近のトラックバック

アーカイブ

クリエイティブ・コモンズ

Creative Commons License
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.
Powered by
Movable Type