中村@仙台です.
先日の,プリントアウトができない件では,多くの方に
アドバイスをいただきました.
その甲斐あって,postscriptプリンターでの印刷,および
vine2.1マシンにつながったプリンターへの印刷に成功しました.
有り難うございました.
でそのときの体験に基づく勘所をちょっとまとめて報告します.
(1)lpdデーモンを全部止めてから作業する.
lpdが2個,3個と走っていて
(printtoolで失敗したテスト印刷やlpdのrestartの時に発生したものと思われる.)
それに気づかずに,単に/etc/rc.d/init.d/lpd stopで
作業していたために,なかなか,変更内容がlpdに反映されなかった
ためにうまくいかなかったようです.
/etc/rc.d/init.d/lpd stop
したら,ps auxgw | grep lpd とかやって確かめると確実ですね.
これで,ps printerへは,印刷できました.
(2)/etc/hosts.lpdの記述法
/etc/hosts.lpdは,ローカルに接続されているプリンターに印刷を許すマシン名を
登録する設定ファイルです.
vine2.1マシンへのリモート印刷で失敗していたときにも/etc/hosts.lpdへの
記述はしてあったのですが,書き方が悪かったのでした.
そのときは,クライアントマシンがdhcpでipアドレスをもらってくるために
/etc/hostsへstaticにマシン名を登録しなかったのです.
そこで/etc/hosts.lpdへは192.168.0.0/255.255.255.0と記述することで
良いかなと思っていたのですが,これが誤りでした.
ipアドレスを試しにstaticにクライアントマシンに与えて,/etc/hostsに
クライアントマシンの名前を登録し,/etc/hosts.lpdにipアドレスではなくて,
/etc/hostsの名前を記述したたところ,何事もなかったかのようにプリンターが作動しました.
結局,/etc/hosts.lpdの記述が悪かったのです.
こうして,vine2.1マシンへもリモート印刷が可能になりました.
(蛇足)
実際に試していないのですが,クライアントマシンにdhcpでipアドレスを与える方法を
とりたい場合,(2)により名前の問題が発生します.
そこで,一つの解決策として,dhcpdにクライアントマシンのMACアドレスによりipを
ユニークに決定すれば,ipアドレスは確定しますし,名前も正しく認識されます.
だけど,dhcpを使う場合は一般にクライアント数が準備されているipアドレス空間よりも
大きい場合だから,ナンセンスですね.
アドバイスをくださったみなさん有り難うございました.
--
中村崇志
ntakashi _at_ wind.geophys.tohoku.ac.jp