CUPS 伺服器需要很長時間才能列印某些作業

CUPS 伺服器需要很長時間才能列印某些作業

我設定了一個 CUPS 伺服器,Windows 電腦可以在該伺服器上進行列印。除了 Adob​​e Acrobat Pro 之外,一切似乎都運作良好(Microsoft Office 和我嘗試過的其他一些程式)。成功執行列印作業需要很長時間(有時約 40 分鐘)。

我將 CUPS LogLevel 設為“調試”,並且我觀察到這些始終是掛起之前的最後幾行:

...
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

我應該注意到,從 Adob​​e Acrobat 列印到 XPS 文件,然後從XPS文件不會產生這樣的延遲。因此看來 Adob​​e Acrobat 是罪魁禍首。

解決方案

我最終透過為印表機選擇非通用的 postscript 驅動程式(在 Windows 中)解決了這個問題。

答案1

您是否查看過 Adob​​e Acrobat 產生的列印檔案的大小?

如果與 Word 相比非常大,這可以解釋延遲。

相關內容