qconfig 文件
用途
配置打印机排队系统。
描述
/etc/qconfig 文件描述了可供 enq 命令 (将请求放置在队列上) 和 qdaemon 命令 (从队列中除去请求并处理请求) 使用的队列和设备。 Qconfig 文件是一个属性文件。
此文件中的某些节描述队列,而其他节描述设备。 每个队列节都需要一个或多个设备节紧跟在文件中的后面。 第一个队列节描述缺省队列。 除非设置了 LPDEST 或 打印机 环境变量,否则 恩格 命令在未接收到任何队列参数时使用此队列。 如果 LPDEST 包含一个值,那么该值将优先于 打印机 环境变量。 目标命令行选项始终覆盖两个变量。
队列节的名称长度可从 1 到 20 个字符。 以下是可能出现在此文件中的一些字段及其可能值:
| 字段 | 定义 |
|---|---|
| acctfile | 标识用于保存打印记帐信息的文件。 假(缺省值) 指示禁止记帐。 如果该名称的文件不存在,不完成记帐。 |
| device | 标识有关设备节的符号名称。 |
| discipline | 定义队列服务算法。 缺省值 fcfs 表示 "先来后到"。 辛 表示下一个最短的作业。 |
| up | 定义队列的状态。 真,缺省值,指示队列正在运行。 假 指示它未在运行。 |
recovery_type |
当打印队列关闭时,使用户能够指定恢复选项。 缺省情况下,队列仍处于关闭状态,等待用户干预。 可以使用以下值来指定其他选项:
|
注: 勒普 是 BSD 标准保留队列名称,并且不应在 Qconfig 文件中用作队列名称。
以下列表显示了远程队列的 Qconfig 文件中出现的一些字段及其可能的值:
| 项 | 描述 |
|---|---|
| host | 指示在其中找到远程队列的远程主机。 |
| s_statfilter | 指定用于转换远程队列状态格式的简短版本过滤器。 以下是可能的值:
|
| l_statfilter | 指定用于转换远程队列状态格式的长版本过滤器。 以下是可能的值:
|
| rq | 指定远程队列名称。 在远程打印环境中,客户机配置应指定远程队列名称或者服务器。 使用缺省远程队列名称可能会导致不可预测的结果。 |
如果省略某个字段,那么将采用其缺省值。 队列节的缺省值如下所示:
discipline = fcfs
up = TRUE
acctfile = FALSE
recovery_type = queuedown 不能省略该设备字段。
设备节的名称是任意的,长度可以为 1 到 20 个字符。 可以出现在节中的字段为:
| 字段 | 定义 |
|---|---|
| access | 指定后端对文件字段指定的文件具有的访问权类型。 如果后端对文件具有写访问权,那么访问权值为 write; 如果后端同时具有读访问权和写访问权,那么访问权值为 both。 如果文件字段的值为 FALSE ,那么将忽略此字段。 |
| align | 指定如果打印机空闲,那么在启动作业前后端是否发送换页控制。 缺省值为 true。 |
| backend | 指定后端的完整路径名,可选地后跟要传递给它的标志和参数。 最常用的路径名是 /usr/lib/lpd/piobe (对于本地打印) 和 /usr/lib/lpd/rembak (对于远程打印)。 |
| feed | 指定在设备变为空闲时要打印的分隔符页面数,或者指定值 从不(缺省值) ,它指示后端不打印分隔符页面。 |
| file | 标识要将后端的输出重定向到的特殊文件。缺省值 FALSE表示没有重定向,文件名为 /dev/null。 这种情况下,后端打开输出文件。 |
| header | 指定在每个作业或一组作业前是否打印头页面。 值 从不(缺省值) 表示完全不存在任何标题页。 始终 表示每个作业之前的标题页。 组 表示同一用户的每个作业组前的头。 在远程打印环境中,缺省操作是打印标题页,而不打印尾部页。 |
| trailer | 指定在每个作业或一组作业后是否打印尾页面。 值为 从不(缺省值) 表示完全没有尾部页面。 始终 表示每个作业后的尾部页面。 组 表示在同一用户的每组作业后显示一个尾部页面。 在远程打印环境中,缺省操作是打印标题页,而不打印尾部页。 |
qdaemon 进程将包含的信息放置在feed,header,trailer和align发送到后端的状态文件中的字段。 未更新状态文件的后端不使用它所包含的信息。
如果省略某个字段,那么将采用其缺省值。 后端字段不能被省略。 设备节中的缺省值为:
file = FALSE
access = write
feed = never
header = never
trailer = never
align = TRUE
当二进制版本缺失或低于 ASCII 版本时, 恩格 命令将自动将 ASCII Qconfig 文件转换为二进制格式。 二进制版本位于 /etc/qconfig.bin 文件中。
注: 当任何队列中都有活动作业时,不应编辑 Qconfig 文件。 任何时候更改 Qconfig 文件时,在更改之前提交的作业都将在更改之后提交的作业之前进行处理。
编辑功能包括手动编辑和使用 姆克, 姆姆克, 奇克, 姆克杰夫, Rmquedev或 奇克德夫 命令。 建议使用这些命令来进行对 Qconfig 文件的所有更改。 然而,若需手动编辑,请先执行 enq 命令 -G ,在所有作业处理完毕后停止队列系统和 qdaemon 进程。 然后,编辑 Qconfig 文件,并使用新配置重新启动 qdaemon 。
示例
- 随系统一起提供的批处理队列可能包含以下节:
bsh: discipline = fcfs device = bshdev bshdev: backend = /usr/bin/ksh运行调用的 shell 过程myproc使用此批处理队列,请输入:
排队系统一次运行一个文件,按提交的顺序运行。 qdaemon 进程将标准输入,标准输出和标准错误重定向到 /dev/null 文件。qprt -Pbsh myproc - 要允许同时运行两个批处理作业,请输入:
bsh: discipline = fcfs device = bsh1,bsh2 bsh1: backend = /usr/bin/ksh bsh2: backend = /usr/bin/ksh - 要设置远程队列,请执行bsh,请输入:
remh: device = rd0 host = pluto rq = bsh rd0: backend = /usr/lib/lpd/rembak - 4 4. 要设置本地队列,以便在邮件关闭时将其发送到 user1@xyz.com ,请输入:
ps: recovery_type = sendmail user1@xyz.com device = lp0 lp0: file = /dev/lp0 header = never trailer = never access = both backend = /usr/lib/lpd/piobe
文件
| 项 | 描述 |
|---|---|
| /etc/qconfig | 包含配置文件。 |
| /etc/qconfig.bin | 包含 /etc/qconfig 文件的摘要二进制版本。 |
| /dev/null | 提供对空设备的访问权。 |
| /usr/lib/lpd/piobe | 指定当地打印机后端的路径。 |
| /usr/lib/lpd/rembak | 指定该远程打印机后端的路径。 |
| /usr/lib/lpd/digest | 包含将 /etc/qconfig 文件转换为二进制格式的程序。 |