驯服打印机和打印的恐怖,第 4 部分

作者:Marcel Gagné

大家好,欢迎回到系统管理员专栏,在这里一切皆有可能,系统管理甚至可以很有趣。

对于那些刚接触 Linux 的人来说,最难理解的事情之一就是选择的概念。哦,当然,你可以为 Windows 和 Linux 获得许多不同的文字处理软件包。不同之处在于,对于 Linux,与众不同的做法深入到骨髓。我可以重建我的内核,以利用鲜为人知、超级酷的性能增强功能。我可以改变我与连接到我系统的每个设备对话的方式。我甚至可以决定我想要如何打印。一个给你选择,另一个给你 选择! 这对于新的 Linux 用户来说并不总是容易习惯的。

我们正在谈论的是打印,而这正是我将转变这个类比的地方。如果您运行的是 Windows,您只需执行 设置-打印机 操作即可开始。Linux 来了,它说:“嗯,你可以使用标准的 lpd 系统,或者 LPRng,或者 IPP,或者 CUPS,或者 PDQ。 哦,你还可以使用 Red Hat 过滤器,以及自定义 bash 过滤器,以及 ghostscript 过滤器,以及..." 选择是一件很难习惯的事情,但是一旦你掌握了选项,它们就会成为一种对你和整个软件行业都有益的瘾。

上周,我说我会再次回顾过滤器。这只是部分正确,因为我想谈论的一些事情并非专门是过滤器,而且整个 选择 的事情让我一直在重新思考。你们中的一些人给我发送了感谢电子邮件,感谢我让你们的 HP 7xx 系列打印机在你们的 Linux 服务器上获得了第二次机会。甚至有几个人说,这个“WinPrinter”问题是他们完全切换到 Linux 的最后一个障碍。嘿,我只是我这个时代一股向善的力量。(我应该在这里加一个笑脸吗?不了。)

人们谈论被“卡住”或“困住”在一台无法工作的打印机上。当我购买我的 HP710C 打印机时,我只是假设 (哎哟!) 任何来自 HP 的东西都可以在 Linux 上工作。毕竟,他们制造了那个很棒的操作系统,HP-UX。犯错很容易。如果您发现自己在看一台新打印机,并想知道它是否对您的 Linux 系统有利,那么有一直很受欢迎的硬件兼容性列表,但对于打印机来说,情况会更好。查看 Grant Taylor 的打印机兼容性列表,网址为 http://www.picante.com/~gtaylor/pht/printer_list.cgi

滚动到此页面的底部,您会发现 Grant 的资源最酷的功能之一。例如,您可以选择一个特定的制造商,并获得他们制造的所有打印机的列表,他们提供的支持级别,以及您可能需要做些什么才能使它们工作。如果您已经有特定的打印机,并且想知道您的 Linux 系统有哪些过滤器或驱动程序,这是一件好事。让我们假设我有一台 Canon BJC2000 系列打印机,我想知道它是否可以工作。通过选择“佳能制造的所有打印机”并单击“Go”,下一页将告诉我 BJC2000 “几乎完美地”工作。如果我单击代表打印机本身的链接,我会获得更多信息。事实上,详细信息页面告诉我,我使用 ghostscript 的这台打印机的最佳选择是使用此设备选项

   -sDEVICE=bjc600

不太冒险的人(尚未花钱购买打印机的人)可以使用第一页上更安全的报告选项。只需询问查看哪些彩色喷墨打印机(或激光打印机或其他任何打印机)可以完美工作。生成的报告按制造商列出这些打印机,并提供指向各个型号详细描述的适当链接。

我想回到选择您的打印系统(以及实际上是过滤器)的整个想法。我遇到过的最酷的打印选项之一是名为 PDQ 的东西。根据作者 Jacob A. Langford 的说法,它代表“打印,不要排队”以及其他各种首字母缩写词。他的页面位于 http://feynman.tam.uiuc.edu/pdq/

PDQ 是一个不错的、友好的小软件包,可在 Linux 和各种其他 UNIX 系统上运行。我不确定我百分之百同意 Jacob 关于打印、记帐和排队的推理,但这并没有削弱 PDQ 的价值。虽然它似乎完全有能力处理大型打印机部署,但我特别喜欢 PDQ 的一点是,它呈现出 那个其他操作系统 的用户觉得如此有吸引力的那种友好的面孔,包括一个流畅的类似 X-Windows 的界面和“向导”,以帮助您快速轻松地设置打印机。您甚至可以使用 Grant Taylor 的兼容性列表在他的 PDQ-O-Matic 部分中找到最新的 PDQ 驱动程序和过滤器。

下载 PDQ 源代码并安装很容易。此时的最新版本是 pdq-2.1.2。我所要做的就是解压,然后执行 make。然后执行 make install。像这样

     tar -xzvf pdq-2.1.2.tgz
     cd pdq-2.1.2
     make
     make install

现在设置一个基本的 printrc 配置文件,像这样

     mv /etc/pdq/printrc.example /etc/pdq/printrc

要启动 PDQ 并配置您的第一台打印机,只需键入此命令

     xpdq &

当界面出现时,单击“打印机”,然后选择“添加”,并按照打印机向导中的步骤操作。当您将鼠标移动到字段上时,PDQ 还具有上下文相关的“气泡”帮助来指导您。

当您进入驱动程序选择屏幕时,您可能会发现列表有些有限——只列出了大约十几个打印机,尽管您可以使用通用定义。对于我的 HP LaserJet 5L,我回到 Grant Taylor 的打印机兼容性列表,找到我的打印机,然后单击 PDQ-O-Matic 列表。要安装这个新驱动程序,我执行了以下操作

     cd /etc/pdq/drivers/hp

在驱动程序目录中,有打印机类别(或品牌,如果您愿意)的子目录。在更改为 hp 目录后,我使用了 vi(您可以使用 emacs、pico 或您喜欢的任何编辑器),并简单地剪切并粘贴了 PDQ-O-Matic 屏幕上的信息。然后我重启了 xpdq,我的打印机现在在列表中了。

要使用 PDQ 打印作业,您可以通过命令行发送作业(我是否提到过有命令行实用程序可以让您执行 X 界面所做的事情?)。格式很简单。为了我的测试,我甚至发送了一个 Postscript 文件。我想看看 PDQ 的驱动程序和过滤器在运行。

     pdq -P hp5lj /tmp/oneliners.ps

-P 标志调用您在向导中定义的打印机名称,而 /tmp/oneliners.ps 是我非常重要的打印文件。X 界面 (xpdq) 然后报告作业的状态,甚至允许我重新打印它,获取它的状态(如果它在作业列表的深处),或获取有关作业类型的信息。

除了传统的 lpd 打印之外,另一种选择是 CUPS。CUPS,或 Common Unix Print System,旨在成为一个平台独立的打印系统,可在许多不同的 UNIX(或 Unices,如果您愿意)上运行。生产 CUPS 的公司(Easy Software Products)在 GPL 下分发它,但您应该意识到打印驱动程序的数量有限。对于大型打印机支持,您应该考虑他们的 ESP Print Pro,这是一个商业产品,包括 CUPS、大量打印机驱动程序和一个非常酷的 GUI。如果您想探索 CUPS,请访问此链接:http://www.easysw.com

CUPS 使用互联网打印协议 (IPP),这是一种旨在用“通用”打印环境取代 LPD 的下一代打印系统,任何地方的任何用户都可以打印到任何地方的任何打印机。它还旨在提供更好的身份验证和安全性。拟议的标准甚至允许加密打印作业。那些真正好奇其发展方向的人可以访问打印机工作组,网址为 http://www.pwg.org

正如我提到的,CUPS 在其免费软件包中提供的打印机支持有限;但是,支持一些流行的打印机。如果您想走这条路,但更喜欢坚持使用免费软件版本(并且您可以使用提供的驱动程序),您仍然可以通过运行 KDE 作为桌面来获得一个不错的 GUI。只需从 cuendet 获取 KUPS,可在 http://cups.sourceforge.net 获得。

就这样。尽管有相反的传言,但 确实 有方法可以简化打印,使其更友好(嗯)像 Windows 一样。您的基本 lpd 打印和 ghostscript 仍然很重要,因为您会在您安装的每个 Linux 系统上找到它们。Red Hat 打印过滤器不一定在那里,其他人的打印方法也不会在那里。许多替代方案都采用了这些标准,因此了解幕后情况并无坏处。

就这样,这周我讲得够久了。电子并不便宜,你知道!下次再见,“轻轻打印,携带大墨粉盒。”

电子邮件:ljeditors@ssc.com

加载 Disqus 评论