![CUPS サーバーが特定のジョブの印刷に長い時間がかかる](https://rvso.com/image/1316142/CUPS%20%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%81%8C%E7%89%B9%E5%AE%9A%E3%81%AE%E3%82%B8%E3%83%A7%E3%83%96%E3%81%AE%E5%8D%B0%E5%88%B7%E3%81%AB%E9%95%B7%E3%81%84%E6%99%82%E9%96%93%E3%81%8C%E3%81%8B%E3%81%8B%E3%82%8B.png)
Windows マシンから印刷できる CUPS サーバーをセットアップしました。Adobe Acrobat Pro を除いて、すべて正常に動作しているようです (Microsoft Office および試した他のいくつかのプログラム)。印刷ジョブが正常に実行されるまでには長い時間がかかり、場合によっては 40 分ほどかかります。
CUPS LogLevel を Debug に設定すると、ハングする前の最後の数行が常に次のようになることがわかります。
...
D [25/May/2012:15:09:24 -0700] cupsdSetBusyState: Not busy
D [25/May/2012:15:09:24 -0700] cupsdReadClient: 12 POST /printers/printer HTTP/1.1
D [25/May/2012:15:09:24 -0700] cupsdSetBusyState: Active clients
D [25/May/2012:15:09:24 -0700] cupsdAuthorize: No authentication data provided.
D [25/May/2012:15:09:24 -0700] cupsdReadClient: 12 1.0 Print-Job 2
最後の行の後、しばらくは何も起こりません。
つまり、何度も繰り返される次の行を除いて、何もありません。
D [25/May/2012:15:15:03 -0700] Report: clients=1
D [25/May/2012:15:15:03 -0700] Report: jobs=72
D [25/May/2012:15:15:03 -0700] Report: jobs-active=0
D [25/May/2012:15:15:03 -0700] Report: printers=2
D [25/May/2012:15:15:03 -0700] Report: printers-implicit=0
D [25/May/2012:15:15:03 -0700] Report: stringpool-string-count=8555
D [25/May/2012:15:15:03 -0700] Report: stringpool-alloc-bytes=11344
D [25/May/2012:15:15:03 -0700] Report: stringpool-total-bytes=163552
D [25/May/2012:15:15:15 -0700] cupsdNetIFUpdate: "lo" = localhost:631
D [25/May/2012:15:15:15 -0700] cupsdNetIFUpdate: "eth0" = <server-ip>:631
D [25/May/2012:15:15:15 -0700] cupsdNetIFUpdate: "lo" = localhost:631
D [25/May/2012:15:15:15 -0700] cupsdNetIFUpdate: "eth0" = <server-ip>%eth0:631
これらは、任意の(そして変化する)時間が経過するまで繰り返し表示され、その後、これらの線が表示され、すぐにドキュメントの印刷が開始されます。
D [25/May/2012:15:15:35 -0700] Print-Job http://<server-ip>:631/printers/printer
D [25/May/2012:15:15:35 -0700] [Job ???] Auto-typing file...
I [25/May/2012:15:15:35 -0700] [Job ???] Request file type is application/postscript.
D [25/May/2012:15:15:35 -0700] cupsdMarkDirty(----J-)
...
ただし、Microsoft Word から印刷すると、このようなハングは発生しません。
...
D [25/May/2012:14:17:25 -0700] cupsdReadClient: 17 1.0 Print-Job 2
D [25/May/2012:14:17:25 -0700] Print-Job http://<server-ip>:631/printers/printer
...
ただし、Wireshark と tcpdump では、通信が常に行われていることが示されています。
この問題を解決する方法について何かアイデアはありますか?
編集
基本的に同じ文書を再度印刷しました。今回は、ハングアップする前に何か違う点に気づきました。
D [25/May/2012:15:50:02 -0700] cupsdReadClient: 17 POST /printers/printer HTTP/1.1
D [25/May/2012:15:50:02 -0700] cupsdAuthorize: No authentication data provided.
D [25/May/2012:15:50:02 -0700] cupsdReadClient: 17 1.0 Print-Job 2
D [25/May/2012:15:50:02 -0700] cupsdReadClient: 21 1.0 Get-Jobs 10
D [25/May/2012:15:50:02 -0700] Get-Jobs http://<server-ip>:631/printers/printer
D [25/May/2012:15:50:02 -0700] Returning IPP successful-ok for Get-Jobs (http://<server-ip>:631/printers/printer) from <client-ip>
D [25/May/2012:15:50:23 -0700] Report: clients=4
D [25/May/2012:15:50:23 -0700] Report: jobs=73
D [25/May/2012:15:50:23 -0700] Report: jobs-active=0
D [25/May/2012:15:50:23 -0700] Report: printers=2
...
D [25/May/2012:15:54:23 -0700] Report: stringpool-alloc-bytes=11376
D [25/May/2012:15:54:23 -0700] Report: stringpool-total-bytes=167048
D [25/May/2012:15:54:30 -0700] Closing client 12 after 300 seconds of inactivity...
D [25/May/2012:15:54:30 -0700] cupsdCloseClient: 12
D [25/May/2012:15:54:30 -0700] Closing client 13 after 300 seconds of inactivity...
D [25/May/2012:15:54:30 -0700] cupsdCloseClient: 13
D [25/May/2012:15:54:40 -0700] cupsdNetIFUpdate: "lo" = localhost:631
D [25/May/2012:15:54:40 -0700] cupsdNetIFUpdate: "eth0" = <server-ip>:631
...
D [25/May/2012:15:55:23 -0700] Report: stringpool-total-bytes=167048
D [25/May/2012:15:55:32 -0700] Print-Job http://<server-ip>:631/printers/printer
D [25/May/2012:15:55:32 -0700] [Job ???] Auto-typing file...
I [25/May/2012:15:55:32 -0700] [Job ???] Request file type is application/postscript.
D [25/May/2012:15:55:32 -0700] cupsdMarkDirty(----J-)
...
ファイルは 15:56 にプリンターから出力されましたが、これが遅延の最大の原因であると思われます。
編集2
Adobe AcrobatからXPSファイルに印刷し、その後CUPSサーバープリンターに印刷すると、XPS ファイルそのような遅延は発生しません。したがって、原因は Adobe Acrobat であると思われます。
解決
最終的に、プリンターに非汎用の PostScript ドライバーを選択することで問題を解決しました (Windows の場合)。
答え1
Adobe Acrobat によって生成された印刷ファイルのサイズを確認しましたか?
Word と比較して非常に大きい場合、これが遅延の原因となる可能性があります。