Ubuntu Spool(打印队列)配置指南
Spool(打印队列)是Ubuntu系统中管理打印任务的核心组件,主要通过**CUPS(Common Unix Printing System)**实现。以下是详细的配置步骤及注意事项:
CUPS是Ubuntu打印系统的基础,负责管理打印队列、驱动及网络打印。
sudo apt updatesudo apt install cups foomatic-filters ghostscriptsudo systemctl start cups && sudo systemctl enable cups默认情况下,CUPS仅允许本地用户访问。若需远程访问或允许特定用户管理打印机,需修改配置文件:
sudo nano /etc/cups/cupsd.conflocalhost):Listen localhost:631改为Listen 0.0.0.0:631@LOCAL(本地用户)和@PRINTERS(打印机管理员)访问):<Location />段添加:Order allow,deny
Allow @LOCAL
Allow @PRINTERS
Deny all
sudo systemctl restart cups通过CUPS Web界面或命令行添加打印机(以Web界面为例,更直观):
http://localhost:631(若远程访问,替换为虚拟机/服务器IP)。HP_LaserJet_104W)、描述(可选)、位置(可选),点击Continue。ipp://192.168.1.100/ipp/print),点击Continue。Epson-ActionPrinter_3250-ap3250.ppd),点击Add Printer。使用lpstat命令查看所有打印机及任务状态:
lpstat -p -d
-p:显示打印机列表及状态(idle表示空闲,processing表示处理中);-d:显示默认打印机。使用lp命令将文件加入队列:
lp -d PrinterName /path/to/file.pdf
-d:指定目标打印机(若未指定,默认使用lpoptions -d设置的默认打印机);lp -d HP_LaserJet_104W ~/Documents/report.pdflpq -P PrinterNamecancel JobID(如cancel 12);cancel -a PrinterName。sudo cupsdisable PrinterName;sudo cupsenable PrinterName。使用lpoptions命令设置默认打印机:
lpoptions -d PrinterName
示例:lpoptions -d HP_LaserJet_104W
此后,未指定打印机的lp命令将自动使用默认打印机。
编辑打印机的PPD文件(位于/etc/cups/ppd/),添加自定义选项(如“双面打印”):
sudo nano /etc/cups/ppd/PrinterName.ppd
添加以下内容(示例为双面打印选项):
*OpenUI *Duplex: PickOne
*DefaultDuplex: DuplexNoTumble
*Duplex DuplexNoTumble/Off: ""
*Duplex DuplexTumble/Duplex: ""
*CloseUI *Duplex
保存后重启CUPS:sudo systemctl restart cups。
通过lp命令的-q参数设置任务优先级(1-100,数值越大优先级越高):
lp -d PrinterName -q 50 /path/to/file.pdf
示例:lp -d HP_LaserJet_104W -q 80 urgent_document.pdf(高优先级任务将先处理)。
sudo ufw allow 631/tcp);lpinfo -v查看可用设备;lpinfo -m | grep PrinterModel搜索驱动)。通过以上步骤,可完成Ubuntu系统中Spool(打印队列)的基本配置与管理。根据实际需求,可进一步调整高级选项以满足复杂打印场景。