vine-users ML アーカイブ



[vine-users:063669] Re: プリンターを接続したい

  • From: 長南洋一 <cyoichi@xxxxxxxxxxxxxxx>
  • Subject: [vine-users:063669] Re: プリンターを接続したい
  • Date: Sat, 27 Dec 2003 19:17:16 +0900 (JST)
長南です。

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