使用 CUPS 在 Linux 上进行打印的技巧和窍门

苹果公司对 GNU/Linux 最重要的贡献之一是在 Mac OS X 中采用了 CUPS。
232 位读者喜欢这篇文章。
document sending

Opensource.com

您是否曾经在 90 年代末期,甚至更早的时候,尝试在 GNU/Linux 桌面发行版上配置打印机?

长话短说:如果您在拥有 IT 团队处理打印机问题和专用硬件或打印服务器的大型组织工作,那还不错。当时有许多不同的标准和协议来处理打印机。只有少数大型供应商(通常是 Unix 供应商)为其全系列产品提供特定的支持和驱动程序。

然而,如果开源爱好者想要一台可以在他们最喜欢的发行版上运行的家用打印机,那就是另一回事了。他们可能花费了相当多的时间在论坛、新闻组或 IRC(还记得那些社交网络和聊天的祖先吗?)上询问具有易于安装的 Linux 驱动程序的打印机。

1999 年,Easy Software Products 发布了第一版 CUPS(通用 Unix 打印系统)。当时最流行的发行版中的大多数都采用了 CUPS 作为其默认打印系统。这是一个巨大的成功:一个标准可以处理许多打印机和协议。

但是,如果打印机供应商没有提供 CUPS 驱动程序,使其工作仍然很棘手或不可能。一些聪明的人可能会进行逆向工程。而少数支持 PostScript 和互联网打印协议 (IPP) 原生支持的打印机可以“开箱即用”。

然后苹果公司来了

在 2000 年代初期,苹果公司正在努力为其新的 Mac OS X 构建一个新的打印系统。2002 年 3 月,它决定通过在其旗舰操作系统中采用 CUPS 来节省时间。

没有打印机供应商可以忽视苹果电脑的市场份额,因此大量新的 Mac OS X CUPS 打印机驱动程序开始可用,涵盖了大多数供应商和产品范围,包括企业级、图形艺术、消费级和照片打印。

CUPS 对苹果公司变得如此重要,以至于它在 2007 年从 Easy Software Products 购买了该软件;从那时起,苹果公司一直继续维护它并管理其知识产权。

但这与 GNU/Linux 有什么关系呢?

当苹果公司将 CUPS 集成到 Mac OS X 中时,许多发行版已经默认使用它,并且大多数其他发行版都可以使用它。但是,很少有专门的驱动程序可用,这意味着它们没有被打包或列为“适用于 GNU/Linux”。

然而,一旦 Mac OS X 的 CUPS 驱动程序可用,GNU/Linux 爱好者中就流行了一种简单的技巧:下载 Mac 驱动程序,提取 PPD 文件,并用您的打印机进行测试。我曾多次对我的 Epson 打印机使用这种技巧。

这就是 CUPS 的魔力:如果驱动程序存在,它通常适用于所有使用 CUPS 进行打印的操作系统,只要它们使用受支持的协议(如 IPP)。

这就是打印机驱动程序开始可用于 GNU/Linux 的方式。

如今

后来,打印机供应商意识到为 GNU/Linux 提供驱动程序非常容易,因为他们已经为 Mac 开发了驱动程序。现在很容易找到打印机的 GNU/Linux 驱动程序,即使是较新的打印机也是如此。一些发行版包含包含大量驱动程序的软件包,大多数供应商都提供专用驱动程序——有时通过软件包,有时通过存档中的 PPD 文件。

高级控制应用程序也可用,有些是官方的,有些不是,这使得(例如)查看墨水量或清洁打印头成为可能。

在某些情况下,在 GNU/Linux 上安装打印机甚至比在其他操作系统上更容易,特别是对于使用 零配置网络(例如,Bonjour、Avahi)自动发现和共享网络打印机的发行版。

技巧和窍门

  • 安装 PDF 打印机: 在 GNU/Linux 上安装 PDF 打印机非常容易。只需在您喜欢的发行版中查找 cups-pdf 软件包并安装它。如果软件包没有自动创建 PDF 打印机,您可以从系统首选项中添加一个,以便从任何应用程序中打印为 PDF。

  • 访问 CUPS Web 界面: 如果您常用的打印机管理界面不起作用或者您不喜欢它,请打开 Web 浏览器并转到 http://localhost:631/admin。您可以管理计算机上安装的所有打印机,调整其设置,甚至从这个 Web 界面添加新打印机。请注意,这可能在您网络上的其他计算机上可用;如果是这样,请将“localhost”替换为相关的主机名或 IP 地址。

  • 检查墨水量: 如果您有 Epson、Canon、HP 或 Sony 打印机,您可以使用一个简单的应用程序查看其墨水量。在您的发行版存储库中查找“ink”软件包。

  • 为 CUPS 做贡献: 像许多开源项目一样,CUPS 在 GitHub 上维护。查看 CUPS 网站GitHub 问题,了解如何为改进它做出贡献。

CUPS 许可证

最初,CUPS 是在 GPLv2 下发布的。我不确定为什么;也许是为了更容易与 GNU/Linux 一起分发。或者也许这只是当时大多数开源项目的做法。

苹果公司决定在 2017 年 11 月 更改许可证 为 Apache 2.0 许可证。许多观察家评论说,这与苹果公司将其开源项目的知识产权转移到更符合商业规范的许可证的策略是一致的。

虽然这种更改可能会在 GNU/Linux 中发布 CUPS 时产生问题,但它仍然在大多数发行版中可用。

CUPS 20 周岁生日快乐!

CUPS 发布于 1999 年,所以,让我们庆祝并感谢所有参与这个成功的开源项目的人,从最初的作者到驱动程序开发人员再到当前的维护者。

下次您使用您最喜欢的 GNU/Linux 操作系统打印时,提醒自己对苹果公司说“谢谢”。

这家公司并不以其对开源的贡献而闻名。但是,如果您仔细查看(例如,苹果公司的开源版本开源开发 页面),您会看到苹果公司的操作系统和应用程序中有多少开源组件。

您还会发现苹果公司发起其他重要的开源项目。例如,它 fork 了 KDE 浏览器 KHTML,创建了用于 Safari 浏览器的 WebKit。等等,WebKit?是的,WebKit 是苹果公司发起的。但那是另一个故事了...

标签
User profile image.
Hyland 的社区经理。Une Jolie Musique 的创始人,这是一个非营利工作室,仅使用开源和基于开源的软件来录制音乐和制作视频。我还教授和咨询开源,并编写教程。多年来参与各种开源和自由软件项目和社区。

6 条评论

很棒的文章 Antoine!感谢分享您的专业知识。

非常有趣 Antoine。感谢您给我们上的这堂历史技术课!

您说,“虽然这种更改可能会在 GNU/Linux 中发布 CUPS 时产生问题,但它仍然在大多数发行版中可用。” 但从未解释为什么会这样。每个主要的 Linux 发行版中都有大量软件使用该许可证,从 Apache Web 服务器开始。您为什么认为使用该许可证发布 CUPS 会给发行版带来问题?

你好,有趣的问题。
关键不是禁止在 GNU/Linux 上安装 CUPS 或 Apache Web 服务器。但可能无法在 GPL 的 GNU/Linux 发行版的安装程序中默认发布它。
但是,我不是律师,所以对于 OSI 或 FSF 来说,这是一个关于许可证不兼容和版权的非常有趣的问题。我很想得到详细的解答。

回复 作者 sgtrock

我真的很喜欢苹果公司转向成为基于 UNIX 的操作系统。这使得在 Linux 和带有 X11 的 Mac 之间来回移动程序变得容易得多。
我真的不知道为什么 Windows 不使用类似 CUPS 的东西。即使您没有互联网连接,它似乎也工作得更好。许多相同的打印机使用完全相同的驱动程序并使用相同的语言进行通信,所以为什么不利用这一点,而不是每次都必须下载驱动程序。非常类似于 iPad 和 iPhone 的 AirPrint 工作方式。它只是让一切变得容易。

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.