我运行的是 suse 12.1x86 (Gnome 3) 和 cups 1.5.x(猜测,我现在不在电脑旁)。我们有一台联网的施乐打印机,最近我们更改了它的 IP。
打印机连接是通过套接字配置的,如下所示:socket://1.1.1.1:9100/
。我以“偷懒的方式”更改配置中的 IP - 编辑配置。我做了以下事情:
- 杯子停了
- 编辑
printers.conf
并printers.conf.0
更改socket://1.1.1.1:9100
为socket://2.2.2.2:9100
- 开始杯
- 检查变更是否顺利(顺利)
使用旧配置时,一切都运行良好。更改 IP 后,我的 cups 一直告诉我我已选择“US Letter”纸张格式(我之前使用 A4 并且想使用)。此外,LibreOffice 和 gedit 等应用程序默认为“US Letter”,即使我直接更改其中的设置也不起作用 - 它们会立即从“A4”恢复为“US Letter”。但是当我查看 localhost:631 上的 cups Web 界面时,一切都设置为“A4”,并且正确无误。
我还尝试通过删除以下内容重新安装杯子:
/etc/cups/*
/var/spool/cups
/var/log/cups
并重新安装,zypper in --force cups
但没有任何效果。您知道我现在应该去哪里找吗?(不用说,我尝试删除并创建打印机,通过 Web 界面重新配置它,以及那些显而易见的事情。)
答案1
我找到了解决这个问题的方法。
我编辑了打印机的 ppd 文件 ( /etc/cups/ppd/...
),并更改了以下行
*OrderDependency: 60.0 AnySetup *PageSize
到
*OrderDependency: 60.0 *PageSize AnySetup
(默认页面大小设置为 A4。)如果我想在 A4 以外的任何其他纸张上打印,就会出现问题 - 我不会这样做,所以这对我来说是一个足够的解决方案。
答案2
检查文件 /etc/papersize 的内容,编辑以添加一行,其中包含页面大小为“a4”(不带引号),然后应将 A4 作为所有应用程序(包括 Libreoffice)的默认打印机页面大小。此外,还有命令“paperconf”、“papersize”和“paperconfig”,因此请查看它们的手册页。
对于打印机本身,请尝试使用浏览器转到 localhost:631,这将带您进入 cups 管理界面,然后单击打印机选项卡,然后管理相关打印机。从这里可以将默认打印机页面大小更改为 A4。
答案3
接受的答案(编辑 /etc/papersize)或其下的注释(使用 paperconfig)对我来说不起作用。编辑 /etc/cups/printer.conf(添加“DefaultPaperSize Letter”行)对我来说也不起作用。使用对lpoptions -o media=Letter
我来说也不起作用,但我也这样做了,你可能也必须这样做。我不确定,但它可能会影响用户空间(但不会修复 CUPS 系统默认值)。使用 Web 浏览器查看 localhost:631/printers/(将 localhost 替换为打印服务器的 IP 地址),然后单击打印机仍然显示“Defaults: job-sheets=none, none media=iso_a4_210x297mm sides=one-sided”。A4 是默认值,在某些程序中,我每次都必须在打印对话框的选项屏幕中设置打印机。根本没有设置打印机的程序(如 Scribus)也仍然使用 A4。结果是顶部空间太多,底部边缘的文本可能被切断。
经过多次网络搜索并在列表中(在多个 mac 论坛和 linux 博客上)找到在 linux(Debian 10(buster))下有效的结果后,唯一对我有用的是:
sudo /usr/sbin/lpadmin -p <printer> -o media=<size>
获取有效打印机名称列表,例如:
lpstat -p
然后使用那里列出的打印机名称之一和有效的介质尺寸,如以下示例(MFCL2740DW 仅适用于我拥有的兄弟打印机):
sudo /usr/sbin/lpadmin -p MFCL2740DW -o media=Letter