使用 CUPS 命令行实用程序设置和管理打印机
本节提供 CUPS 命令的简介并介绍如何设置和管理打印机。
CUPS 命令行实用程序
CUPS 提供用于设置打印机以及使网络中的系统可以访问这些打印机的各种命令。此外,CUPS 还支持多种特定于打印机的选项,通过这些选项,您可以控制打印机配置。下表列出了常用的 CUPS 命令。
注 - 某些 CUPS 命令的名称与传统 LP 打印命令的名称相同,但受 CUPS 管理的命令的行为可能会有所不同。
表 15-1 CUPS 命令行实用程序
|
如何使用 lpadmin 命令设置打印机
- 将打印机连接到系统,然后打开打印机的电源。
有关硬件交换机和布线要求的信息,请参阅打印机供应商的安装文档。
- 成为管理员。
有关更多信息,请参见《Oracle Solaris 管理:安全服务》中的"如何获取管理权限"。
- 结合使用 lpadmin 命令与 -p 选项将打印机添加到 CUPS。
此处仅显示 CUPS lpadmin 命令的最常用选项。有关其他选项的信息,请参见 lpadmin(8) 手册页。
$ /usr/sbin/lpadmin -p printer-name -E -v device -m ppd
-p
指定要添加的打印机的名称。
-E
启用目标并接受作业。
-v
设置打印队列的 device-uri 属性。
-m
通过型号目录或使用其中一个驱动程序接口来设置打印机的 PPD 文件。
请参见此过程结尾处的示例。
- 启用打印机以接受打印请求并打印这些请求。
$ cupsaccept printer-name $ cupsenable printer-name
- 验证是否正确配置了打印机。
$ lpstat -p printer-name -l
示例 15-1 添加已连接到并行端口的打印机
要添加已连接到并行端口的 HP DeskJet 打印机 DeskJet,需要键入以下命令:
$ /usr/sbin/lpadmin -p DeskJet -E -v parallel:/dev/lp1 -m deskjet.ppd
deskjet.ppd
CUPS 附带的 HP DeskJet 驱动程序的 PPD 文件
示例 15-2 添加使用 PPD 文件的打印机
要使用 IP 地址为 10.1.1.1 的 JetDirect 网络接口添加 HP LaserJet 打印机 LaserJet,需要键入以下命令:
$ /usr/sbin/lpadmin -p LaserJet -E -v socket://10.1.1.1 -m laserjet.ppd
laserjet.ppd
CUPS 附带的 HP LaserJet 驱动程序的 PPD 文件
示例 15-3 添加已连接到串行端口的打印机
要添加已连接到串行端口的点阵打印机,需要键入以下命令:
$/usr/sbin/lpadmin -p DotMatrix -E -m epson9.ppd \ -v serial:/dev/ttyS0?baud=9600+size=8+parity=none+flow=soft
指定串行端口、波特率、位数、奇偶校验和流量控制。如果不需要流量控制,请删除 +flow=soft 属性。
设置缺省打印机
您可以按以下某一方法指定缺省打印机:
通过设置 LPDEST 或 PRINTER 环境变量。
LPDEST 环境变量确定打印机目标。如果未设置 LPDEST 变量,将使用 PRINTER 变量。PRINTER 变量确定输出设备或目标。如果 LPDEST 和 PRINTER 变量均未设置,则使用未指定的设备。有关通过指定环境变量来设置缺省打印机的说明,请参见如何在命令行中设置缺省打印机。
通过使用新的 lpoptions 命令。
使用此命令可显示或设置打印机选项和缺省值。有关使用 CUPS 命令设置缺省打印机的说明,请参见如何在命令行中设置缺省打印机。有关更多信息,请参见 lpoptions(1) 手册页。
打印命令将按以下顺序搜索缺省打印机:
通过 lp 命令和 -d 选项设置的打印机名称
LPDEST 环境变量的值
PRINTER 环境变量的值
有关使用 CUPS Web 浏览器界面设置打印机的说明,请参见使用 CUPS Web 浏览器界面设置和管理打印机 。
如何在命令行中设置缺省打印机
缺省打印机可以是本地打印机或远程打印机。
- 成为要在其中设置缺省打印机的系统的管理员。
- 使用以下某一方法设置系统的缺省打印机:
- 通过指定 PRINTER 变量:
$ export PRINTER=printer-name
其中 printer-name 表示要指定为系统缺省打印机的打印机的名称。如果您不指定 printer-name,系统将设置为没有缺省打印机。
注 - 结合使用 lp 命令与 -d 选项时,将指定目标打印机(此打印机可能不是缺省打印机)。如果未指定 -d 选项,print 命令将搜索 PRINTER 环境变量中打印机的相关信息。
- 通过指定 LPDEST 变量:
$ export LPDEST=printer-name
其中 printer-name 表示要指定为系统缺省打印机的打印机的名称。如果您不指定 printer-name,系统将设置为没有缺省打印机。
注 - 如果同时设置了 LPDEST 和 PRINTER 环境变量,将优先使用 LPDEST 变量。
- 通过使用 lpoptions 命令:
$ lpoptions -d printer-name
-d
指定目标打印机。
printer-name
表示指定为系统缺省打印机的打印机的名称。如果您不指定 printer-name,系统将设置为没有缺省打印机。
有关更多信息,请参见 lpoptions(1) 手册页。
- 通过指定 PRINTER 变量:
- 验证系统的缺省打印机。
$ lpstat -d
- 要打印到缺省打印机,请键入以下命令:
$ lp filename
示例 15-4 通过指定 PRINTER 变量设置缺省打印机
以下示例显示了如何使用 PRINTER 变量将打印机 luna 设置为系统的缺省打印机。
$ export PRINTER=luna $ lpstat -d system default destination: luna
示例 15-5 通过指定 LPDEST 变量设置缺省打印机
以下示例显示了如何通过指定 LPDEST 变量将打印机 luna 设置为系统的缺省打印机。
$ export LPDEST=luna $ lpstat -d system default destination: luna
示例 15-6 使用 lpoptions 命令设置缺省打印机
以下示例显示了如何将打印机 luna 设置为系统的缺省打印机。如果未设置 LPDEST 或 PRINTER 环境变量,则打印机 luna 将用作系统的缺省打印机。
$ lpoptions -d luna $ lpstat -d system default destination: luna
lpoptions 命令用于创建一个 ~/.lpoptions 文件,此文件中包含对应于缺省打印机 luna 的项。缺省情况下,所有打印作业现已定向到 luna 打印机。
如何打印至指定的打印机
- 可选验证打印机的状态。
$ lpstat -p printer-name
- 发出 lp 命令时提供目标打印机的名称。
$ lp -d destination-printer filename
-d
指定目标打印机。
destination-printer
表示要指定为目标打印机的打印机的名称。
filename
指定要打印的文件名。
注 - 您还可以结合使用 lpr 命令与 -p 选项向特定的打印机提交打印请求。有关更多信息,请参见 lpr(1 ) 手册页。
示例 15-7 使用 lp 命令打印到指定的打印机
以下示例显示了如何将打印机 luna 设置为目标打印机。
$ lp -d luna abc.ps request id is luna-1 (1 file(s))$ lpstat -d system default destination: saturn
lp 命令的 -d 选项优先于 LPDEST 和 PRINTER 环境变量。
请注意,在此示例中,缺省打印机为 saturn。
如何验证打印机的状态
lpstat 命令显示有关可访问的打印机和作业的信息。
- 登录到网络上的任何系统。
- 可选验证所有打印机或特定打印机的状态。
此处仅显示最常用的选项。有关其他选项的信息,请参见 lpstat (1) 手册页。
$ lpstat [-d] [-p] printer-name [-l] [-t]
-d
显示系统的缺省打印机。
-p printer-name
显示打印机是处于活动状态还是空闲状态以及启用或禁用打印机的时间。
您可以使用此命令指定多个打印机名称。使用空格或逗号来分隔打印机名称。如果您使用空格,请用引号将打印机名称列表引起来。如果不指定 printer-name,将显示所有打印机的状态。
-l
显示打印机和作业的特征。
-t
显示 CUPS 的相关状态(包括所有打印机的状态)信息,例如打印机是否处于活动状态以及是否接受打印请求。
示例 15-8 显示打印机的状态
要显示打印机 luna 的状态,请键入以下命令:
$ lpstat -p luna printer luna is idle. enabled since Jul 12 11:17 2011. available.
要显示系统的缺省打印机,请键入以下命令:
$ lpstat -d system default destination: luna
要显示打印机 asteroid 和 luna 的说明,请键入以下命令:
$ lpstat -p "asteroid, luna" -D printer asteroid faulted. enabled since Jan 5 11:35 2011. available. unable to print: paper misfeed jamDescription: Printer by break room printer luna is idle. enabled since Jan 5 11:36 2011. available. Description: Printer by server room.
要显示打印机 luna 的特征,请键入以下命令:
$ lpstat -p luna -l printer luna is idle. enabled since September 29, 2011 05:20:57 PM BST
如何将文件打印到缺省打印机
- 登录到网络上的任何系统。
- 可选验证打印机的状态。
$ lpstat -p printer-name
- 按以下某一方法发出一个打印请求:
- 通过使用 lp 命令:
$ lp filename
- 通过使用 lpr 命令:
$ lpr filename
注 - 此过程中仅显示基本命令。有关其他选项的信息,请参见 lp(1) 和 lpr(1) 手册页。
- 通过使用 lp 命令:
如何删除打印机和打印机访问
- 成为打印客户机上有权删除打印机的管理员。
- 在作为打印客户机的系统上,删除有关打印机的信息。
$ lpoptions -x printer-name
printer-name
指定要删除的打印机的名称。
-x
删除指定的打印机。
注 - -x 选项仅删除特定打印机和实例的缺省选项。除非使用 lpadmin 命令删除原始打印队列,否则将仍然保留该队列。
- 成为管理员。
- 在作为打印机服务器的系统上,停止接受打印机的打印请求。
$ cupsreject printer-name
此步骤可防止在您删除打印机的过程中任何新请求进入打印机的队列。
- 停止打印机。
$ cupsdisable printer-name
- 删除打印机。
$ lpadmin -x printer-name
- 验证是否已删除打印机,如下所述:
- 确认在打印客户机上已删除打印机。
$ lpstat -p printer-name -l
该命令输出显示一条表明打印机不存在的消息。
- 确认在打印服务器上已删除打印机。
$ lpstat -p printer-name -l
该命令输出显示一条表明打印机不存在的消息。
- 确认在打印客户机上已删除打印机。
示例 15-9 删除打印机
以下示例说明如何从打印客户机 terra 和打印服务器 jupiter 中删除打印机 luna。
terra# lpoptions -x luna terra# lpstat -p luna -l jupiter# lpadmin -x luna jupiter# lpstat -p luna -l lpstat: Invalid destination name in list "luna"!
版权所有 ? 1998, 2011, Oracle 和/或其附属公司。 保留所有权利。 法律声明 |