📄 00000005.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人: <A HREF="mailto:hendrix.bbs@bbs.mis.cycu.edu.tw">hendrix.bbs@bbs.mis.cycu.edu.tw</A> (啾...), 信区: Linux <BR>标 题: Printing HOWTO 中译 <BR> <BR>Printing HOW-TO <BR> <BR> 这是 Linux Printing HOW-TO, 一份关於如何在 Linux 下预视, 列印, 传真 <BR>的文件. <BR> <BR> <BR> <BR>1. Intro 前言 <BR> <BR>因为此文件己完全重写过, 有很多前版的资讯都已经失去, 这是就是为何前 <BR>版的文件那麽巨大的原因. 如果你在这份文件找不到你要的答案, 建议你可以 <BR> <BR> a) 到 PHT 的 homepage 找前一版的 printing how-to <BR> <<A HREF="http://www.picante.com/~gtaylor/pht/>">http://www.picante.com/~gtaylor/pht/></A> <BR> b) 写信给我并说明发生了什麽在这里找不到答案的事 ! <BR> <BR> <BR> 1.1 History <BR> <BR>这是第三版, 也就是第三次完全重写过的 Printing HOW-TO, 关於 PHT 的 <BR>各版演进历程如下: <BR> <BR> 1. 我在 comp.os.linux 写了 printing hot-to 以回答各式各样关於列印方面的 <BR>问题! How-to 的前身为 FAQ 之类的集合! 这版为 ascii 格式. <BR> <BR> 2. 在加入 HOW-TO 专案後, Printing HOW-TO 加入了 Brian McCauley <BR><<A HREF="mailto:B.A.McCaulaey@bham.ac.uk>">B.A.McCaulaey@bham.ac.uk></A> 的 Lpd FAQ; 我们又继续共同创作 PHT 两年左 <BR>右. 我们也同时和 Karl Auer<<A HREF="mailto:Karl.Auer@anu.edu.au>">Karl.Auer@anu.edu.au></A> 一起工作. 这版的 PHT <BR>文件格式有 TeXinfo, PS, HTML, Ascii, 和 Info. <BR> <BR> 3. 在一年後 PHT 文件已过时并难已继续维护的情况下, 我们决定重写. <BR>此版的 PHT 为 Linuxdoc-SGML 格式. <BR> <BR> <BR> <BR>2. How to print 如何列印 <BR> <BR>如果你已经设定好你的印表机, 或是你的系统管理者(厂商)已经帮你设好, <BR>那麽你所要知道的就是 lpr 指令的使用了. 在 Printing Usage HOWTO <BR><<A HREF="http://sunsite.unc.edu/mdw/HOWTO/Printing-Usage-HOWTO.html>">http://sunsite.unc.edu/mdw/HOWTO/Printing-Usage-HOWTO.html></A> 包含这些指令 <BR>的说明, 并有一些你该知道的小技巧. <BR> <BR> <BR> <BR>3. Kernel printer devices 核心印表装置 <BR> <BR> 3.1 the lp devices lp 装置 <BR> <BR> 假设你在编译核心已经把 lp 装置编译进去的话, 可以用 cat /proc/devices 看 <BR>看是否包含 lp. 在 /dev 下应有 lp0. lp1, lp2 等装置名, 这些并不是动态指定的, <BR>每个装置都有自己的 I/O 位址, 这表示你的第一台印表机可能是 lp0 或 lp1, <BR>要看你的硬体而定, 两个都试试看 ;) <BR> <BR> lpip 不能和 lp 同时执行. <BR> <BR> 有一个叫 tunelp 的小工具可以让你调整 lp 装置的 interrupt usage, polling rate, <BR>和其它功能. <BR> <BR> 当你用 module (1.3.X 的 kernel 中) 时, 可以在 insmod 时加入一些参数来指 <BR>定 io 位址和中断值. 参数是 io=x,y,z 和 irq=x,y,z . x,y,z 由你指定. 请 man <BR>insmod 以得知更多关於 insmod 的用法. <BR> <BR> 3.2 Serial devices 序列装置 <BR> <BR> 序列装置在 Linux 下通常叫做 /dev/ttyS1 之类的, 工具 stty 将使你以互动的 <BR>方式查看(view) 并设定序列埠; setserial 可让你控制一些非标准埠的外部属性并 <BR>设定 IRQs 和 I/O 位址. 更多关於linux 下序列埠的讨论可以在 Serial-HOWTO <BR>中找到 <<A HREF="http://sunsite.unc.edu/mdw/HOWTO/Serial-HOWTO.html>">http://sunsite.unc.edu/mdw/HOWTO/Serial-HOWTO.html></A> <BR> <BR> <BR> <BR>4. How it works, basic 基本运作方式 <BR> <BR> 在使印表运作正常前, 你必须□解 lpd 系统是如何运作的. <BR> <BR> Lpd 是 Line Printer Daemon 的总称, 其内文(context) 依 deamon 和程式使用 <BR>spooling 的不同而有所差异. 包括了: <BR> <BR>lpd : the spooling deamon. 一个负责控制机器. 另外, 在每一台印表机印表 <BR> 时也都有一个 lpd. <BR> <BR>lpr : 使用者下的 spooling 指令. Lpr 与 lpd 联系并插入一个新的印表工作 <BR> 到 spool 中. <BR> <BR>lpq : 列出印表伫列(print queue) 中的工作. <BR> <BR>lpc : Lpd 系统的控制指令. 可用来 stop, start, recorder 你在 lpc 中看到的 <BR> 工作. <BR> <BR>lprm: 可从 spool 中移除印表工作. <BR> <BR> 那麽它们如何正适当的时候工作呢 ? 在开机的过程中, lpd 就开始执行, 它会 <BR>扫描 /etc/printcap 以得知那一台印表机由那一个 spool 所管. 每当有人执行 lpr <BR>时, lpr 就会经由 /dev/printer 的 socket 来和 lpd 联系, 并将待印档案和谁要 <BR>列印, 如何列印的资讯交给 lpd. lpd 就会适当地将档案印出. <BR> <BR> lp 系统原本是设计时大部分的人只需要印 ascii 的档 (line printer). 现在虽有 <BR>所改变, 但我们只要加上一些 script 就可以使 lpd 将目前的印表处理的很好, <BR>例如: PostScript, text , dvi... <BR> <BR> <BR> <BR>5. How to set things up, basic 基本设定 <BR> <BR> 5.1 传统的 lpd 设定 <BR> <BR> 设定的结果至少要让印表机能排伫列, 能列印. 如果你对 lp 不是很懂的话, <BR>这些设定并不能让你印出漂漂的文件来. 但无论如何, 这是第一步, 所以, 看下 <BR>去吧 ! <BR> <BR> 最基本的, 将伫列加入 lpd 中, 你必须在 /etc/printcap 中登录, 并在 <BR>/var/spool/lpd 中加入一个新的目录. <BR> <BR> 在 /etc/printcap 的登录如下: <BR> <BR> # LOCAL djet500 <BR> lp|dj|deskjet:\ <BR> :sd=/var/spool/lpd/dj:\ <BR> :mx#0:\ <BR> :lp=/dev/lp0:\ <BR> :sh: <BR> <BR> 上面这一段定义了一个叫 lp, dj 或是 deskjet 的 spool, spool 的路径为 <BR>/var/spool/lpd/dj , 由 /dev/lp0 印出的东东并没有预设的列印最大值的限制, 而且 <BR>不能在列印工作的前端加上标题(像是谁印的...之类). 现在先去看看 printcap <BR>的 man page 吧 ! <BR> <BR> 上面这一段看起来似乎很简单, 但这里面却有阻碍. 除非我送了一个 DeskJet <BR>500 认识的档案, 否则 DeskJet 将印出一堆奇怪的文字来. 例如: 送一个原始的 <BR>unix text 档到 deskjet中, 虽然每一行都有换行, 但我得到的结果将为: <BR> <BR> This is line one. <BR> This is line two. <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -