当我重新启动时,排队的打印作业将被打印,此后该作业不会打印并显示以下消息:由于“等待打印机可用”而进行处理。
另外,当我运行 vanilla ubuntu 内核时,打印工作正常。
不知道从哪里开始——尝试了所有显而易见的方法,如 google、cups 调试日志、syslog。通读了针对此软件包提交的错误,没有发现任何可能的问题,但可能是错过了。需要一些关于如何继续/关注哪个子系统的指导:cupd 配置或 usb 或 ppds 或内核或……?
我偶然发现,当我运行最新的 vanilla ubuntu 内核时,打印工作正常。(https://wiki.ubuntu.com/Kernel/MainlineBuilds) 因此,我犹豫是否要开始尝试不同的打印驱动程序、cup 配置等,因为不同的内核可以解决问题。我宁愿保留 Ubuntu 内核,因为滚动自己的内核会破坏很多随机的东西。
我经历了https://wiki.ubuntu.com/DebuggingPrintingProblems没有改变。
对我来说,Cups 一直有点黑匣子的感觉,因此,只要有关于运行哪些诊断程序的提示,我就能解决这个问题。我将 cups 日志级别设置为调试,它确实输出了很多内容。其中一行看起来很有趣,因为它包含字符串“failed”:FindDeviceById failed: org.freedesktop.ColorManager.NotFound:device id 'cups-HL-2040-series' does not exist
不确定这意味着什么,或者它与我的间歇性问题有何关系。
# uname -r
3.16.0-28-lowlatency
打印机信息:
HL-2040-series Brother HL-2040 series Brother HL-2040 Foomatic/hl1250 (recommended)
# lsmod | grep usb
usblp 18756 0
btusb 32448 0
bluetooth 446374 22 bnep,btusb,rfcomm
# lpinfo -v
network socket
direct parallel:/dev/lp0
network ipp
network lpd
network http
network https
direct hp
network ipps
direct usb://Unknown/Printer
network ipp14
serial serial:/dev/ttyS0?baud=115200
serial serial:/dev/ttyS1?baud=115200
network smb
direct hpfax
更新:我发现了失败的原因,以及为什么 grepping “failed” 不起作用。应该 grepping “Failed”。作业 61 打印正常,但谷歌显示还有其他人已经解决了这个问题,有些人早在 2010 年就解决了这个问题,所以这可能是最近的内核错误回归。
D [19/Dec/2014:09:57:57 -0800] [Job 62] Switching USB device configuration: 0 -> 1 D [19/Dec/2014:09:57:57 -0800] cupsd is not idle any more, canceling shutdown. D [19/Dec/2014:09:57:57 -0800] [Job 62] Failed to set configuration 1 for 04f9:0028 D [19/Dec/2014:09:57:57 -0800] [Job 62] STATE: -connecting-to-device D [19/Dec/2014:09:57:57 -0800] cupsdMarkDirty(---J-) D [19/Dec/2014:09:57:57 -0800] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Dirty files" D [19/Dec/2014:09:57:57 -0800] Discarding unused printer-state-changed event... D [19/Dec/2014:09:57:57 -0800] cupsd is not idle any more, canceling shutdown. D [19/Dec/2014:09:57:57 -0800] cupsd is not idle any more, canceling shutdown. D [19/Dec/2014:09:57:57 -0800] [Job 62] Failed to re-attach "usblp" kernel module to 04f9:0028
答案1
似乎是电缆出了问题。为什么它能可靠地打印一次,然后在电源循环后阻塞,这似乎不合逻辑。但更换电缆解决了这个问题。
希望这有助于提醒下一个人在对错误日志进行中世纪处理之前检查硬件......