启用或禁用打印机的打印操作

1、enable 和 disable 命令

enable 和 disable 命令控制打印机打印还是停止打印打印队列中的请求。当您禁用打印机时,打印机将停止打印队列中的请求。但是,请求仍被添加到队列中。若不希望将请求添加到队列中,则必须将打印机设置为拒绝打印请求。

 使用 Solaris Print Manager 添加打印机后,将启用该打印机以执行打印任务并接受打印请求。Solaris Print Manager 不提供任何其他有关打印机处理的管理功能。

只要打印机被禁用(打印机出现故障时可能会出现此情况),您就必须启用打印机。启用打印机时,它将打印来自打印队列的请求,直到队列为空,即使打印服务拒绝打印队列中的其他请求时也是如此。

下图显示在禁用打印机时中断处理打印请求的时刻。

复印机 禁用 netbios服务 打印机禁用_用户名

如何启用或禁用打印机

停止打印打印请求。

# disable [-c | -W] [-r "reason"] printer-name

disable

取消当前作业,然后禁用打印机。保存当前作业,以便在启用打印机时重新打印。

 

-c

取消当前作业,然后禁用打印机。将来不打印当前作业。

 

-W

在禁用打印机之前一直等待,直到完成当前作业。

 

-r "reason"

为用户提供禁用打印机的原因。只要用户通过使用 lpstat -p 命令检查打印机的状态,就会存储并显示原因。

 

printer-name

指定将停止打印请求的打印的打印机的名称。

 

注 –

无法启用或禁用打印机类。只能启用或禁用单台打印机。

 

开始打印打印请求。

 

# enable printer-name

验证是否已启用打印机。

 

# lpstat -p printer-name

示例启用或禁用打印机

以下示例说明如何停止打印机 luna 上的当前作业、保存该作业以便将来打印,以及提供打印机停止打印请求的打印的原因。

# disable -r "changing the form" luna

以下示例说明如何在打印机 luna 上开始打印打印请求。

# enable luna

printer "luna" enabled

 


接受或拒绝打印请求

2、accept 和 reject 命令

利用 accept 和 reject 命令,可以打开或关闭打印队列(其中存储着要打印的请求)。

 

使用 reject 命令时,将关闭指定打印机的打印队列。新的打印请求无法进入打印服务器上的队列。但是,仍将打印队列中的所有打印请求。如果您希望打印机停止打印队列中已有的请求,则必须禁用该打印机。下表对 accept、reject、enable 和 disable 命令的功能进行了比较。

 

Accept              接受发送到打印队列的打印请求。 

Disable             停止打印打印队列中当前的请求。 

Enable              打印打印队列中的请求。 

Reject               拒绝发送到打印队列的打印请求。 

 

如果拒绝打印请求,则 LP 打印服务会通知或将消息发送给提交该请求的用户。该消息说明指定打印机未接受打印请求。

 

您还可以通过命令行指定不接受请求的原因。当用户尝试检查打印机队列时,将在用户的系统上显示原因。下图显示打印队列拒绝打印请求时中断处理打印请求的时刻。

打印队列接受或拒绝请求时发生的情况


复印机 禁用 netbios服务 打印机禁用_复印机 禁用 netbios服务_02



如何接受或拒绝打印机的打印请求

在打印服务器上以超级用户 lp 或同等角色的身份登录。

 

停止接受打印机的打印请求。

 

# reject [-r "reason"] printer-name

-r "reason"

为用户提供打印机拒绝打印请求的原因。只要用户通过使用 lpstat -p 命令检查打印机的状态,就会存储并显示原因。

 

printer-name

指定将停止接受打印请求的打印机的名称。

 

只要启用打印机,就会继续打印已排队的请求。有关禁用打印机以便它停止打印的说明,请参见如何启用或禁用打印机。

 

开始接受打印机的打印请求。

# accept printer-name

 

检查打印机的状态,查看它是接受还是拒绝打印请求。

$ lpstat -p printer-name

 

接受或拒绝打印机的打印请求

以下示例说明如何阻止打印机 luna 接受打印请求。

# reject -r "luna is down for repairs" luna

destination "luna" will no longer accept requests

 

以下示例说明如何将打印机 luna 设置为接受打印请求。

# accept luna

destination "luna" now accepting requests

 

 

 

 

取消打印请求

3、cancel 命令

您可以使用 cancel 命令取消打印机队列中的打印请求或者取消正在打印的作业。

 

使用 cancel 命令的方式有三种:

 

1、通过请求标识号(请求 ID)取消请求

2、取消所有打印机或特定打印机上特定用户的请求

3、取消当前打印的作业

 

使用 cancel 命令时将显示一条消息,指明已取消一个或多个请求,并将打印队列中的下一个请求。

 

仅在以下情况下,您才能取消打印请求:

1、您是提交请求的用户,并且已登录到通过其提交请求的系统。

2、您是在任何客户机系统上提交请求的用户,而且打印服务器在其 /etc/printers.conf 文件中为打印机配置了 "user-equivalence" 选项。

3、您已在打印服务器上以超级用户 lp 或同等角色的身份登录。

 

要取消特定请求,您需要了解其请求 ID。请求 ID 包含打印机的名称、破折号,以及打印请求编号。例如,luna-185。

提交打印请求时,将显示请求 ID。如果您忘记了打印请求 ID,则可以通过将 lpstat 命令与 -o printer 选项一起使用来查找它。

Procedure如何取消打印请求

如果要取消其他用户的打印请求,则需要成为超级用户 lp 或同等角色。

确定要取消的打印请求的请求 ID。

 

取消打印请求。

# cancel request-id | printer-name

request-id

指定要取消的打印请求的请求 ID。您可以使用此命令指定多个请求 ID。使用空格或逗号来分隔请求 ID。如果使用空格,请用引号将请求 ID 的列表引起来。

 

printer-name

指定要为其取消当前打印的打印请求的打印机。

 

您可以使用此命令指定多个打印机名称。使用空格或逗号来分隔打印机名称。如果您使用空格,请用引号将打印机名称列表引起来。

 

验证是否已取消打印请求。

$ lpstat -o printer-name

 

示例 取消打印请求

以下示例说明如何取消 luna-3 和 luna-4 打印请求。

$ cancel luna-3 luna-4

request "luna-3" cancelled

request "luna-4" cancelled

 

以下示例说明如何取消打印机 luna 上当前打印的打印请求。

# cancel luna

request "luna-9" cancelled

 

 

 

如何取消特定用户的打印请求

4、取消特定用户的打印请求

如果要取消其他用户的打印请求,则需要成为超级用户 lp 或同等角色。

 

取消特定用户的打印请求。

$ cancel -u user-list [printer-name]

-u user-list

取消指定用户的打印请求。

 

user-list 可以是一个或多个用户名。使用空格或逗号来分隔用户名。如果使用空格,请用双引号将名称列表引起来。

 

printer-name

指定要为其取消指定用户的打印请求的打印机。

 

printer-name 可以是一个或多个打印机名称。使用空格或逗号来分隔打印机名称。如果您使用空格,请用引号将打印机名称列表引起来。

 

如果不指定 printer-name,则会在所有打印机上取消特定用户的打印请求。

 

示例 8–8 取消特定用户的打印请求

 

以下示例说明如何在打印机 luna 上取消用户 george 提交的所有打印请求。

# cancel -u george luna

request "luna-23" cancelled

 

以下示例说明如何在所有打印机上取消用户 george 提交的所有打印请求。

# cancel -u george

request "asteroid-3" cancelled

request "luna-8" cancelled



5、其他方法



1、将lpr命令重新命名,并将原有的命令删除掉,再恢复打印功能时,将改后的命名名字重新变为原有的linux下的名字,(使用alias和unalias命令)这样可以实现打印机可以打印和不可以打印。

2、关闭打印机cups服务,service cups stop;           service cups restart;