
Linuxサーバーにcups(cups-pdf仮想プリンター)があるリモートプリンターがあります。 BSD、HP-ux、Linuxはうまく動作します。 Solaris 10ではこの問題があります。ファイルテキストではなくバナーのみが印刷されます。プリンタをこのように設定しました
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サーバーでは、エラーログには何も表示されません。この問題の原因は何ですか?
答え1
解決策を見つけてください。 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
重要なのは「-o document-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
}
答え2
特に、テストテキストファイルが1ページ未満の単純な文書の場合は、より大きなテキストファイルをテストに送信してみてください。プリンタデーモンは、バナーの後の最初のページを印刷する前にページフィードを待っている可能性があります。数年前、1999年に発生した同様の問題を考えてみましょう。
あなたの意見によると、大きなファイルでも出力が出ないようです。たぶんフォームフィード文字を直接送信してみてください。
dev / null URIは、少なくともテスト目的で変更してJetDirectまたは他の場所を指定することをお勧めします。
lpinfo -v
socket://192.168.0.105