Linuxサーバーにcups(cups-pdf仮想プリンター)のリモートプリンターがあります。 BSD、Hp-ux、およびlinuxは正常に動作します。Solaris10では、この問題が発生します。ファイルのテキストではなく、バナーのみを印刷してください。私はこのようにプリンターを構成しました
svcadm disable svc:/application/print/server:default
svcadm enable svc:/application/print/server:default
lpadmin -x cupsprinter||echo
lpadmin -p cupsprinter -v /dev/null
lpadmin -p cupsprinter -m netstandard
lpadmin -p cupsprinter -o dest=remotesite -o protocol=bsd -o timeout=22
lpadmin -d cupsprinter
lpadmin -p cupsprinter -I postscript -T PS
accept cupsprinter
/usr/bin/enable cupsprinter
Linuxサーバーではエラーログに何も表示されませんこの問題の原因は何ですか?
解決策が見つかりました。 Linuxでは、inetdを使用すると、UNIXクライアントからでもこの行が正しく出力されます。
printer stream tcp nowait lp /usr/lib64/cups/daemon/cups-lpd cups-lpd -o document-format=application/octet-stream -o job-sheets=none,none
重要な部分は「-odocument-format = application/octet-stream -o job-sheets = none、none」です。
Xinetdを使用する場合は、このファイルを使用してください
service printer
{
socket_type = stream
protocol = tcp
wait = no
user = lp
server = /usr/lib64/cups/daemon/cups-lpd
server_args = -o document-format=application/octet-stream -o job-sheets=none,none
}
代わりに、テストとしてより大きなテキストファイルを送信してみてください。特に、テストテキストファイルが1ページ未満の短いドキュメントである場合はそうです。プリンタデーモンは、バナーに続く最初のページを印刷する前に、フォームフィードを待機している可能性があります。数年前のSolarisでの同様の問題を思い出してください。つまり、1999年。
あなたのコメントから、大きなファイルからでも出力が得られないように聞こえます。おそらく、改ページ文字を直接送信してみてください。
Dev/null uriは、少なくともテストのために、代わりにJetDirectまたは他の場所を指定して変更する価値がある場合もあります。
lpinfo -v
socket://192.168.0.105