注:此为一个 System V 打印子系统命令。
向远程系统登记打印服务。
lpsystem [ -T Timeout ] [ -R Retry ] [ -y Comment ] SystemName [ SystemName . . . ]
lpsystem -l [ SystemName . . . ]
lpsystem -r SystemName [SystemName . . . ]
lpsystem -A
lpsystem 命令为 LP 打印服务定义关于跟远程系统通信(通过像 TCP/IP 一样的高速网络)的参数。
尤其是,lpsystem 命令定义本地 LP 打印服务能够与之交换打印请求的远程系统。这些远程系统用控制通信的几个参数:type、retry 和 timeout 对本地 LP 打印服务进行描述。这些参数定义在 /etc/lp/Systems 中。可以用文本编辑器(例如 vi)编辑该文件,但是不推荐编辑。通过使用 lpsystem,可以确保对于 Systems 文件的更改通知了 lpsched。
Timeout 参数指定打印服务会允许的网络连接空闲的时间(以分钟为单位)长度。如果到达远程系统的连接空闲(即,没有网络流量)了 N 分钟,那么断开连接。(当有更多工作的时候,重新建立连接。)合法值是 n、0 和 N,其中 N 是一个大于 0 的整数。如果一个小数用于 N,它被截断成整数。值 n 表示永不超时;0 表示只要连接空闲就断开它。缺省值是 n。
Retry 参数指定当连接异常断开的时候(即网络故障),在尝试重新建立与远程系统的连接之前等待的时间长度(以分钟为单位)。合法值为 n、0 和 N,其中 N 是一个大于 0 的整数。它表示在尝试重新连接之前等待 N 分钟。如果一个小数用于 N,它将被截断为整数。(缺省值为 10 分钟。)值 n 表示在有更多工作之前不要重试已断开的连接;0 表示立即尝试重新连接。
Comment 参数允许将系统输入与空闲打印纸注释关联。当使用 lpsystem -l 时它是可见的。
SystemName 是远程系统的名称,希望能够从该处接收作业并能向该处发送作业。缺省情况下 /etc/lp/Systems 文件提供了一个特殊的项,它允许到达 bsd 系统的所有连接。该项使用星号(*)来作为 SystemName。
命令 lpsystem -l [ SystemName ] 打印出跟 SystemName(如果指定了一个系统)或者跟它的数据库中的所有系统(如果没有指定 SystemName)有关的参数的描述。
命令 lpsystem -r SystemName 删除跟 SystemName 有关的项。打印服务不再从该系统接收作业或者向其发送作业,即使该远程打印机仍然定义在本地系统上。当要进行系统文件项删除的时候必须运行调度程序,因为调度程序检查系统项是否正在被目的地打印机所使用。如果正在使用,系统项不能删除。
如果使用 lpsystem -r SystemName 来删除一个系统并且拥有该系统的活动的打印机,将不允许从系统文件中删除该系统。lpsystem -r SystemName 只有在不存在该系统的打印机的情况下才能工作。
至于 Timeout 和 Retry 值的含义,打印服务为每个与它通信的远程系统使用一个进程,而且只有当有作业要在那个系统上完成或者从那个系统正有作业发送而来的时候,它才跟远程系统通信。
系统启动连接是主进程,系统接受连接是次进程。该指定服务仅仅确定当连接断开的时候哪个进程死亡(次要的)。它帮助阻止多于一个进程与远程系统通信。所有的连接都是双向的,不管是主还是次指定。无法控制一个系统的主/次指定。典型地,客户机拥有主子进程,而服务器拥有次子进程。如果主进程超时,那么次的和主的都退出。如果次进程超时,那么可能在重新尝试间隔之后,主进程仍然活跃并重新尝试连接。因此,一个系统的资源管理策略会影响另一个系统的策略。
lpsystem 命令的所有格式接受 SystemName 中使用 *(双引号括起来的星号)。
依据名称服务器的配置,可能需要更改 /etc/lp/Systems 中 SystemName 字段中的项为域名全称。
只有拥有相应特权的用户才能执行 lpsystem 命令。
/etc/lp/* |
/var/spool/lp/* |
lpsched 命令。