介绍
在本实验中,你将学习如何在 Linux 环境中使用 CUPS(Common Unix Printing System)打印系统和 cupsd 命令来管理打印机并配置打印机设置。你将首先了解 CUPS 打印系统,包括检查 CUPS 服务的状态和探索 CUPS 的 Web 界面。然后,你将学习如何使用 cupsd 命令管理打印机,例如列出可用打印机和添加新打印机。最后,你将探索如何配置打印机设置,例如设置默认打印机和调整打印机选项。本实验提供了 CUPS 打印系统的实际示例和动手操作经验,这是 Linux 系统管理中的一项关键技能。
了解 CUPS 打印系统
在这一步中,你将了解 CUPS(Common Unix Printing System)打印系统,这是许多 Linux 发行版中使用的标准打印系统。CUPS 提供了一种灵活且强大的方式来管理系统上的打印机和打印任务。
首先,让我们检查 CUPS 服务的状态:
sudo systemctl status cups
示例输出:
● cups.service - CUPS Printing Service
Loaded: loaded (/lib/systemd/system/cups.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2023-04-28 12:34:56 UTC; 1min 23s ago
Main PID: 1234 (cupsd)
Status: "Waiting for incoming connections"
如你所见,CUPS 服务正在系统上运行并处于活动状态。
接下来,让我们探索 CUPS 的 Web 界面,它提供了一种用户友好的方式来管理打印机和打印任务。打开一个网页浏览器并访问 http://localhost:631。这将带你进入 CUPS 的 Web 界面,在这里你可以执行各种任务,例如添加打印机、管理打印任务以及配置打印机设置。
花一些时间探索 CUPS 的 Web 界面,并熟悉其功能和特性。
使用 cupsd 命令管理打印机
在这一步中,你将学习如何使用 cupsd 命令管理打印机,cupsd 是 CUPS 打印守护进程。cupsd 命令提供了一个命令行界面,用于与 CUPS 打印系统进行交互。
首先,让我们列出系统上可用的打印机:
sudo cupsd -t
示例输出:
scheduler is running
0 jobs in the queue
Rendering completed 0 jobs
Processed 0 jobs
Accepted 0 jobs
Rejected 0 jobs
Pending 0 jobs
Stopped 0 jobs
Canceled 0 jobs
Aborted 0 jobs
Completed 0 jobs
Purged 0 jobs
如你所见,当前系统上没有配置任何打印机。
要添加新打印机,你可以使用 lpadmin 命令,它是 CUPS 包的一部分。让我们添加一个名为 "MyPrinter" 的新打印机:
sudo lpadmin -p MyPrinter -v ipp://localhost/printers/MyPrinter -P /usr/share/ppd/cupsfilters/generic.ppd -E
此命令创建了一个名为 "MyPrinter" 的新打印机,并指定了 URI 和 PPD(PostScript Printer Description)文件。
再次列出可用打印机,运行:
sudo cupsd -t
示例输出:
scheduler is running
0 jobs in the queue
Rendering completed 0 jobs
Processed 0 jobs
Accepted 0 jobs
Rejected 0 jobs
Pending 0 jobs
Stopped 0 jobs
Canceled 0 jobs
Aborted 0 jobs
Completed 0 jobs
Purged 0 jobs
1 printer
MyPrinter accepting requests since Fri 2023-04-28 12:34:56 +0000
现在你可以在可用打印机列表中看到新添加的 "MyPrinter"。
使用 cupsd 配置打印机设置
在这一步中,你将学习如何使用 cupsd 命令配置打印机设置。
首先,让我们检查 "MyPrinter" 打印机的当前配置:
sudo cupsd -p MyPrinter -l
示例输出:
printer MyPrinter
State: idle, accepting jobs
Device URI: ipp://localhost/printers/MyPrinter
Printer is shared
Printer is located in .
Printer is connected
Printer driver: generic
Printer is enabled and ready to print
如你所见,打印机当前处于 "idle" 状态,并且正在接受任务。
现在,让我们将打印机的默认纸张尺寸更改为 A4:
sudo lpadmin -p MyPrinter -o media=a4
为了验证更改,让我们再次检查打印机配置:
sudo cupsd -p MyPrinter -l
示例输出:
printer MyPrinter
State: idle, accepting jobs
Device URI: ipp://localhost/printers/MyPrinter
Printer is shared
Printer is located in .
Printer is connected
Printer driver: generic
Printer is enabled and ready to print
Default paper size: a4
你可以看到默认纸张尺寸现在设置为 "a4"。
接下来,让我们暂停打印机:
sudo cupsd -p MyPrinter -o printer-state-reasons=paused
为了验证更改,再次检查打印机状态:
sudo cupsd -p MyPrinter -l
示例输出:
printer MyPrinter
State: paused, accepting jobs
Device URI: ipp://localhost/printers/MyPrinter
Printer is shared
Printer is located in .
Printer is connected
Printer driver: generic
Printer is disabled and not ready to print
Default paper size: a4
打印机现在处于 "paused" 状态,并且无法打印。
总结
在本实验中,你了解了 CUPS(Common Unix Printing System)打印系统,这是许多 Linux 发行版中使用的标准打印系统。你探索了 CUPS 的 Web 界面,它提供了一种用户友好的方式来管理打印机和打印任务。你还学习了如何使用 cupsd 命令(CUPS 打印守护进程)从命令行管理打印机,包括列出可用打印机和添加新打印机。



