你好,世界!
无论你是办公,还是学习,打印文档都是一个必不可少的日常应用。如何在 GNU 系统上进行打印呢?
GNU 系统最常用的打印管理软件是 CUPS。CUPS 是自由软件,它使用 IPP(因特网打印协议)与打印机通信,支持本地打印机和网络打印机。现代打印机基本上都支持 IPP,所以 CUPS 直接支持它们;对于一些较早的打印机,则在安装相应的打印机驱动(通常是 PPD 文件)之后也可以正常获得 CUPS 支持。
CUPS 提供网页管理界面(通常是 localhost:631),通过浏览器打开 CUPS 的网络管理页面你可以直观地检测已连接的打印机、添加打印机、设置打印机参数并管理打印任务。
本文的目的不是详细介绍 CUPS 的网页管理,而是想给大家按照操作步骤介绍一些 CUPS 的命令行管理。
几乎所有的 GNU/Linux 发行版都带有 CUPS 软件包,所以只需按照发行版的安装方式安装即可,比如在 Debian GNU/Linux 下
sudo apt install cups
安装之后,有时需要做 CUPS 服务启动和用户组分配:
systemctl start cups.service
systemctl enable cups.service # 系统启动是自动启动 CUPS
gpasswd -a username lp # 添加用户到打印组
gpasswd -a username lpadmin # 添加用户到打印管理组
当你连接了本地打印机或本地网络中有共享打印机时,你可以使用 CUPS 命令查看你的电脑是否发现了可用的打印机:
lpinfo -v
它会列出可用打印机的链接(link-of-printer:e.g.,dnssd://foo...),包括本地和网络。
然后,你可以再用命令
lpinfo -m
列出打印机驱动的列表(driver-of-printer:e.g.,drv:///bar...)。
在检测到打印机并找到其驱动之后,我们就可以使用 lpadmin 命令来添加打印机,举例如下:
lpadmin -p printer-name -D "打印机描述" -L "打印机位置" -E -v link-of-printer -m driver-of-printer -o PageSize=A4 -o printer-is-shared=true
其中, -E:表示启用该打印机 -o:可以定义一系列标准的打印机默认设置值,比如纸张、是否共享等。
如果你想把一个打印机设置为默认打印机,可以使用命令:
lpadmin -d printer-name
删除打印机的命令是:
lpadmin -x printer-name
通常你的文本编辑器、浏览器或其他图形界面的工具都会有打印菜单。你在打印菜单可以找到已经设置好的打印机,并且可以打印。如果要从命令行打印,可以输入命令:
lp -d printer-name file-name
或者输入命令:
lpr -P printer-name file-name
当然,CUPS 还支持配置文件和编程控制。具体可以查看 CUPS 网站。
如果你对 GNU 系统的打印机管理还有问题,立伯乐或许可以帮你。
让 CUPS 带给你打印自由的感觉!