FreeBSD 上的打印服务器(CUPS)
最后更新于
最后更新于
原文链接
本文介绍了如何在 FreeBSD 上配置 CUPS。
CUPS(Common UNIX Printing System)为基于 UNIX® 的操作系统提供了一层可移植的打印支持。它由 Easy Software Products 开发,旨在为所有 UNIX® 系统的供应商和用户推广标准的打印解决方案。
CUPS 使用互联网打印协议(IPP)作为管理打印任务和队列的基础。它还支持 Line Printer Daemon(LPD)、Server Message Block(SMB)和 AppSocket(又名 JetDirect)协议,但功能有所简化。CUPS 增加了网络打印机浏览和基于 PostScript 打印机描述(PPD)的打印选项,支持在 UNIX® 环境中进行实际的打印操作。因此,CUPS 非常适合在 FreeBSD、Linux®、Mac OS® X 或 Windows® 的混合环境中共享和访问打印机。
CUPS 的官方网站是 。
要使用预编译的二进制文件安装 CUPS,可以在 root 终端中执行以下命令:
另外,一些可选的但推荐安装的包有 和 ,它们为多种打印机提供了驱动程序和实用工具。安装完成后,CUPS 的配置文件可以在目录 /usr/local/etc/cups 中找到。
安装完成后,需要编辑一些文件来配置 CUPS 服务器。首先,创建或修改文件 /etc/devfs.rules,并添加以下内容,以设置所有潜在打印机设备的正确权限,并将打印机与 cups
用户组关联:
注意
接下来,在 /etc/rc.conf 中添加以下两行:
这两项设置将在启动时启动 CUPS 打印服务器,并调用上述创建的本地 devfs 规则。
为了在某些 Microsoft® Windows® 客户端下启用 CUPS 打印,应该取消注释 /usr/local/etc/cups/mime.types 和 /usr/local/etc/cups/mime.convs 文件中的以下行:
完成这些更改后,必须重新启动 devfs 和 CUPS 系统,可以通过重启计算机或在 root 终端中执行以下两个命令:
在安装并配置 CUPS 系统后,管理员可以开始配置附加到 CUPS 打印服务器的本地打印机。这一过程与在其他基于 UNIX® 的操作系统(如 Linux® 发行版)上配置 CUPS 打印机非常相似,甚至完全相同。
CUPS 服务器已配置并将打印机添加并发布到网络之后,下一步是配置客户端,即将访问 CUPS 服务器的机器。如果有一台桌面计算机既充当服务器又充当客户端,那么很多信息可能不需要配置。
如果 CUPS 客户端难以发现网络上共享的其他 CUPS 打印机,有时可以创建或编辑文件 /usr/local/etc/cups/client.conf,并在其中添加以下条目:
在这种情况下,server-ip 应替换为网络上 CUPS 服务器的本地 IP 地址。
在 XP 之前的 Windows® 版本中,原生不支持与基于 IPP 的打印机进行网络连接。然而,Windows® XP 及更高版本支持这一功能。因此,在这些版本的 Windows® 中添加 CUPS 打印机非常简单。一般来说,Windows® 管理员会运行 Windows® Add Printer
向导,选择 Network Printer
,然后输入以下语法的 URI:
注意:X、Y 和 Z 应替换为 /dev/usb 目录中与打印机对应的目标 USB 设备。要查找正确的设备,可以查看 的输出,ugenX.Y 列出的是打印机设备,它是 /dev/usb 中 USB 设备的符号链接。
管理和管理 CUPS 服务器的主要方式是通过基于 Web 的界面,可以通过启动浏览器并在浏览器的 URL 栏中输入 来访问。如果 CUPS 服务器位于网络上的另一台机器上,只需将服务器的本地 IP 地址替换 localhost
。CUPS 的 Web 界面非常直观,其中有打印机和打印任务管理、用户授权等部分。此外,在管理界面的右侧有几个复选框,方便访问常用设置,如是否共享连接到系统的打印机、是否允许远程管理 CUPS 服务器,以及是否允许用户对打印机和打印任务授予额外的访问权限。
添加打印机通常很简单,只需在 CUPS Web 界面的管理屏幕上点击 Add Printer
,或者点击 New Printers Found
按钮。当出现 Device
下拉框时,只需选择所需的本地连接打印机,然后继续操作。如果之前安装了 Port 或包 或 ,那么后续界面中会提供其他打印驱动程序,可能提供更多的稳定性或功能。
CUPS 也需要在 UNIX® 客户端上安装。在客户端上安装了 CUPS 后,通常桌面环境(如 GNOME 或 KDE)的打印管理器会自动发现网络上共享的 CUPS 打印机。或者,可以在客户端机器上访问本地 CUPS 界面,输入 并在管理部分点击 Add Printer
。当出现 Device
下拉框时,只需选择自动发现的网络 CUPS 打印机,或者选择 ipp
或 http
,然后输入网络 CUPS 打印机的 IPP 或 HTTP URI,通常有以下两种格式之一:
如果使用的是较旧版本的 Windows®,没有原生的 IPP 打印支持,那么连接到 CUPS 打印机的常见方式是将 与 CUPS 一起使用,然而这超出了本章的讨论范围。
CUPS 的常见问题通常与权限有关。首先,检查如上所述的 权限。接着,检查文件系统中创建的设备的实际权限。确保用户是 cups
组的成员也很有帮助。如果 CUPS Web 界面中的权限复选框似乎无法正常工作,可以尝试手动备份位于 /usr/local/etc/cups/cupsd.conf 的主配置文件,并编辑其中的各种配置选项,尝试不同的配置组合。以下是一个可以测试的示例 /usr/local/etc/cups/cupsd.conf 配置文件。请注意,此示例 cupsd.conf 为了更容易配置牺牲了一些安全性;若管理员成功连接到 CUPS 服务器并配置好客户端,建议重新审视该配置文件并开始限制访问。