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

  • 投稿日:
  • by
  • カテゴリ:

先日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倍楽! という方には何の価値もない情報ですが、誰かの役に立てば幸いです。

参考サイト