问题标签 [cups]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
637 浏览

macos - 如何拒绝用户向杯子添加/修改/删除打印机?

我正在使用 Mac OS X 10.6。我编写了一个程序,它将使用 libcups 向 CUPS 服务器添加和删除打印机。它有效,但现在我正在考虑安全方面。该程序采用用户名和密码在 CUPS 服务器上进行身份验证。无论我使用什么用户名和密码,只要它在系统上有效,它就可以工作。如何将访问限制为仅特定用户?

问候
艾伦

0 投票
1 回答
590 浏览

python - 存储有关 CUPS 打印作业的元数据的选项?

我正在编写一个打印系统,它在 CUPS 之上放置了一个简化的界面。用户将作业放入一个队列中,系统以各种方式处理它们(统计信息、页面配额等),然后为用户提供一个 Web 界面以将作业分派到多台打印机之一。

由于可能有多个用户信息亭、一个管理站等,我需要将作业元数据存储在可以处理并发访问的东西中。(你能称数据结构为“可重入”吗?)我能想象的几个选项是

  • 一个 MySQL 数据库:非常过分,但肯定是稳定和受支持的
  • 元数据文件,手动处理并发访问:完全适合我的需求,但是我必须重新实现 MySQL 原子性的一个子集,而且可能做得很差
  • 使用提供的线程安全 cupsipp.h API 写入 CUPS 控制文件

最后一个选项听起来最有吸引力,但有一个问题:我是用 Python 编写的,pycups 和 pkipplib 似乎都没有办法修改控制文件。

编辑:我应该澄清 pkipplib 可以生成新的 IPP 请求,但没有提供任何修改现有控制文件的方法。也就是说,我必须通过将它们作为新工作提交来进行更新。

有人有更好的主意吗?建议将不胜感激。

0 投票
2 回答
1114 浏览

macos - 这是通过 CUPS 获得纸张大小的最佳方法吗?

我有一个 CUPS 作业控制文件(可以在 /var/spool/cups/cnnnnn 找到这些文件)。我需要得到打印的实际尺寸。

这是我想出的方法:

  1. media使用属性获取纸张名称。(例如Letter
  2. printer-uri属性中获取打印机 uri。(例如ipp://localhost/printers/MyPrinter
  3. 通过将打印机 uri 传递给IPP_GET_PRINTER_ATTRIBUTES操作并获取printer-name属性来获取打印机名称。(例如MyPrinter
  4. 获取将打印机名称传递给cupsGetPPD方法的 PPD 的路径。
  5. 打开 PPD,将 PPD 的路径传递给ppdOpenFile方法。
  6. 通过将 PPD 和纸张名称传递给ppdPageSize方法来获取纸张大小。

这将起作用,但它似乎有点迂回。有没有更有效的方法来获得我需要的东西?

0 投票
1 回答
598 浏览

cups - CUPS 将打印忽略设置的配额

我设置了两种方式的配额(虽然 lpadmin 和通过编辑打印机。怎么了?(我正在运行 ubuntu linux 9.04)

0 投票
4 回答
23303 浏览

windows - 为 Windows 编译的 CUPS 服务器?

是否有适用于 Windows 的 CUPS 服务器版本?查看 CUPS 源代码,它似乎已准备好进行 Visual Studio 编译,但我没有找到任何实际支持的包的痕迹。我想在 Windows 上设置一个 CUPS 服务器,以便我可以从 Linux/MacOSX/Win 客户端打印到我在此服务器上设置的打印机。

0 投票
1 回答
2681 浏览

linux - 无法在 Debian Squeeze 中检查杯子打印机状态

对不起我的英语不好!

我正在使用 Debian 挤压和分配,我创建了 2 个虚拟 pdf 杯子打印机。两者都工作得很好。测试不同的管理命令;我尝试禁用其中一台打印机并将他的队列文件移动到第二台。我可以轻松做到。

现在,我想编写一个 bash 脚本来测试打印机的状态。因此,如果打印机被禁用,它只执行“移动”脚本。有没有办法知道杯子打印机的状态并在脚本中使用该信息?

例如,可以返回“O”的命令/函数是启用杯子打印机,否则返回“1”。

谢谢你的帮助,

0 投票
1 回答
2226 浏览

php - 使用cups + mysql打印作业统计?

我想设置一个连接到物理打印机的服务器。该服务器托管一个站点,以允许用户远程登录并从他们的系统发送打印作业,或者首先将其上传到服务器并在本地打印它,主机是linux机器,使用杯子打印。该网站需要以下功能:-

  1. 显示每个用户的打印统计信息和打印的页数(可能使用 mysql)

  2. 与杯子互动以处理打印作业

我有 php、mysql 的基本知识,但对杯子一无所知。

我该怎么做,我应该寻找什么关键字。现有的解决方案,如剪纸或 pykota,对于我的简单要求来说要么昂贵,要么过于复杂。

0 投票
2 回答
1589 浏览

ios - 如何将 CUPS 安装到 iOS 设备上?

我认为我可以在我的项目中包含一个静态库。但是,我不能终生为 armv6/armv7 架构编译 CUPS。

我在正确的道路上吗?如果是这样,我如何创建一个静态库?如果没有,有什么办法可以将 CUPS 安装到 iOS 设备上?

0 投票
0 回答
3688 浏览

ios - 使用 CUPS 或其他框架从 iOS/iPad 打印到 Epson TM-T88V 收据打印机

有谁知道如何开始CUPS跑步iOS?我们正在尝试使用或其他方法从 iPad打印到联网Epson收据打印机 ( ),但我们遇到了让 CUPS 在 iOS 上运行的障碍。我知道这是可以做到的,因为 iPad 应用程序已经可以通过传入打印机的 IP 地址来做到这一点。他们是怎么做到的?TM-T88VCUPS

0 投票
0 回答
4422 浏览

windows - 如何配置 CUPS 以从 RedHat 打印到共享的 Windows Zebra 打印机 TLP 3842

我正在尝试从虚拟 RedHat 实例打印到 Windows XP 工作站上共享的标签打印机。我在 Ubuntu 上使用 rlpr 取得了成功,但我们正在移植到我们的新标准 RedHat。因为它是虚拟化的,所以我无法访问位于http://localhost:631的 CUPS 管理页面,我正在尝试通过lpadmin完成所有操作。

Windows 机器LC16启用了 Unix 打印和文件共享服务(Samba?),我可以使用 rlpr 从 Ubuntu 打印到它。

我使用以下命令尝试设置 CUPS 打印机:

lpadmin -p 15747s_18200s -u 允许:全部 -v lpd://LC16/15747s_18200s

但是当我运行lpq时,我看不到打印机:

我的/etc/cups/printer.conf看起来像这样:

lpstat -t给出(除其他外)

我尝试使用cupsenable启用打印机,但没有运气:

不会改变任何东西,并且

挂起。

知道我需要做什么才能让事情顺利进行吗?

谢谢,

戴夫·克罗克