長南です。
PIXUS については何も知らないので、見当違いかもしれませんが。
Lawrence さんのメールより [vine-users:063659]
>
> pixus 860iusbraw:\
> :lp=/dev/usb/lp0 :\
> :sd=/var/spool/lpd/pixus860iusbraw:\
> :mx#0:\
> :sh:\
> :rw:\
> :if=/usr/local/bin/pixus860i_raw:
>
> pixus 860iusbps:\
> :lp=/dev/usb/lp0 :\
> :sd=/var/spool/lpd/pixus860iusbps:\
> :mx#0:\
> :sh:\
> :rw:\
> :if=/usr/local/bin/pixus860i_ps:
> (3)/etc/init.d/lpd restartでenter
この /etc/printcap はご自分でお書きになったのですか。
これを見て、まず気がつくのは、
1) デフォルトのプリンタ lp がない。
lp のエントリーがない場合は、最初に記述したプリンタがデフォルトに
なるんでしたっけ(違ったかな)。だとしたら、Mozilla などからは
pixus860i_raw の方にデータが渡されているわけです。 pixus860i_raw と
いうのは、どういうフィルターかわかりませんが、Linux ではポスト
スクリプトファイル(ps ファイル)を印刷するのが基本です。pixus860i_raw
という名前ではポストスクリプトのデータを印刷できなさそうな気がします。
いづれにしろ、lp エントリーを作った方が無難です。
名前からして、おそらく pixus860i_ps の方が ps ファイルを処理する
フィルターなのでしょう(キヤノン・ドライバのマニュアルで確認して
ください)。でしたら、pixus 860iusbps を lp にするべきだと思います。
また、長いプリンタ名は使いにくいので、pixus 860iusbraw にも別名を
付けた方がよさそうです。こんなふうに。
raw|pixus 860iusbraw:\
:lp=/dev/usb/lp0 :\
(省略)
lp|pixus 860iusbps:\
:lp=/dev/usb/lp0 :\
(省略)
# プリンタ名(厳密にはキュー名というのかも)に空白は入れられるん
# でしたっけ。まあ大丈夫だと思いますが、pixus_860iusbpsと
# アンダーバーにしておけば間違いありません。lpr -P で指定
# するときも楽ですし。
2) :lp=/dev/usb/lp0 :\ などの直前の空白はタブですが、タブになって
いますか。
3) PIXUS850i のドライバをダウンロードなさったそうですが、/usr/local/bin
に pixus860i_raw、pixus860i_ps というファイルは存在しますか。
pixus850i_ps などをリネームしたのですか。それで、
> (6)元のドライバ名のpixus850iに変更しても同様です。
というのは元の pixus850i_ps などの名前に戻したということ?
pixus850i_ps と元の名前にしておいた方がよいだろうと思います。
PIXUS のドライバ自身やユーティリティが内部でその名前を利用して
いるかもしれませんから。
4) /var/spool/lpd/pixus860iusbps などのスプールディレクトリは存在しますか。
オーナー/グループやパーミッションが lp lp drwx______ になっていますか。
以上のことを確かめてから、lpd を restart し、適当な ps ファイルを選んで
コマンドラインから、
lpr -Plp hoge.ps (プリンタが lp なら -Plp は省略できる)
でテストしてみてください。うまく行かなかった場合は、出力されるエラー
メッセージや /var/spool/lpd/pixus860iusbp/status* を見ると(ほかにも
エラーログらしきものがあったら、それも)、何かわかるかもしれません。
そして、コマンドラインから印刷ができたら、アプリケーションからの印刷を
試してみる。
# コマンドラインから plain text を印刷するときは、一旦ポストスクリプト・
# データに変換してやらなければなりません。たとえば、こんなふうに。
#
# $ mpage -1 -o hoge.txt | lpr -Plp
--
長南洋一
cyoichi@xxxxxxxxxxxxxxx