如何从 Linux 打印到 Win XP 上的共享 USB 打印机?

如何从 Linux 打印到 Win XP 上的共享 USB 打印机?

我的同事有一台 Win XP 机器,上面有 USB 打印机,他想共享这台机器,并能从 Linux 机器上打印到这台打印机上。他已在 Win XP 机器上启用共享,并在 Linux 机器上安装了 SAMBA。但他根本没法从 Linux 机器上看到 Win XP 机器或打印机。要使用共享打印机,需要做什么?

Linux 机器是双启动,另一个操作系统是 Vista,能够打印到打印机。

答案1

您应该能够与 Windows 机器对话并使用以下命令索取共享打印机的列表:

smbclient -L rice -N

如果 Windows 命名服务不可用,您将需要使用 -I 开关指定 Windows PC 的 IP 地址,如下所示:

smbclient -I 192.168.1.25 -L rice -N

找到 Windows 打印机后,您可以配置 CUPS。首先使用以下命令验证您的 CUPS 安装是否具有 smb 后端:

ls -l /usr/lib/cups/backend/smb

如果此文件不存在,请通过以下命令创建它:

ln -s `which smbspool` /usr/lib/cups/backend/smb

以下是设置上面显示的打印机的示例:

lpadmin -p RicePrinter -v smb://rice/INKJET -P /root/inkjet.ppd
enable RicePrinter
accept RicePrinter
lpadmin -d RicePrinter

如果 Windows 命名服务不可用,请将开关 -h 后跟 Windows PC 的 IP 地址添加到第一个 lpadmin 命令,如下所示:

lpadmin -p RicePrinter -h 192.168.1.25 -i smb://rice/inkjet-P /root/inkjet.ppd

您的打印机现在可以测试了。使用 lp 命令后跟文件名将文件发送到打印机,或者从应用程序内打印文档。

  • 请注意,此示例基于 Debian 系列发行版。

答案2

可能还有其他问题,因为对我来说,这一直是一个简单的菜单引导操作。他可能已经走了这条路,但这里

选择

系统 > 管理 > 打印 > 新建

此时打印机类型列表底部是“通过 SAMBA 的 Windows 打印机”

然后在打印机地址对话框中选择浏览,导航到共享打印机并选择它。

此时,它就像添加任何其他与驱动程序相关的 Linux 打印机一样(非常简单和即时,或者稍微多一点工作)。

然后打印一张测试页就可以了。

我刚刚在双启动电脑上完成了这些步骤,它和我在其他电脑上一样好用。正如我所说,可能还有其他问题,但这将是它应该如何工作的记录。

相关内容