直到现在,Unix/Linux下的打印仍然受到很多限制。但通过安装CUPS系统,您将拥有通用的打印解决方案。
本文将介绍CUPS(Common Unix Printing System,通用Unix打印系统),以及为您的网络提供的通用打印解决方案。
Unix/Linux的打印问题在很长时间内都没有大的改变。我们仍旧使用好用的、古老的lpd(行式打印机后台程序),它不支持IPP(Internet打印协议),而且有很多打印机我们无法使用。但这一情况正在快速地发生改变,一种新产品在打印机舞台上闪亮登场。
CUPS软件为Unix/Linux用户提供了一条有效而可靠的管理打印任务的方法。它本身就支持IPP,而且具有LPD、SMB(服务器通信模块,即连接到Microsoft Windows的打印机)和JetDirect的接口。CUPS能够提供网络打印机浏览功能,而且能够使用PostScript打印机描述(PPD)文件。简而言之,使用CUPS,您可以在Linux计算机上像和Windows计算机一样方便地使用打印机,而且拥有Linux的强大功能。
■CUPS
首先,我们需要获得CUPS。如果您运行的是Mandrake 7.2,那您已经拥有它了(我家中的计算机就运行的是它)。如果您运行的是其他的发行版本,您需要进行下载。
如果已经下载了CUPS,就需要将旧的打印机软件删除。下面以运行Red Hat 6.2的计算机作为例子解释这一过程。在安装CUPS前,必须删除lpr、printtool和rhs-pritfilters。但最好将这些包放在手边,以便CUPS出问题时做一时之需。如果CUPS无法工作,可以重新安装这些包,然后继续工作。
要删除这些包,键入:
rpm -e lpr printtool rhs-printfilters
然后安装CUPS,键入:
rpm -ivh cups-1.1.4-linux-2.2.14-intel.rpm
请注意您的文件名可能稍有不同。
现在CUPS已经安装成功了,您应该看到如下信息:
cups: scheduler started
它提示您CUPS正在运行并且等待打印任务。
您可以通过命令行方式或通过基于Web的管理员方式对CUPS进行管理。我们首先介绍从命令行界面添加打印机。
以root用户登录,键入:
/usr/sbin/lpadmin -p LaserJet -E -v parallel:/dev/lp0 -m laserjet.ppd
上面的lpadmin语句执行下列操作:
1. 添加名为LaserJet的打印机 (-p)
2. 使打印机可用(-E)
3. 设置使用的设备和设备类型 (-v)
4. 使用驱动程序/PPD文件 laserjet.ppd (-m)
由于我们使用命令行方式,要最快速地测试打印机,需要键入:
/usr/bin/lp -d LaserJet /etc/aliases
上面的lp语句将/etc/aliases打印到LaserJet打印机(-d)。如果打印输出是您的aliases文件,表示设置成功了。当然,这只是CUPS的最简单的配置。
您也可以使用-p标志来设置打印任务的优先级。例如:
/usr/bin/lp -d LaserJet -p 90 /etc/aliases
添加-p 90,表示您声明打印机的优先级为90/100。这些打印将比优先级低于90的打印任务先打印——包括没有设置优先级的打印任务,其默认优先级为50。
Lp命令的所有选项列表可以从man page中获得。它们包括上面介绍的内容,另外还有一些好的特性,例如指定打印的份数。
■使打印机不可用
我们已经成功地添加和测试了打印机,那么如何使打印机不可用呢?要达到这一目的,我们可以使用不可用命令:
/usr/bin/disable -r "Changing Paper" LaserJet
上面的不可用语句将使打印机LaserJet不可用,而且将原因(-r)标注为“换纸”。-r选项非常有用,它可以让用户知道是什么原因打印机不可用。
更换完纸张后,使用可用命令能够重新使打印机可用:
/usr/bin/enable LaserJet
下一个问题可能是:如果您没有LaserJet怎么办?CUPS默认安装的驱动程序是用于HP和Epson打印机的。这些驱动程序覆盖了世界上的很多个人打印机(只能对Canon的使用者说抱歉了)。如果没有这些牌子的打印机,也不必失望,这时可以有两个选择,如果您是一位自由软件的狂热爱好者,可以访问LinuxPrinting.org网站,如果不是那么狂热,可以购买ESP Print Pro。
LinuxPrinting.org网站为很多打印机提供了驱动程序,它还提供了一个CUPS PPD文件生成器,有很多打印机都需要一个PPD文件。本人就为自己的HP LaserJet 3150打印机找到了驱动程序,而原本CUPS是没有这个驱动程序的。
ESP Print Pro由Easy Software Products公司开发,此公司为CUPS开发的发起者。ESP Print Pro是一个界面友好的CUPS,它支持2300多种打印机,不幸的是,它的价格较贵。
简而言之,CUPS并不难配置,而且在GPLd版本中提供了一个基于Web的配置界面。ESP Print Pro的主要优势是它包含了数目众多的打印机驱动程序。