由于一些网络变化,我们的一台打印机有一个新的 IP。一位用户今天来找我,并引用了以下引言:“我无法从 linux 打印。” 一个月前更改了 IP,显然我们并没有从“linux”进行太多打印。除了所有这些,我想进入杯子并更改 IP 地址,但在继续之前,我想知道当前的设置。
从 cups Web 界面“修改”打印机时,我基本上可以更改除名称之外的所有内容,而我需要做的就是更改 IP 地址。我不会非常担心,但这是没有本机驱动程序的戴尔 5210n。它确实适用于现在正在使用的任何 ppd 文件,但我不想通过反复试验来弄清楚它正在使用什么。所以我的问题如下:
有没有办法(命令行或 gui)查看此特定打印机的当前设置?
我可以只更改 IP 地址而不必选择它是什么类型的打印机(5210n 不是通过修改打印机的选项)?
我可以对现有的 ppd 文件做些什么来使用适当的 IP 地址创建一个新队列。
有一个更好的方法吗?
相关信息是运行 RHEL 4 update 3 和该版本的 cups 的戴尔服务器上的网络连接戴尔 5210n。
在命令行中,您可以使用以下命令查看已安装的打印机:
您可以像这样更改配置:
您可能对更改设备 uri 感兴趣。这应该包含 IP 地址。像这样改变它:
打印机配置存储在 /etc/cups/printers.conf 您也可以在那里查看当前配置。有关详细信息,请参阅此处的 CUPS 文档:
http://www.cups.org/documentation.php/doc-1.4/ref-printers-conf.html
我知道我在发贴,但是,我多次遇到同样的问题,我很想看到有人回答。我在 Red Hat Enterprise Linux 5 上有 CUPS 服务器,我担心只想更改 URI 但被迫通过驱动程序面板的情况非常愚蠢。如果我只想更改 IP 地址,为什么还要冒险破坏打印机驱动程序?
使用 lpadmin -p -v 非常棒,但这应该在 GUI 中始终如一地工作......如果我可以从 CLI 中更改,我应该只能从 GUI 更改 URI。
无论如何,printer.conf 配置文件不包含有关正在使用的现有 PPD 的信息。但是,我的系统上有一个名为 /etc/cups/ppd/ 的目录,在该目录中,有一个使用的每个现有 PPD 文件的副本。它们都在队列名称之后重命名。因此,“Queue1”打印机的当前 PPD 驱动程序位于 /etc/cups/ppd/Queue1.ppd。
但它是从哪里来的?GUI 如此神秘地要求的相应品牌/型号是什么?为此,我在 /usr/share/cups/model/ 找到了一个目录,其中有一堆名为 *.ppd.gz 的文件。我相信当您从 GUI 中选择品牌和型号时,压缩后的副本会被解压缩并复制到 /etc/cups/pdd/Queue1.ppd。
就我而言,我将它们全部复制到我的主目录并解压缩它们。
$ 用于 $(ls *.gz) 中的文件;做枪压缩$文件;完毕
并开始将 /usr/share/cups/model/ 中的结果文件与 /etc/cups/ppd 中当前使用的文件进行比较。
对我来说,没有什么匹配的。所以我回到第一方。
我现在只能假设配置这些队列的人使用了“或提供 PPD 文件:”上传链接,并提供了第三方 PPD 文件,当然多年后我不知道它在哪里。
因此,最安全的做法是:
1) 从 /etc/cups/ppd 获取当前 ppd 的副本并通过 GUI 重新上传 2) 放弃 GUI 并使用 lpadmin -p -v 3) 放弃 GUI 并在 DeviceURI 设置中修改 IP /etc/cups/printers.conf 文件,然后用 sudo /sbin/service cups restart 弹回杯子
不管怎样,制作 GUI 有点愚蠢,以至于我们冒着在无意中更改驱动程序的风险。希望这在 CUPS 的最新版本中得到修复……在 Red Hat Enterprise Linux 5 上,我的 cups 版本是 1.3.7。