[ 已解决 ] 安装 网络 Canon LBP3018 打印机失败

安装网络 Canon LBP3018 打印机过程:

1、该网络打印机在 VirtualBox 虚拟机的 xp 中已经安装成功。

2、在打印机属性中,查看共享标签:CanonLBP , 共享主机 IP 地址:192.168.1.102 。

3、按 SDB 教程操作,在 yast 里填好共享主机 ip 和网络打印机共享名后,测试连接时,无法连接打印机。

测试错误代码如下:

Domain=[WORKGROUP] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]

Testing share 'CanonLBP' on '/192.168.1.102':
tree connect failed: NT_STATUS_ACCESS_DENIED

Share 'CanonLBP' on '/192.168.1.102' does not accept print jobs (share may not exist?)

PING 192.168.1.102 (192.168.1.102) 56(84) bytes of data.
64 bytes from 192.168.1.102: icmp_seq=1 ttl=64 time=0.219 ms

--- 192.168.1.102 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.219/0.219/0.219/0.000 ms

Host '192.168.1.102' is accessible (responds to a 'ping')

解决思路:

1、可能是 samba 的问题。(错误)
2、可能是信息没有填写完全的问题。

解决办法:

1、 Yast -> samba 文件共享服务器 -> 全部默认设置。 (不能解决问题)
2、 Yast -> 打印机设置 -> 通过网络打印 -> 连接向导 -> 通过打印服务器 -> windows 或 Samba (SMB/CIFS) -> 右边连接设置 -> 所有项目都要填完,原来只填了服务器 IP 和打印机共享名,现在把工作组、用户名 guest 和密码 guest 都填上。

再测试,连接成功,打印测试页正常。

终于解决了这个问题。。。

安装步骤附后:
1、到佳能官网上下载驱动:
support-cn.canon-asia.com/contents/CN/ZH/0100459603.html

2、解压驱动压缩包,到以下目录中安装驱动程序,一共两个,都要安装,有先后顺序,请自行测试。
Linux_CAPT_PrinterDriver_V260_uk_EN/32-bit_Driver/RPM/

3、 Yast -> 打印机设置 -> 通过网络打印 -> 连接向导 -> 通过打印服务器 -> windows 或 Samba (SMB/CIFS) -> 右边连接设置 -> 所有项目都要填完,服务器 IP (也可以填写主机名)、打印机共享名(要在 XP 中打印机属性中查看共享页面) 、工作组 WORKGROUP、用户名 guest 和密码 guest 都填上。

再测试,连接成功后,进入下一步,不然请检查出错细节。

4、在驱动程序中选择 Canon LBP3010/LBP3018/LBP3050 CAPT(UK)

5、默认纸张大小选择 A4

6、设置专有名称,这个填回 CanonLBP3018 吧,什么名字都是可以自己定,但是不能有特殊字符(包括空格)。

7、用作默认,可以打勾。

确认就安装好了。

不懂这个,但我觉得想连接虚拟机里的打印机应该需要端口映射之类的设置吧,而且它那个 ip 在外部肯定也是不能直接访问的。

你需要把 Virtualbox 里面的虚拟机 XP 的网络类型改成桥接网络(如果你的虚拟机是通过主机联网的话,否则要配置 Hostonly 模式那个比较难),那样虚拟机会出现在你主机所在的子网并有一个主机也可以访问的 IP 地址。现在那个 192.168.1.102 可能看上去跟你的主机在同一网段(如果你正在使用 NAT 的话),但实际上那是一个和主机所在子网平行没有交点的子网,里面只有虚拟机这一台计算机,主机访问不到它。

晕,我觉得我自己表述不够清楚。。。

主系统:opensuse 13.1 ,安装了虚拟机 VirtualBox ,在 VirtualBox 里安装了 xp ,已经通过桥接网卡的方式安装成功了这台网络打印机。

现在求助的是在 opensuse 环境下安装它。。。

在虚拟机里检查打印机属性,查看共享标签:CanonLBP , 共享主机 IP 地址:192.168.1.102 。

按 SDB: 远程打印教程操作,在 yast 里填好共享主机 ip 和网络打印机共享名后,测试连接时,无法连接打印机。

教程如下:

远程连接 Windows 打印机
Windows 打印主机设置

Windows 主机连接打印机并正确配置驱动,能够正常打印。

更改所用连接的防火墙设置 -> 高级,不钩选不允许例外;点例外标签,钩选 网络打印和文件共享,确定。
SUSE 打印客户端设置

YAST-> 安全与用户 -> 防火墙 -> 允许的服务 -> 外部区域,选 SAMBA 服务器,点添加,确定。

root 权限编辑 /etc/sysconfig/SuSEfirewall2 找到 FW_ALLOW_INCOMING_HIGHPORTS_TCP, FW_ALLOW_INCOMING_HIGHPORTS_UDP 两项,分别在后面引号加入 microsoft-ds netbios-ns,保存。

开终端,root 权限重启防火墙:

rcSuSEfirewall2 restart

再次打开 YAST -> 硬件 -> 打印机 -> 添加 -> 网络打印机 -> 通过 SMB 网络打印机

工作组填 Windows 主机所在的工作组名称 主机名填入 Windows 主机名或其 IP, 填 IP 成功率更高 远程队列名填 Windows 下打印机名,在打印机属性,共享标签下查看 用户名密码填 Windows 登录用的用户名密码,密码可以留空 测试看是否可以访问,可以的话下一步,确定钩选执行本地过滤 选择合适的 PPD 驱动,下一步,测试打印,确定-完成。

在测试连接时,出错,代码如下:

    Domain=[WORKGROUP] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]

    Testing share 'CanonLBP' on '/192.168.1.102':
    tree connect failed: NT_STATUS_ACCESS_DENIED

    Share 'CanonLBP' on '/192.168.1.102' does not accept print jobs (share may not exist?)

    PING 192.168.1.102 (192.168.1.102) 56(84) bytes of data.
    64 bytes from 192.168.1.102: icmp_seq=1 ttl=64 time=0.219 ms

    --- 192.168.1.102 ping statistics ---
    1 packets transmitted, 1 received, 0% packet loss, time 0ms
    rtt min/avg/max/mdev = 0.219/0.219/0.219/0.000 ms

    Host '192.168.1.102' is accessible (responds to a 'ping')

我觉得你首先应该确认那台网络打印机是否可以正常访问,如果可以了再进行后面的步骤。

nmap -p 35,137-139,515,631,9100-10000 192.168.1.102

不过更多时候在 Linux 下打印机遇到的都是驱动问题。

网络打印机可以正常访问。。。

在虚拟机里我已经安装好了这台网络打印机,并打印成功了测试页。。。

但是我现在在 opensuse 中连接不上这台网络打印机,就更别提安装驱动了。。。

tree connect failed: NT_STATUS_ACCESS_DENIED

是个 samba 错误。所以你看下你的

/var/log/samba/

下面的日志。

我觉得你应该先确认你的打印机是否被 Linux 系统支持,我记得好像有个网站上有统计,而且提供相应的 PPD 文件。
另外如下图,你应该确认是已经可以“测试连接”通过但在打印环节出的问题呢?还是根本就没连接上?

!](http://image.suse.org.cn/image.php?di=CE5W)

[quote=“gmg137”] 我觉得你应该先确认你的打印机是否被 Linux 系统支持,我记得好像有个网站上有统计,而且提供相应的 PPD 文件。 另外如下图,你应该确认是已经可以“测试连接”通过但在打印环节出的问题呢?还是根本就没连接上?
!](http://image.suse.org.cn/image.php?di=CE5W)
[/quote]

我现在就是卡在这里了,输入 ip 地址和共享名后,点下面的测试连接,连接不上。。。。

有个问题:

root 权限编辑 /etc/sysconfig/SuSEfirewall2 找到 FW_ALLOW_INCOMING_HIGHPORTS_TCP, FW_ALLOW_INCOMING_HIGHPORTS_UDP 两项,分别在后面引号加入 microsoft-ds netbios-ns,保存。

这两项在 SuSEfirewall2 里没有,我自行加在最后了,应该没问题吧。。。

写法是:
FW_ALLOW_INCOMING_HIGHPORTS_TCP=“microsoft-ds netbios-ns”
FW_ALLOW_INCOMING_HIGHPORTS_UDP=“microsoft-ds netbios-ns”

问题在于你哪儿找的资料、资料的新旧。

在论坛 FTP 中有 openSUSE 的入门教程,里边有专门讲打印机的一节。很明显你看到的教程是针对以前某个版本的,不具有通用性。另外你作为打印机的访问者而非共享者,理论上应该不存在修改防火墙的问题。

这个是官网上的链接啊。。。。
SDB: 远程打印教程
zh.opensuse.org/SDB:%E8%BF%9C%E7%A8%8B%E6%89%93%E5%8D%B0%E6%95%99%E7%A8%8B

用超级终端开 /var/log/samba/ 后,ls 没有任何文件。。。。

SDB 算不上官方文档,而且许多都是很久没更新了。

已经强行安装,打印测试页,发现错误,代码如下。

错误代码存在目录:

/var/log/cups/

存放文件:

error_log

看起来像是打印机服务器配置的不是 631 端口。。。。

E [05/May/2014:11:15:53 +0800] Unable to bind socket for address [v1.::1]:631 - Cannot assign requested address.
E [05/May/2014:11:16:38 +0800] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [05/May/2014:11:21:03 +0800] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [05/May/2014:11:24:16 +0800] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [05/May/2014:14:00:50 +0800] [cups-driverd] Bad driver information file "/usr/share/cups/drv/sample.drv"!
E [05/May/2014:14:16:40 +0800] Unable to bind socket for address [v1.::1]:631 - Cannot assign requested address.
E [05/May/2014:14:16:40 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:17:10 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:17:40 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:18:10 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:18:40 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:19:10 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:19:40 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:20:10 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:20:17 +0800] [Job 2] Connection failed: NT_STATUS_IO_TIMEOUT
E [05/May/2014:14:20:22 +0800] [Job 2] Connection failed: NT_STATUS_IO_TIMEOUT
E [05/May/2014:14:20:27 +0800] [Job 2] Connection failed: NT_STATUS_IO_TIMEOUT
E [05/May/2014:14:20:27 +0800] [Job 2] Unable to connect to CIFS host, will retry in 60 seconds...
E [05/May/2014:14:20:40 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:21:10 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:21:40 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:22:10 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:22:45 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:23:15 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:23:45 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:26:28 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.
E [05/May/2014:14:26:58 +0800] [cups-polld 20111219-1234:631] Unable to connect to 20111219-1234 on port 631.

cups 应该是 linux 间共享打印机的协议,你用 cups 去连接 windows 的打印机当然会出错。

我要先安装 samba 服务吗?

我正在使用 Canon MF4800 的打印机,驱动安装成功,但总是出现 connect failed: NT_STATUS_ACCESS_DENIED

试了好久,我才发现是防火墙的问题

但不知道如何设置,内部区域和外部区域中,我全部加入 samba 客户端和服务端,也不管用,只有停用防火墙才能正常使用打印机

我安装 HP 的一个打印机是不需要设置防火墙

这个问题我已经搞定。

单位的打印机由 xp 共享的,它原来是自动分配 IP 的,设置固定 IP 。
因为是同一局域网, samba 服务 设置在内网,就行了。