[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:12819] Which gs driver is for PM-670C?



 こんにちは。島田です。

 Ghostscript をフィルタにして、Linux から Windows 98 のプリンタに印刷し
たいのですが、うまくいきません。
 プリンタは動くのですが、訳の分からない文字列が印刷されるだけです。

 次のように LAN でつながっています。

    -----+-----------+------ 10BASE-T
         |           |
       Linux       Win98 -- PM-670C
      (power)     (vision)

ping も通り、samba や smbfsx で互いにディスクをマウントし合ったりはできて
います。

 /usr/doc/gs-ja 以下の文書を見ながら設定してみたのですが、意味のある印刷
はできていません。

 テスト印刷は、

  zcat /usr/doc/gs-ja/READMEs/gdevepag.doc.gz | head | a2ps - -o - | lpr

としています。

 (意味のない記号の羅列と化してはいますが)印刷はできるので、gs コマンド
に与えるドライバの種類が間違っていると思うのですが、この考えは正しいでしょ
うか。

 Win 95/98 につながれた PM-670C を samba 経由で印刷する例は goo や
Debian-JP の検索でも見つかりませんでした。
 PM-700C の例は見つかりました。それだとドライバに mjc720 を使っていまし
た。 epag の代わりに mjc720 を使ったら、何も印刷されなくなりました(プリ
ンタは動きもしない)。


 それぞれの設定ファイルは次のようにしてあります。

 よろしくお願いいたします。

/etc/printcap

lp|EPSON PM-670C remote printer at vision
        :lp=/dev/pm-670c
        :sd=/var/spool/lpd/lp
        :af=/var/spool/lpd/lp/lp-acct
        :lf=/var/spool/lpd/lp/lp-errs
        :if=/usr/local/sbin/gsf
        :pl#66
        :pw#80
        :pc#150
        :mx#0
        :sh


/usr/local/sbin/gsf

#!/bin/sh
/usr/bin/gs -q -sDEVICE=epag -sOutputFile=- -dNOPAUSE - quit.ps \
  | /usr/local/sbin/smbprint
exit $?


/usr/local/sbin/smbprint

#!/bin/sh -x

# This script is an input filter for printcap printing on a unix machine. It
# uses the smbclient program to print the file to the specified smb-based 
# server and service.
# For example you could have a printcap entry like this
#
# smb:lp=/dev/null:sd=/usr/spool/smb:sh:if=/usr/local/samba/smbprint
#
# which would create a unix printer called "smb" that will print via this 
# script. You will need to create the spool directory /usr/spool/smb with
# appropriate permissions and ownerships for your system.

# Set these to the server and service you wish to print to 
# In this example I have a WfWg PC called "lapland" that has a printer 
# exported called "printer" with no password.

#
# Script further altered by hamiltom@xxxxxxxxxx (Michael Hamilton)
# so that the server, service, and password can be read from 
# a /usr/var/spool/lpd/PRINTNAME/.config file.
#
# In order for this to work the /etc/printcap entry must include an 
# accounting file (af=...):
#
#   cdcolour:\
#	:cm=CD IBM Colorjet on 6th:\
#	:sd=/var/spool/lpd/cdcolour:\
#	:af=/var/spool/lpd/cdcolour/acct:\
#	:if=/usr/local/etc/smbprint:\
#	:mx=0:\
#	:lp=/dev/null:
#
# The /usr/var/spool/lpd/PRINTNAME/.config file should contain:
#   server=PC_SERVER
#   service=PR_SHARENAME
#   password="password"
#
# E.g.
#   server=PAULS_PC
#   service=CJET_371
#   password=""

#
# Debugging log file, change to /dev/null if you like.
#
logfile=/tmp/smb-print.log
# logfile=/dev/null


#
# The last parameter to the filter is the accounting file name.
#   Extract the directory name from the file name.
#   Concat this with /.config to get the config file.
#
eval acct_file=\${$#}
spool_dir=`dirname $acct_file` 
config_file=$spool_dir/.config

# Should read the following variables set in the config file:
#   server
#   service
#   password
eval `cat $config_file`

#
# Some debugging help, change the >> to > if you want to same space.
#
echo "server $server, service $service" >> $logfile

(
# NOTE You may wish to add the line `echo translate' if you want automatic
# CR/LF translation when printing.
#       echo translate
        echo "print -"
        cat
) | /usr/bin/smbclient "\\\\$server\\$service" $password -U $server -N -P >> $logfile



----------------------------------------------------------------------
Mail: shimaden@xxxxxxxxxxx
Home Page: http://www.annie.ne.jp/~shimaden/
島田博幸
Hiroyuki Shimada
----------------------------------------------------------------------