如何在 Ubuntu 中直接打印到 LPT 端口?

如何在 Ubuntu 中直接打印到 LPT 端口?

在车库里闲逛时,我发现了一台古老的点阵打印机,Epson LX-1050。Ubuntu 毫无问题地识别了它,我能够通过 CUPS 使用它打印几页。

现在,出于某种原因,我想按照 1994 年设计的方式使用这台打印机:直接写入并行端口。我尝试了最简单的方法来操作我的 USB 3G 调制解调器:

echo "Y helo thar" > /dev/lp0

我遇到一个错误:

bash: /dev/lp0: Access denied

我尝试使用 sudo 执行此命令,但没有成功。还尝试镜像将文件复制到 LPT1 的 DOS 方法:

cp /etc/hosts /dev/lp0

再次没有成功。

有什么建议我可以尝试让这种方法发挥作用吗?

答案1

我似乎已经搞明白了。我真傻。在谷歌搜索 lpadmin 用法示例时,我偶然发现了这个链接:http://ubuntuforums.org/showthread.php?t=1437325

dev/lp0 的权限为:

c---rw---- 1 root lp 6, 0 2011-06-26 22:47 /dev/lp0

据我所知,lp 组只有 lp 用户。在我执行

sudo chmod 666 /dev/lp0

以下命令开始按预期工作,使打印机将符号输出到纸上:

echo "Y helo thar" > /dev/lp0

好吧,我想这是一个很好的保护措施,可以防止有人除了打印守护进程之外意外地写入 LPT 端口,但是对我来说这仍然没有意义,为什么它对 root 禁用?

答案2

可能 lp 守护程序 (打印后台处理程序) 拥有 /dev/lp 的独占所有权。关闭后台处理程序 (阅读 lpadmin 和 /usr/bin/disable)。

相关内容