FreeBSD 中文手册
FreeBSD 中文社区
  • FreeBSD 中文手册
  • 编辑日志
  • 译者说明
  • FreeBSD 中文手册
  • 概述
  • 前言
    • 致读者
    • 第四版
    • 第三版
    • 第二版(2004)
    • 第一版(2001)
    • 本书的组织结构
    • 本书中使用的一些约定
    • 致谢
  • 第一部分:快速开始
  • 第1章 简介
    • 1.1.概述
    • 1.2.欢迎来到 FreeBSD!
    • 1.3.关于 FreeBSD 项目
  • 第2章 安装 FreeBSD
    • 2.1.概述
    • 2.2.最低硬件要求
    • 2.3.安装前的准备工作
    • 2.4.开始安装
    • 2.5.使用 bsdinstall
    • 2.6.分配磁盘空间
    • 2.7.获取安装文件
    • 2.8.账户、时区、服务和安全
    • 2.9.故障排除
    • 2.10.使用 Live CD
  • 第3章 FreeBSD 基础
    • 3.1.概述
    • 3.2.虚拟控制台和终端
    • 3.3.用户和基本账户管理
    • 3.4.权限
    • 3.5.目录结构
    • 3.6.磁盘结构
    • 3.7.文件系统的挂载与卸载
    • 3.8.进程和守护进程
    • 3.9.Shell
    • 3.10.文本编辑器
    • 3.11.设备和设备节点
    • 3.12.手册页
  • 第4章 安装应用程序:软件包和 Ports
    • 4.1.概述
    • 4.2.软件安装的概述
    • 4.3.寻找所需的应用程序
    • 4.4.使用 pkg 管理二进制包
    • 4.5.使用 Ports
    • 4.6.使用 Poudriere 构建软件包
    • 4.7.安装后的注意事项
    • 4.8.如何处理损坏的 port
  • 第5章 X Window 系统
    • 5.1.概述
    • 5.2.安装 Xorg
    • 5.3.显卡驱动
    • 5.4.Xorg 配置
    • 5.5.在 X11 中使用字体
  • 第6章 FreeBSD 中的 Wayland
    • 6.1.简介
    • 6.2.Wayland 概述
    • 6.3.Wayfire 混成器
    • 6.4.Hikari 混成器
    • 6.5.Sway 混成器
    • 6.6.使用 Xwayland
    • 6.7.使用 VNC 进行远程连接
    • 6.8.Wayland 登录管理器
    • 6.9.实用工具
  • 第7章 网络
    • 7.1.概述
    • 7.2.设置网络
    • 7.3.有线网络
    • 7.4.无线网络
    • 7.5.主机名
    • 7.6.DNS
    • 7.7.故障排除
  • 第二部分:常见任务
  • 第8章 桌面环境
    • 8.1.概述
    • 8.2.桌面环境
    • 8.3.浏览器
    • 8.4.开发工具
    • 8.5.桌面办公应用
    • 8.6.文档阅读器
    • 8.7.财务
  • 第9章 多媒体
    • 9.1.概述
    • 9.2.设置声卡
    • 9.3.音频播放器
    • 9.4.视频播放器
    • 9.5.视频会议
    • 9.6.图像扫描仪
  • 第10章 配置 FreeBSD 内核
    • 10.1.概述
    • 10.2.为什么要构建定制内核
    • 10.3.浏览系统硬件
    • 10.4.配置文件
    • 10.5.构建并安装定制内核
    • 10.6.如果发生了错误
  • 第11章 打印
    • 11.1.快速入门
    • 11.2.连接打印机
    • 11.3.常见的页面描述语言(PDL)
    • 11.4.直接打印
    • 11.5.LPD(行式打印机程序)
    • 11.6.其他打印系统
  • 第12章 Linux 二进制兼容层
    • 12.1.概述
    • 12.2.配置 Linux 二进制兼容层
    • 12.3.Linux 用户空间
    • 12.4.高级主题
  • 第13章 WINE
    • 13.1.概述
    • 13.2.WINE 概述和概念
    • 13.3.在 FreeBSD 上安装 WINE
    • 13.4.在 FreeBSD 上运行第一个 WINE 程序
    • 13.5.配置 WINE 安装程序
    • 13.6.WINE 图形化用户管理界面
    • 13.7.多用户 FreeBSD 与 WINE
    • 13.8.FreeBSD 上的 WINE 常见问题
  • 第三部分:系统管理
  • 第14章 配置与优化
    • 14.1.概述
    • 14.2.配置文件
    • 14.3.管理 FreeBSD 中的服务
    • 14.4.Cron 和 Periodic
    • 14.5.配置系统日志
    • 14.6.电源和资源管理
    • 14.7.添加交换空间
  • 第15章 FreeBSD 的引导过程
    • 15.1.概述
    • 15.2.FreeBSD 的引导过程
    • 15.3.Device Hints
    • 15.4.关机流程
  • 第16章 安全
    • 16.1.概述
    • 16.2.简介
    • 16.3.账户安全
    • 16.4.入侵检测系统(IDS)
    • 16.5.安全等级
    • 16.6.文件标志位
    • 16.7.OpenSSH
    • 16.8.OpenSSL
    • 16.9.Kerberos
    • 16.10.TCP 封装器(TCP Wrapper)
    • 16.11.访问控制列表(ACL)
    • 16.12.Capsicum
    • 16.13.进程记账
    • 16.14.资源限制
    • 16.15.监控第三方安全问题
    • 16.16.FreeBSD 安全公告
  • 第17章 jail 与容器
    • 17.1.概述
    • 17.2.jail 的类型
    • 17.3.主机配置
    • 17.4.传统 jail(厚 jail)
    • 17.5.瘦 jail
    • 17.6.管理 jail
    • 17.7.更新 jail
    • 17.8.jail 资源限制
    • 17.9.jail 管理器与容器
  • 第18章 强制访问控制
    • 18.1.概述
    • 18.2.关键术语
    • 18.3.了解 MAC 标签
    • 18.4.规划安全配置
    • 18.5.可用的 MAC 策略
    • 18.6.用户锁定
    • 18.7.MAC Jail 中的 Nagios
    • 18.8.MAC 框架的故障排除
  • 第19章 安全事件审计
    • 19.1.概述
    • 19.2.关键术语
    • 19.3.审计配置
    • 19.4.使用审计跟踪
  • 第20章 存储
    • 20.1.概述
    • 20.2.添加磁盘
    • 20.3.调整和增加磁盘大小
    • 20.4.USB 存储设备
    • 20.5.创建和使用 CD
    • 20.6.创建和使用 DVD
    • 20.7.创建和使用软盘
    • 20.8.备份的基础知识
    • 20.9.内存盘
    • 20.10.文件系统快照
    • 20.11.磁盘配额
    • 20.12.加密磁盘分区
    • 20.13.加密交换分区
    • 20.14.高可用性存储(HAST)
  • 第21章 GEOM: 模块化磁盘转换框架
    • 21.1.概述
    • 21.2.RAID0——条带
    • 21.3.RAID1——镜像
    • 21.4.RAID3——带有专用奇偶校验的字节级条带
    • 21.5.软件 RAID 设备
    • 21.6.GEOM Gate 网络设备
    • 21.7.为磁盘设备添加卷标
    • 21.8.通过 GEOM 实现 UFS 日志
  • 第22章 Z 文件系统(ZFS)
    • 22.1.是什么使 ZFS 与众不同
    • 22.2.快速入门指南
    • 22.3.zpool 管理
    • 22.4.zfs 管理
    • 22.5.委托管理
    • 22.6.高级主题
    • 22.7.更多资源
    • 22.8.ZFS 特性和术语
  • 第23章 其他文件系统
    • 23.1.概述
    • 23.2.Linux® 文件系统
    • 23.3.Windows® 文件系统
    • 23.4.MacOS® 文件系统
  • 第24章 虚拟化
    • 24.1.概述
    • 24.2.使用 macOS® 上的 Parallels Desktop 安装 FreeBSD
    • 24.3.使用 macOS® 上的 VMware Fusion 安装 FreeBSD
    • 24.4.使用 VirtualBox™ 安装 FreeBSD
    • 24.5.在 FreeBSD 上安装 VirtualBox™
    • 24.6.使用 FreeBSD 上的 QEMU 虚拟化
    • 24.7.使用 FreeBSD 上的 bhyve 虚拟机
    • 24.8.基于 FreeBSD 的 Xen™ 虚拟机
  • 第25章 本地化——i18n/L10n 的使用和设置
    • 25.1.概述
    • 25.2.使用本地化
    • 25.3.寻找 i18n 应用程序
    • 25.4.特定语言的区域配置
  • 第26章 FreeBSD 更新与升级
    • 26.1.概述
    • 26.2.更新 FreeBSD
    • 26.3.更新 Bootcode
    • 26.4.更新文档
    • 26.5.追踪开发分支
    • 26.6.从源代码更新 FreeBSD
    • 26.7.多台机器的追踪
    • 26.8.在非 FreeBSD 主机上进行构建
  • 第27章 DTrace
    • 27.1.概述
    • 27.2.实现上的差异
    • 27.3.开启 DTrace 支持
    • 27.4.启用内核外部模块 DTrace
    • 27.5.使用 DTrace
  • 第28章 USB 设备模式/USB OTG
    • 28.1.概述
    • 28.2.USB 虚拟串行端口
    • 28.3.USB 设备模式网络接口
    • 28.4.USB 虚拟存储设备
  • 第四部分:网络通讯
  • 第29章 串行通信
    • 29.1.概述
    • 29.2.串行术语和硬件
    • 29.3.终端
    • 29.4.拨入服务
    • 29.5.拨出服务
    • 29.6.设置串行控制台
  • 第30章 PPP
    • 30.1.概述
    • 30.2.配置 PPP
    • 30.3.PPP 连接的故障排除
    • 30.4.使用以太网 PPP(PPPoE)
    • 30.5.使用 ATM 上的 PPP (PPPoA)
  • 第31章 电子邮件
    • 31.1.概述
    • 31.2.邮件组件
    • 31.3.DragonFly 邮件代理(DMA)
    • 31.4.Sendmail
    • 31.5.修改邮件传输代理
    • 31.6.邮件用户代理
    • 31.7.高级主题
  • 第32章 网络服务器
    • 32.1.概述
    • 32.2.inetd 超级服务器
    • 32.3.网络文件系统(NFS)
    • 32.4.网络信息系统(NIS)
    • 32.5.轻型目录访问协议(LDAP)
    • 32.6.动态主机设置协议(DHCP)
    • 32.7.域名系统(DNS)
    • 32.8.零配置网络(mDNS/DNS-SD)
    • 32.9.Apache HTTP 服务器
    • 32.10.文件传输协议(FTP)
    • 32.11.用于 Microsoft® Windows® 客户端的文件和打印服务(Samba)
    • 32.12.用 NTP 进行时钟同步
    • 32.13.iSCSI target 和 initiator 的配置
  • 第33章 防火墙
    • 33.1.概述
    • 33.2.防火墙的概念
    • 33.3.PF
    • 33.4.IPFW
    • 33.5.IPFILTER(IPF)
    • 33.6.Blacklistd
  • 第34章 高级网络
    • 34.1.概述
    • 34.2.网关和路由
    • 34.3.虚拟主机
    • 34.4.无线高级身份验证
    • 34.5.无线自组织(Ad-hoc)模式
    • 34.6.USB 网络共享
    • 34.7.蓝牙
    • 34.8.桥接
    • 34.9.链路聚合与故障转移
    • 34.10.使用 PXE 进行无盘操作
    • 34.11.共用地址冗余协议(CARP)
    • 34.12.VLAN
  • 第五部分:附录
  • 附录 A.获取 FreeBSD
    • A.1.镜像站
    • A.2.使用 Git
    • A.3.使用 Subversion
    • A.4.光盘
  • 附录 B.书目
    • B.1.FreeBSD 相关书籍
    • B.2.安全性参考文献
    • B.3.UNIX 历史
    • B.4.期刊与杂志
  • 附录 C.网络资源
    • C.1.网站
    • C.2.邮件列表
    • C.3.Usenet 新闻组
  • 附录 D.OpenPGP 密钥
    • D.1.官方成员
  • 术语表
  • 后记
由 GitBook 提供支持

FreeBSD 中文社区

在本页
  • 11.5.1. 初始设置
  • 11.5.2. 使用 lpr(1) 打印
  • 11.5.3. 过滤器
  • 11.5.3.1. 防止纯文本打印机出现阶梯状打印
  • 11.5.3.2. 使用 print/enscript 在 PostScript® 打印机上打印精美的纯文本
  • 11.5.3.3. 将 PostScript® 打印到 PCL 打印机
  • 11.5.3.4. 智能过滤器
  • 11.5.4. 多个队列
  • 11.5.5. 监视与控制打印
  • 11.5.5.1. lpq(1)
  • 11.5.5.2. lprm(1)
  • 11.5.5.3. lpc(8)
  • 11.5.6. 共享打印机
  • 11.5.6.1. 别名
  • 11.5.6.2. 页头页
  • 11.5.7. 参考资料

这有帮助吗?

在GitHub上编辑
导出为 PDF
  1. 第11章 打印

11.5.LPD(行式打印机程序)

上一页11.4.直接打印下一页11.6.其他打印系统

最后更新于27天前

这有帮助吗?

打印文件到后台的过程称为 排队打印(spooling)。排队打印允许用户继续使用计算机上的其他程序,而无需等待打印机缓慢完成打印任务。

FreeBSD 包含一个排队打印程序,叫做 。打印任务是通过 提交的。

11.5.1. 初始设置

创建一个存储打印任务的目录,设置目录的所有权,并设置权限以防止其他用户查看这些文件的内容:

# mkdir -p /var/spool/lpd/lp
# chown daemon:daemon /var/spool/lpd/lp
# chmod 770 /var/spool/lpd/lp

打印机在 /etc/printcap 中定义。每个打印机的条目包括名称、连接的端口以及其他各种设置。创建 /etc/printcap 文件并添加以下内容:

lp:\				①	
	:lp=/dev/unlpt0:\	②
	:sh:\			③
	:mx#0:\			④
	:sd=/var/spool/lpd/lp:\	⑤
	:lf=/var/log/lpd-errs:	⑥
  • ① 这是打印机的名称。 将打印任务发送到 lp 打印机,除非使用 -P 指定了其他打印机,因此默认打印机应命名为 lp。

  • ② 打印机连接的设备。将此行替换为适合所示连接类型的相应行。

  • ③ 在打印任务开始时抑制打印页头。

  • ④ 不限制打印任务的最大大小。

  • ⑤ 此打印机的排队目录路径。每个打印机使用自己的排队目录。

  • ⑥ 报告此打印机错误的日志文件路径。

# chkprintcap

在继续之前,修复任何报告的问题。

lpd_enable="YES"

启动服务:

# service lpd start

通过 lpr 将文档发送到打印机。可以在命令行中指定要打印的文件,或者通过管道将文件内容传递给 lpr。这两个命令是等效的,将 doc.txt 的内容发送到默认打印机:

% lpr doc.txt
% cat doc.txt | lpr

可以使用 -P 来选择打印机。要打印到名为 laser 的打印机:

% lpr -Plaser doc.txt

11.5.3. 过滤器

到目前为止的例子直接将文本文件的内容发送到打印机。只要打印机能够理解这些文件的内容,输出就会正确地打印出来。

一些打印机无法打印纯文本,而且输入文件可能甚至不是纯文本。

过滤器 允许对文件进行转换或处理。典型的用途是将一种类型的输入(如纯文本)转换成打印机可以理解的形式,如 PostScript® 或 PCL。过滤器还可以用于提供附加功能,比如添加页码或高亮显示源代码以使其更易于阅读。

过滤器在 /etc/printcap 中通过 if= 标识符进行指定。要使用 /usr/local/libexec/lf2crlf 作为过滤器,可以像这样修改 /etc/printcap:

lp:\
	:lp=/dev/unlpt0:\
	:sh:\
	:mx#0:\
	:sd=/var/spool/lpd/lp:\
	:if=/usr/local/libexec/lf2crlf:\   ①
	:lf=/var/log/lpd-errs:
  • ① if= 标识符指定将用于传入文本的 输入过滤器。

lp:lp=/dev/unlpt0:sh:mx#0:sd=/var/spool/lpd/lp:if=/usr/local/libexec/lf2crlf:lf=/var/log/lpd-errs:

11.5.3.1. 防止纯文本打印机出现阶梯状打印

典型的 FreeBSD 文本文件每行末尾只包含一个换行符。在标准打印机上,这些行会出现“阶梯”现象:

A printed file looks
                    like the steps of a staircase
                                                 scattered by the wind

可以使用过滤器将换行符转换为回车符和换行符。回车符使打印机在每行结束后返回左边。创建 /usr/local/libexec/lf2crlf,内容如下:

#!/bin/sh
CR=$'\r'
/usr/bin/sed -e "s/$/${CR}/g"

设置权限并使其可执行:

# chmod 555 /usr/local/libexec/lf2crlf

修改 /etc/printcap 使用新的过滤器:

:if=/usr/local/libexec/lf2crlf:\

通过打印相同的纯文本文件来测试过滤器。回车符将使每一行从页面的左侧开始打印。

创建 /usr/local/libexec/enscript 文件,并写入以下内容:

#!/bin/sh
/usr/local/bin/enscript -o -

设置权限并使其可执行:

# chmod 555 /usr/local/libexec/enscript

修改 /etc/printcap 使用新的过滤器:

:if=/usr/local/libexec/enscript:\

通过打印一个纯文本文件来测试过滤器。

11.5.3.3. 将 PostScript® 打印到 PCL 打印机

许多程序生成 PostScript® 文档。然而,廉价的打印机通常只理解纯文本或 PCL。这个过滤器将 PostScript® 文件转换为 PCL,然后发送到打印机。

创建 /usr/local/libexec/ps2pcl 文件,并写入以下内容:

#!/bin/sh
/usr/local/bin/gs -dSAFER -dNOPAUSE -dBATCH -q -sDEVICE=ljet4 -sOutputFile=- -

设置权限并使其可执行:

# chmod 555 /usr/local/libexec/ps2pcl

发送到该脚本的 PostScript® 输入将在发送到打印机之前被渲染并转换为 PCL。

修改 /etc/printcap 使用这个新的输入过滤器:

:if=/usr/local/libexec/ps2pcl:\

通过发送一个小的 PostScript® 程序来测试过滤器:

% printf "%%\!PS \n /Helvetica findfont 18 scalefont setfont \
72 432 moveto (PostScript printing successful.) show showpage \004" | lpr

11.5.3.4. 智能过滤器

一个可以检测输入类型并自动将其转换为适合打印机的正确格式的过滤器非常方便。PostScript® 文件的前两个字符通常是 %!。过滤器可以检测这两个字符。PostScript® 文件可以直接发送到 PostScript® 打印机而不做任何更改。文本文件可以使用 Enscript 转换为 PostScript®,如前所示。创建 /usr/local/libexec/psif 文件,并写入以下内容:

#!/bin/sh
#
#  psif - 在 PostScript 打印机上打印 PostScript 或纯文本
#
IFS="" read -r first_line
first_two_chars=`expr "$first_line" : '\(..\)'`

case "$first_two_chars" in
%!)
    # %! : PostScript 作业,直接打印。
    echo "$first_line" && cat && exit 0
    exit 2
    ;;
*)
    # 否则,使用 enscript 格式化
    ( echo "$first_line"; cat ) | /usr/local/bin/enscript -o - && exit 0
    exit 2
    ;;
esac

设置权限并使其可执行:

# chmod 555 /usr/local/libexec/psif

修改 /etc/printcap 使用这个新的输入过滤器:

:if=/usr/local/libexec/psif:\

通过打印 PostScript® 和纯文本文件来测试过滤器。

11.5.4. 多个队列

/etc/printcap 中的条目实际上是 队列 的定义。一个打印机可以有多个队列。结合过滤器使用时,多个队列可以为用户提供更多的打印作业控制。

例如,考虑一个办公室中的网络化 PostScript® 激光打印机。大多数用户希望打印纯文本,但一些高级用户希望能够直接打印 PostScript® 文件。可以为同一台打印机在 /etc/printcap 中创建两个条目:

textprinter:\
	:lp=9100@officelaser:\
	:sh:\
	:mx#0:\
	:sd=/var/spool/lpd/textprinter:\
	:if=/usr/local/libexec/enscript:\
	:lf=/var/log/lpd-errs:

psprinter:\
	:lp=9100@officelaser:\
	:sh:\
	:mx#0:\
	:sd=/var/spool/lpd/psprinter:\
	:lf=/var/log/lpd-errs:

发送到 textprinter 的文档将由之前示例中的 /usr/local/libexec/enscript 过滤器进行格式化。高级用户可以在 psprinter 上打印 PostScript® 文件,那里不会进行任何过滤。

这种多个队列技术可以用来提供对打印机所有功能的直接访问。例如,一台配有双面打印器的打印机可以使用两个队列,一个用于普通的单面打印,另一个使用一个过滤器,该过滤器发送命令序列以启用双面打印,然后发送传入的文件。

11.5.5. 监视与控制打印

有几种工具可用于监视打印作业、检查和控制打印机操作。

显示当前用户在单个打印机上的待处理作业:

% lpq -Plp
Rank   Owner      Job  Files                                 Total Size
1st    jsmith     0    (standard input)                      12792 bytes

显示当前用户在所有打印机上的待处理作业:

% lpq -a
lp:
Rank   Owner      Job  Files                                 Total Size
1st    jsmith     1    (standard input)                      27320 bytes

laser:
Rank   Owner      Job  Files                                 Total Size
1st    jsmith     287  (standard input)                      22443 bytes

从打印机删除所有待处理作业:

# lprm -Plp -
dfA002smithy dequeued
cfA002smithy dequeued
dfA003smithy dequeued
cfA003smithy dequeued
dfA004smithy dequeued
cfA004smithy dequeued
% lpq
Rank   Owner      Job  Files                                 Total Size
1st    jsmith     5    (standard input)                      12188 bytes

% lprm -Plp 5
dfA005smithy dequeued
cfA005smithy dequeued

显示所有打印机的状态:

% lpc status all
lp:
	queuing is enabled
	printing is enabled
	1 entry in spool area
	printer idle
laser:
	queuing is enabled
	printing is enabled
	1 entry in spool area
	waiting for laser to come up

禁止打印机接受新作业,然后再次开始接受新作业:

# lpc disable lp
lp:
	queuing disabled
# lpc enable lp
lp:
	queuing enabled

停止打印,但继续接受新作业。然后开始打印:

# lpc stop lp
lp:
	printing disabled
# lpc start lp
lp:
	printing enabled
	daemon started

在出现错误条件后重新启动打印机:

# lpc restart lp
lp:
	no daemon to abort
	printing enabled
	daemon restarted

关闭打印队列并禁用打印,显示问题信息给用户:

# lpc down lp Repair parts will arrive on Monday
lp:
	printer and queuing disabled
	status message is now: Repair parts will arrive on Monday

重新启用停机的打印机:

# lpc up lp
lp:
	printing enabled
	daemon started

11.5.6. 共享打印机

打印机通常在企业和学校中被多个用户共享。为使共享打印机更加便利,提供了附加功能。

11.5.6.1. 别名

打印机名称在 /etc/printcap 文件的第一行中设置。可以在该名称后添加附加名称,或称为 别名。别名通过竖线分隔:

lp|repairsprinter|salesprinter:\

别名可以代替打印机名称。例如,销售部门的用户打印到他们的打印机时使用:

% lpr -Psalesprinter sales-report.txt

维修部门的用户打印到 他们的 打印机时使用:

% lpr -Prepairsprinter repairs-report.txt

所有文档都会打印到这台共享打印机上。当销售部门发展到需要自己的打印机时,可以从共享打印机条目中删除别名,并将其用作新打印机的名称。两个部门的用户继续使用相同的命令,但销售文档将发送到新打印机。

11.5.6.2. 页头页

在繁忙的共享打印机打印出来的文档堆中,用户可能很难找到自己的文档。页头页(有时也称为 横幅页 或 分隔页)旨在解决此问题。在每个打印作业之前打印带有用户名和文档名称的页头页。

启用页头页的方式取决于打印机是通过 USB、并行端口或串行端口直接连接到计算机,还是通过网络远程连接。

对于直接连接的打印机,通过从 /etc/printcap 文件中的条目中删除 :sh:\(禁止页头)行来启用页头页。这些页头页仅使用换行符进行换行。一些打印机可能需要 /usr/share/examples/printing/hpif 过滤器,以防止阶梯式文本。该过滤器配置 PCL 打印机,在接收到换行符时打印回车符和换行符。

对于网络打印机,页头页必须在打印机本身上配置。/etc/printcap 文件中的页头页条目将被忽略。设置通常可以通过打印机前面板或通过浏览器访问的配置网页进行调整。

11.5.7. 参考资料

示例文件:/usr/share/examples/printing/。

4.3BSD Line Printer Spooler Manual,/usr/share/doc/smm/07.lpd/paper.ascii.gz。

创建 /etc/printcap 后,使用 测试是否存在错误:

在 /etc/rc.conf 中启用 :

11.5.2. 使用 打印

这里讨论的过滤器是 输入过滤器 或 文本过滤器。这些过滤器将传入的文件转换为不同的形式。在创建文件之前,使用 变更为 root 用户。

11.5.3.2. 使用 在 PostScript® 打印机上打印精美的纯文本

GNU Enscript 将纯文本文件转换为格式良好的 PostScript® 文件,用于在 PostScript® 打印机上打印。它添加了页码、自动换行,并提供了许多其他功能,使打印出来的文本文件更易于阅读。根据本地纸张大小,从 Ports 安装 或 。

从 Ports 安装 Ghostscript PostScript® 解释器 。

11.5.5.1.

用于显示用户的打印作业状态。其他用户的打印作业不会显示。

11.5.5.2.

用于删除打印作业。普通用户只能删除自己的作业。root 用户可以删除任何作业或所有作业。

从打印机删除单个作业。可以使用 查找作业编号。

11.5.5.3.

用于检查和修改打印机状态。lpc 后跟命令和可选的打印机名称。可以使用 all 替代特定的打印机名称,命令将应用于所有打印机。普通用户可以使用 查看状态,只有 root 用户可以使用修改打印机状态的命令。

更多命令和选项请参见 。

手册页:,,,,,。

lpd(8)
lpr(1)
lpr(1)
chkprintcap(8)
lpd(8)
lpr(1)
su(1)
print/enscript
print/enscript-letter
print/enscript-a4
print/ghostscript9-base
lpq(1)
lpq(1)
lprm(1)
lprm(1)
lpq(1)
lpc(8)
lpc(8)
lpc(8)
lpc(8)
printcap(5)
lpd(8)
lpr(1)
lpc(8)
lprm(1)
lpq(1)