我已经成功地将Samba和CUPS一起工作,为95以来的任何变种的IA32和x64的Windows客户端提供Postscript驱动程序,提供出色的,一致的打印接口。smb.conf的打印相关部分是:
[global] load printers = yes printing = cups printcap name = cups
后来这些股票:
[printers] comment = All Printers browseable = no path = /var/spool/samba printable = yes guest ok = no read only = yes create mask = 0700 [print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = yes read only = yes guest ok = no
这成功枚举了所有的CUPS打印机和客户端可以打印罚款。
但是我遇到的问题是,Windows客户端几乎从不会看到除了自己的作业以外的任何其他作业,只是在很短的时间内,大概是在作业正在后台打印到服务器上。 这有一个敲门的效果,如果有人想取消他们的工作之一,他们要么closures打印机(!)或要求我这样做。
我的印象是在[global] ,print printing = cups和printcap name = cups的组合减轻了使用诸如lpq command类的设置使得队列pipe理function可用的需要,因为它直接使用了libcups。 在testing服务器上,虽然为lpq command设置了一个合理的值,但是稍微改变了观察到的行为,使得按F5刷新窗口中的队列就会立即显示一个或多个作业,然后再次消失。 我错过了什么?
我怀疑有一点与[printers]共享上的read only设置有关。 [printers]共享的read only = yes部分是什么意思? 它与队列pipe理任务有关吗? 我无法改变任何可观察到的差异,但我想了解而不是仅仅猜测! 据推测,这与通常的文件共享上下文有所不同,因为[printers]共享在幕后发生了一些打印相关的魔法。 我找不到有关打印机份额的任何特定文档。
本地的windows spool只是把它传送到远程的spool。
我想为了你的愿望工作(每个人都看到每个人排队的东西)只能使用一些Windows打印队列,但我远离一个Windows专家。 我会研究IPP,我也不确定lpd是否devise为将队列发送回客户端,而只是将您的东西提交给服务器。
是不是可以设置CUPS,以便客户可以通过特定的取消策略通过Web界面查看和/或取消自己的工作?
HTTP:// cupsServerIP:631
您可以尝试从Windows使用IPP(将networking打印机定义为http:// server:631 / printers / printer-name,并使用带Microsoft Imagesetter的通用打印机)。
我不记得它是否列出所有的工作,直到他们出列 – 我configuration我的打印机放弃CUPS失败的工作。