⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 177.html

📁 本文详细介绍了学习FREEBSD的一些命令
💻 HTML
字号:
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>www.newok.com::FreeBSD使用大全</title>
<link rel=stylesheet href="newok.css" tppabs="http://www.newok.com/include/newok.css">
</head>

<body>

<div align=center>
<p>&nbsp;</p>
<table width=720>
<tr><td>
<strong>当前所在位置:</strong><a href="javascript:if(confirm('http://www.at.china.com/bsd/index.html  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.at.china.com/bsd/index.html'" tppabs="http://www.at.china.com/bsd/index.html" class=t1>FreeBSD使用大全>></a>
</td></tr>
</table>
<table width=700>
<tr><th><font color=white>FreeBSD连载(30):配置打印机(2)</font></th></tr>
<tr><td>&nbsp;</td></tr>
<tr><td align=left><i>作者:</i>王波 </td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td><font color=white><br>在非PostScript打印机上打印<br><br>  通常非PostScript打印机使用特殊的ESC序列来表示命令,而对普通文本不做特殊处理,因此文本文件仍然被看作文本文件,能够直接打印文本文件,因此这些非PostScript的打印机能够直接设置为普通的文本打印机来使用。<br><br>  然而要想充分发挥打印机的能力,打印包括图形在内的文档,就必须有能理解这台非PostScirpt打印机使用的控制语言的过滤器。这些过滤器就相当于Windows下的打印机驱动,应该由生产这台打印机的厂商提供。但是很多低档打印机是专门为使用DOS或Windows的计算机生产的,没有为Unix配置过滤器,因此在这些打印机上打印图形就遇到了困难。幸运的是,Ghostscript能够识别很多种打印机,并能将PostScript文件在指定的设备上打印出来。<br><br>  因此在前面的操作中生成了Postscript文件之后,就可以使用Ghostscript在一台非Post&nbsp;Script打印机上打印PostScript文件,下面文件将在一台Laserjet4打印机上打印test.ps&nbsp;文件。<br><br>#&nbsp;gs&nbsp;-sDEVICE=ljet4&nbsp;-sOutput=/dev/lpt0&nbsp;&nbsp;test.ps<br>使用gs&nbsp;-help能列出一系列Ghostscrit支持的设备文件,有些是打印机设备,有些是代表不同的图形格式的伪设备。<br>$&nbsp;gs&nbsp;-help<br>Aladdin&nbsp;Ghostscript&nbsp;5.50&nbsp;(1998-9-16)<br>Copyright&nbsp;(C)&nbsp;1998&nbsp;Aladdin&nbsp;Enterprises,&nbsp;Menlo&nbsp;Park,&nbsp;CA.&nbsp;&nbsp;All&nbsp;rights&nbsp;reserved.<br>Usage:&nbsp;gs&nbsp;[switches]&nbsp;[file1.ps&nbsp;file2.ps&nbsp;...]<br>Most&nbsp;frequently&nbsp;used&nbsp;switches:&nbsp;(you&nbsp;can&nbsp;use&nbsp;#&nbsp;in&nbsp;place&nbsp;of&nbsp;=)<br>&nbsp;-dNOPAUSE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;no&nbsp;pause&nbsp;after&nbsp;page&nbsp;&nbsp;&nbsp;|&nbsp;-q&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`quiet',&nbsp;fewer&nbsp;messages<br>&nbsp;-gx&nbsp;&nbsp;page&nbsp;size&nbsp;in&nbsp;pixels&nbsp;&nbsp;&nbsp;|&nbsp;-r&nbsp;&nbsp;pixels/inch&nbsp;resolution<br>&nbsp;-sDEVICE=&nbsp;&nbsp;select&nbsp;device&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;-dBATCH&nbsp;&nbsp;exit&nbsp;after&nbsp;last&nbsp;file<br>&nbsp;-sOutputFile=&nbsp;select&nbsp;output&nbsp;file:&nbsp;-&nbsp;for&nbsp;stdout,&nbsp;|command&nbsp;for&nbsp;pipe,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;embed&nbsp;%d&nbsp;or&nbsp;%ld&nbsp;for&nbsp;page&nbsp;#<br>Input&nbsp;formats:&nbsp;PostScript&nbsp;PostScriptLevel1&nbsp;PostScriptLevel2&nbsp;PDF<br>Available&nbsp;devices:<br>&nbsp;&nbsp;&nbsp;appledmp&nbsp;iwhi&nbsp;iwlo&nbsp;iwlq&nbsp;hl7x0&nbsp;bj10e&nbsp;bj200&nbsp;bjc600&nbsp;bjc800&nbsp;lbp8&nbsp;lips3&nbsp;m8510<br>&nbsp;&nbsp;&nbsp;uniprint&nbsp;la50&nbsp;la70&nbsp;la75&nbsp;la75plus&nbsp;lj250&nbsp;declj250&nbsp;ln03&nbsp;ap3250&nbsp;epson&nbsp;eps9mid<br>&nbsp;&nbsp;&nbsp;eps9high&nbsp;lp8000&nbsp;lq850&nbsp;epsonc&nbsp;st800&nbsp;stcolor&nbsp;lp2563&nbsp;dnj650c&nbsp;deskjet&nbsp;djet500<br>&nbsp;&nbsp;&nbsp;cdeskjet&nbsp;djet500c&nbsp;cdjcolor&nbsp;cdjmono&nbsp;cdj500&nbsp;cdj550&nbsp;cdj670&nbsp;cdj850&nbsp;cdj890<br>&nbsp;&nbsp;&nbsp;cdj1600&nbsp;laserjet&nbsp;ljetplus&nbsp;ljet2p&nbsp;ljet3&nbsp;ljet3d&nbsp;ljet4&nbsp;lj4dith&nbsp;cljet5<br>&nbsp;&nbsp;&nbsp;lj5mono&nbsp;lj5gray&nbsp;pj&nbsp;pjetxl&nbsp;pjxl&nbsp;paintjet&nbsp;pjxl300&nbsp;pxlmono&nbsp;bbox&nbsp;pxlcolor<br>&nbsp;&nbsp;&nbsp;ibmpro&nbsp;jetp3852&nbsp;imagen&nbsp;cp50&nbsp;necp6&nbsp;oce9050&nbsp;oki182&nbsp;okiibm&nbsp;r4081&nbsp;sj48&nbsp;xes<br>&nbsp;&nbsp;&nbsp;bmpmono&nbsp;bmp16&nbsp;bmp256&nbsp;bmp16m&nbsp;ccr&nbsp;cgmmono&nbsp;cgm8&nbsp;cgm24&nbsp;sxlcrt&nbsp;dfaxhigh<br>&nbsp;&nbsp;&nbsp;dfaxlow&nbsp;faxg3&nbsp;faxg32d&nbsp;faxg4&nbsp;bit&nbsp;bitrgb&nbsp;bitcmyk&nbsp;cif&nbsp;miff24&nbsp;inferno&nbsp;jpeg<br>&nbsp;&nbsp;&nbsp;jpeggray&nbsp;mgrmono&nbsp;mgrgray2&nbsp;mgrgray4&nbsp;mgrgray8&nbsp;mgr4&nbsp;mgr8&nbsp;pcxmono&nbsp;pcxgray<br>&nbsp;&nbsp;&nbsp;pcx16&nbsp;pcx256&nbsp;pcx24b&nbsp;pcxcmyk&nbsp;pdfwrite&nbsp;plan9bm&nbsp;pbm&nbsp;pbmraw&nbsp;pgm&nbsp;pgmraw&nbsp;pgnm<br>&nbsp;&nbsp;&nbsp;pgnmraw&nbsp;pnm&nbsp;pnmraw&nbsp;ppm&nbsp;ppmraw&nbsp;pkm&nbsp;pkmraw&nbsp;pngmono&nbsp;pnggray&nbsp;png16&nbsp;png256<br>&nbsp;&nbsp;&nbsp;png16m&nbsp;psmono&nbsp;psgray&nbsp;psrgb&nbsp;pswrite&nbsp;epswrite&nbsp;sgirgb&nbsp;t4693d2&nbsp;t4693d4<br>&nbsp;&nbsp;&nbsp;t4693d8&nbsp;tek4696&nbsp;tiffcrle&nbsp;tiffg3&nbsp;tiffg32d&nbsp;tiffg4&nbsp;tiff12nc&nbsp;tiff24nc&nbsp;tifflzw<br>&nbsp;&nbsp;&nbsp;tiffpack&nbsp;x11&nbsp;x11alpha&nbsp;x11cmyk&nbsp;x11cmyk2&nbsp;x11cmyk4&nbsp;x11cmyk8&nbsp;x11gray2<br>&nbsp;&nbsp;&nbsp;x11gray4&nbsp;x11mono&nbsp;nullpage<br>Search&nbsp;path:<br>&nbsp;&nbsp;&nbsp;.&nbsp;:&nbsp;/usr/local/share/ghostscript/5.50&nbsp;:<br>&nbsp;&nbsp;&nbsp;/usr/local/share/ghostscript/fonts<br>For&nbsp;more&nbsp;information,&nbsp;see&nbsp;/usr/local/share/ghostscript/5.50/doc/Use.htm.<br>Report&nbsp;bugs&nbsp;to&nbsp;ghost@aladdin.com,&nbsp;using&nbsp;the&nbsp;form&nbsp;in&nbsp;Bug-form.htm.<br>&nbsp;<br>&nbsp;<br><br>  从这些简单的名字中很难判断那个设备对应于自己的打印机型号,为了找出正确的设备文件名,需要阅读Ghost&nbsp;script的文档device.txt,或者选择相近的设备名并反复尝试。如果万一找不到自己的文件名,也许要升级&nbsp;Ghostscript的版本,或者更新自己Ghostscript的设备驱动之后再重新安装Ghostscript&nbsp;。<br><br>  当能够使用Ghostscript打印文档之后,就需要将它和FreeBSD的打印过滤器集成在一起了,因此首先要将打印的文档转换为PS文档,然后将PS文档转换为打印机支持的格式,因此就需要更改过滤程序。例如在一个EP&nbsp;SON行式打印机上输出文档,使用的标准过滤应该是,最后两个短横线表示标准输出和标准输入:<br><br>#!&nbsp;/bin/sh<br>a2ps&nbsp;-q&nbsp;-o&nbsp;-&nbsp;|&nbsp;\<br>gs&nbsp;-sDevice=epson&nbsp;-sOutfile=-&nbsp;-&nbsp;<br>&nbsp;<br>&nbsp;<br><br><br>使用apsfilter配置打印机<br><br>设置打印机要手工编辑/etc/printcap文件,安装并配置各种过滤器,安装Ghostscript等。这些操作都非常烦琐,幸好FreeBSD通过Ports&nbsp;Collection提供了一种自动配置打印机的apsfilter程序。<br><br>Ports&nbsp;Collection的机制、用法将在后面讨论。<br><br>为了使用apsfilter设置打印机并配置过滤器,就需要执行下列命令:<br><br>#&nbsp;cd&nbsp;/usr/ports/print/apsfilter/<br>#&nbsp;make&nbsp;install<br>&nbsp;<br>&nbsp;<br><br>  然后,系统将自动下载、编译安装必要的过滤器软件,此后将自动启动一个设置程序,通过菜单提示让用户选择打印机的各种属性,包括打印机的类型、端口、分辨率、纸张大小等等。最后将自动生成合适的printcap文件和各种过滤器。这些过滤器能分辨要打印文件的类型,进行正确的处理。<br><br>  apsfilter生成的过滤器是调用包括ghostscript在内的大量其他软件,因此上面的make过程就需要从网络上下载必要软件包,可以通过预先安装相应的Packages以减少下载任务。如果网络太慢,下载过程可能会出现问题导致软件安装问题,后面会讲到如何为Ports&nbsp;Collection手工下载必要的软件包。<br><br><br>使用和控制打印机<br><br>  当一切都配置正确之后,使用打印机就非常简单了。为了自动启动lpd守护进程,需要将/etc/rc.con&nbsp;f文件中的lpd_enable项设置为lpd_enable=”Yes”,FreeBSD在下次系统启动时会自动启动lpd。当lpd没有启动时,也不需要重起计算机,简单使用root身份执行lpd就可以启动这个守护进程。有了l&nbsp;pd守护进程,打印系统就能正常进行打印工作,并能针对整个网络上的用户,提供打印服务了。<br><br>  使用者可以直接使用lpr命令打印文件,或者通过管道来使用lpr命令。<br><br>$&nbsp;lpr&nbsp;hello.c<br>$&nbsp;ls&nbsp;|&nbsp;lpr<br>&nbsp;<br>&nbsp;<br><br>  如果系统中某个打印机没有配置打印过滤器,用户可以直接使用自己的打印过滤器,通过管道将输出送到lpr中。这提供了一种较灵活的配置方式,使得用户不需要root权限,也能使用合适的打印机过滤器。下面是一个使用gs打印文件的例子:<br><br>$&nbsp;gs&nbsp;-dNOPAUSE&nbsp;-q&nbsp;-sljet4&nbsp;-sOutputFile=\|lpr&nbsp;--&nbsp;tt.ps<br>&nbsp;<br>&nbsp;<br><br>  注意这个例子中使用反斜线取消竖线的特殊含义,将其和紧随其后的lpr一起作为参数发送给gs,gs再将其解释为管道操作。可以将上面的文件编制成shell程序,这样每次就能更方便的使用。<br><br>  当使用lpr将打印作业放入打印缓冲区之后,就能使用lpq命令来查看打印队列的内容:<br><br>$&nbsp;lpq<br>waiting&nbsp;for&nbsp;lp&nbsp;to&nbsp;become&nbsp;ready&nbsp;(offline&nbsp;?)<br>Rank&nbsp;&nbsp;&nbsp;Owner&nbsp;&nbsp;&nbsp;Job&nbsp;&nbsp;Files&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Total&nbsp;Size<br>1st&nbsp;&nbsp;&nbsp;&nbsp;user&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;hello.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;151&nbsp;bytes<br>2nd&nbsp;&nbsp;&nbsp;&nbsp;user&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;(standard&nbsp;input)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3359&nbsp;bytes<br>3nd&nbsp;&nbsp;&nbsp;&nbsp;user&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;(standard&nbsp;input)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;43765&nbsp;bytes<br>&nbsp;<br>&nbsp;<br><br>  在这个例子中,由于打印机lp没有被正常连接到系统上,因此lpq在第一行提醒使用者当前打印机不正常。由于这台打印机工作不正常,因此用户可能不想使用这个打印机进行打印了,而想通过其他打印机进行打印。为了避免在这台打印机正常之后,仍然打印这个作业,需要将这个打印作业删去。这可以通过命令lprm加上作业序号(显示在lpq中第三列)来完成:<br><br>$&nbsp;lprm&nbsp;1<br>dfA001freebsd.domain&nbsp;dequeued<br>cfA001freebsd.domain&nbsp;dequeued<br>&nbsp;<br>&nbsp;<br><br>  或者使用all作参数,这将删除该用户的所有打印作业。用户只能删除自己的打印作业,只有root才能删除其他用户的作业。如果root使用all参数,那么将会将这个打印机缓冲区中的所有打印作业全部清空。<br><br>  作为系统管理员,需要进一步的能力来管理打印守护程序。BSD风格的打印系统使用lpc来执行这个功能,以&nbsp;root身份启动lpc,则进入lpc的交互模式,然后使用help命令可以得到管理命令的列表。一般可以使用start&nbsp;all&nbsp;命令来启动所有的打印机,或者使用stop&nbsp;lp命令来停止一台名为lp的打印机。<br><br>#&nbsp;lpc<br>lpc&nbsp;>&nbsp;start&nbsp;all<br>&nbsp;<br>&nbsp;<br><br>  也可以用命令行的方式使用lpc,例如重新启动所有的打印机,使用带参数的lpc发出以下命令:<br><br>#&nbsp;lpc&nbsp;restart&nbsp;all<br>&nbsp;<br>&nbsp;<br><br>未完,待续。。。</font></td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td align=right><i>来源:</i><a href="javascript:if(confirm('http://freebsd.online.ha.cn/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://freebsd.online.ha.cn/'" tppabs="http://freebsd.online.ha.cn/">http://freebsd.online.ha.cn/</a></td></tr>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
声明:本站的文章和软件是本人从网上收集整理的(除本人的作品之外),所有版权属于作者,<br>
如有侵犯您的权益,请指出,本站将立即改正,谢谢.
<hr  width=500>
<br>
<font color=#ffffff>Copyright 2000 <a href="javascript:if(confirm('http://www.newok.com/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.newok.com/'" tppabs="http://www.newok.com/" class=t1>www.newok.com</a></font>
</div>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -