当用户想要添加新打印机时,它要求输入 root 密码。我有一个LTSP环境,系统一直在要求输入root密码;它甚至不需要 sudo 用户的密码。有什么方法可以让某个用户添加/编辑/删除打印机而不拥有任何其他特殊访问权限?
在另一个问题中,我询问了如何在使用 ls 时隐藏所有 .pyc 文件,Ignacio 提出以下建议:

正如我上面提到的,这并不准确,因为输出偶尔会错位:
ceasarbautista@hse140:~/Desktop/Statistics/statistics/markov$ ls
README __init__.pyc markov.py matrix2graph.pyc pathfinder.pyc priority_dict.pyc spanning.py
__init__.py graph.py matrix2graph.py pathfinder.py priority_dict.py space.py vector.py
ceasarbautista@hse140:~/Desktop/Statistics/statistics/markov$ ls | grep -v '\.pyc$' | column
README graph.py matrix2graph.py priority_dict.py spanning.py
__init__.py markov.py pathfinder.py space.py vector.py
Run Code Online (Sandbox Code Playgroud)
虽然我得到了满意的答案,但我很好奇:为什么 column 会这样做(并且可以修复它以正确打印)?
例如,我在 CUPS 上成功安装了“HP 1020 LaserJet”本地 USB 打印机。
它使用一种连接。
如果我得到另一台 HP 1020 LaserJet 打印机,它就无法打印,我必须修改打印机并更改它的连接。为什么?
我怎样才能避免这种情况?
我知道在同一台计算机上使用相同类型的打印机是不合逻辑的,但这就是我的环境。
如何让 CUPS 对所有相同类型、型号、制造商等的打印机使用相同的连接?
谢谢!!!
编辑:
我发现通过配置或任何其他标准方式是不可能的。
唯一的方法是找到一个很好的解决方法。
好的,所以在我的本地 X 屏幕上从远程服务器运行应用程序是相当直接的,就好像它们是本地应用程序一样。问题是,在尝试打印时,远程应用程序只能看到远程端的打印机。
是否可以(当然可以)将本地 CUPS 服务器端口转发到远程会话?如果是这样,如何?我曾尝试使用 -L 选项和打印机 (515) 服务,但无济于事。
我已阅读手册页,enscript但找不到此问题的答案。我正在尝试使用enscript下载的 AFM 文件进行打印,但无法使其工作。我不断收到以下错误:
$ enscript foo.txt -B -f OCRA10 -p - > foo.ps;
couldn't open AFM file for font "OCRA", using default
Run Code Online (Sandbox Code Playgroud)
我已经下载了 OCRA 的 AFM 文件,它位于/usr/share/fonts/ocr/OCRA.afm. 我已经用 重建了字体缓存fc-cache -fv。我还添加了一个本地 enscript 配置文件,其中包含 AFM 文件的路径:
$ cat ~/.enscriptrc
AFMPath: /usr/share/fonts/ocr
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激。
使用 CUPS Web 界面安装新打印机时,不显示驱动程序列表,仅显示消息
Unable to get list of printer drivers:
Success
Run Code Online (Sandbox Code Playgroud)
被展示。无法添加打印机。
问题:这里有什么问题?在互联网上搜索给出了有关该问题的多个报告,但很难找到解决方案。
另外,通过与 CUPS 通信的其他 GUI 添加打印机也不起作用。
此外,运行
lpinfo -m
Run Code Online (Sandbox Code Playgroud)
一段时间后打印
lpinfo: success
Run Code Online (Sandbox Code Playgroud)
而不是驱动程序列表,并运行
/usr/lib/cups/driver/foomatic list
Run Code Online (Sandbox Code Playgroud)
占用CPU 时间很长。
我们的销售应用程序在 Linux 上运行。我们使用提供的 Xerox 全局打印驱动程序在 CUPS 中设置打印机。
在每种打印机设置中,都有一个下拉菜单,用于选择要使用的纸盘,但您只能选择一个。因此,在我们拥有 8 个左右纸盘的打印机上,一旦选定的纸盘用完,打印机就会停止(仅当通过 Linux 打印时,Windows 才使用另一个纸盘)。
有什么方法可以设置它,使其使用所有纸盘,或至少使用几个纸盘?
我尝试在谷歌上搜索这个问题,What is the difference between cups-filters + foomatic-filters但找不到任何有用的信息。最具描述性的结果来自邮件列表,但似乎没有回答我的问题。
在 (k)ubuntu 中,这两个包是相互排斥的,我正在尝试确定要安装哪个包。
如果已经安装了相关的 CUPS。
我有 PDF 本地打印 (CUPS) 与 Google 云打印的质量问题。(GCP 更好,使用 CUPS 我得到错误的大小、错误的字符、错误的字体。所以我想知道 CUPS 是做什么的!)
打印机本身可以处理几种格式:application/pdf (? 1.0, ? 1.7)、image/jpeg、image/tiff、image/pwg-raster
几个月来,我以不同的方式将打印机添加到 CUPS,我还使用了“无驱动程序”,CUPS 在本地网络中检测打印机。
在所有情况下,它都会打印有错误的 PDF;不完全是,但使打印对我无用。会发生什么:页面放大了约 30%,从第 2 页或第 3 页开始,字体混淆,字符变成符号,段落以粗体打印,等等......
如果在同一台打印机上通过 Google 云打印打印相同的 PDF,效果会很好。直接将带有 PDF 的 USB 记忆棒送入打印机也同样出色。– 我希望从我的电脑打印也能获得同样好的效果!
我的问题是:
到目前为止,我发现 CUPS 调试/逆向工程的切入点不是很好(考虑到我的问题)...
我在 Arch Linux 4.19.2 系统上使用 HP LaserJet P1102 时遇到问题。
\n\nlsusb显示打印机已连接:
Bus 002 Device 005: ID 03f0:002a HP, Inc LaserJet P1102\nRun Code Online (Sandbox Code Playgroud)\n\n在 中journalctl,通过 USB 插入打印机时我看到以下消息:
kernel: usb 2-1.1: new high-speed USB device number 7 using ehci-pci\nkernel: usb 2-1.1: New USB device found, idVendor=03f0, idProduct=002a, bcdDevice= 1.00\nkernel: usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3\nkernel: usb 2-1.1: Product: HP LaserJet Professional P1102\nkernel: usb 2-1.1: Manufacturer: Hewlett-Packard\nkernel: usb 2-1.1: SerialNumber: 000000000Q80X0EGSI1c\nkernel: usb-storage 2-1.1:1.0: USB Mass …Run Code Online (Sandbox Code Playgroud) printing ×10
cups ×7
linux ×2
enscript ×1
hp-printer ×1
pdf ×1
postscript ×1
ppd ×1
rhel ×1
ssh ×1