第 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 中的打印机。