第 10 章 使用 cups-browsed 从本地远程打印服务器集成打印机
cups-browsed
服务使用 DNS 服务发现(DNS-SD)和 CUPS 浏览来使全部或过滤的共享远程打印机子集在本地 CUPS 服务中自动可用。
例如,管理员可以在 workstation 上使用此功能,使只有来自可信打印服务器的打印机在应用程序的打印对话框中可用。如果打印服务器共享大量打印机,也可以将 cups-browsed
配置为按某些标准过滤浏览的打印机,以减少列出的打印机的数量。
如果应用程序中的打印对话框使用其它机制(如 DNS-SD)来列出远程打印机,则 cups-browsed
没有影响。cups-browsed
服务也不会阻止用户手动访问未列出的打印机。
先决条件
- CUPS 服务在本地主机上已配置。
一个远程 CUPS 打印服务器存在,且以下条件适用于这个服务器:
- 服务器侦听可从客户端访问的接口。
-
/etc/cups/cups.conf
文件中服务器的<Location />
指令中的Allow from
参数允许从客户端的 IP 地址访问。 - 服务器共享打印机。
- 防火墙规则允许从客户端访问服务器上的 CUPS 端口。
流程
编辑
/etc/cups/cups-browsed.conf
文件并进行以下更改:为您要轮询的每个远程 CUPS 服务器添加
BrowsePoll
参数:BrowsePoll remote_cups_server.example.com BrowsePoll 192.0.2.100:1631
如果远程 CUPS 服务器侦听与 631 不同的端口,请将
:<port>
附加到主机名或 IP 地址。可选:配置过滤器来限制本地 CUPS 服务中显示的打印机。例如,要过滤名称包含
sales_
的队列,请添加:BrowseFilter name sales_
您可以根据不同的字段名称进行过滤,对过滤取反,并匹配确切的值。详情请查看
cups-browsed.conf (5)
手册页中的参数描述和示例。可选:更改轮询间隔和超时来限制浏览周期数:
BrowseInterval 1200 BrowseTimeout 6000
以相同的比例增加
BrowseInterval
和BrowseTimeout
,以避免打印机从浏览列表中消失的情况。这意味着,将BrowseInterval
的值乘以 5 或更高的整数,并将这个结果值用于BrowseTimeout
。默认情况下,
cups-browsed
每 60 秒轮询远程服务器,超时为 300 秒。但是,在有多个队列的打印服务器上,这些默认值可能会花费很多资源。
启用并启动
cups-browsed
服务:# systemctl enable --now cups-browsed
验证
列出可用的打印机:
# lpstat -v device for Demo-printer: implicitclass://Demo-printer/ ...
如果打印机的输出包含
implicitclass
,则cups-browsed
管理 CUPS 中的打印机。
其他资源
-
cups-browsed.conf(5)
手册页