2011年3月

使用Windows系统共享的网络打印机,在安装的时候直接右键连接就可以自动安装好驱动,而Linux下的CUPS则需要samba配合才可以实现。
配置方法参考以下链接http://www.enterprisenetworkingplanet.com/netsysm/article.php/3621876
首先我们需要下载通用驱动文件
http://www.cups.org/windows/software.php
cups-windows-6.0-1.i386.rpm
http://www.adobe.com/support/downloads/product.jsp?product=44&platform=Windows
winsteng.exe,我下载的英文版,可以根据自己需要下载别的语言
首先编辑/etc/samba/smb.conf,增加以下内容,并创建/etc/samba/drivers文件夹

[print$]
 comment = Printer drivers
 path = /etc/samba/drivers
 browseable = yes
 readonly = yes
 guest ok = yes
 write list = root

安装cups-windows-6.0-1.i386.rpm

rpm -i cups-windows-6.0-1.i386.rpm

在windows上安装好winsteng.exe,然后拷贝C:\WINDOWS\system32\spool\drivers\w32×86\3文件夹下的以下几个文件到/usr/share/cups/drivers/

 ps5ui.dll
 pscript5.dll
 pscript.hlp
 pscript.ntf 

基本文件已经准备完毕,因为前面配置写了write list = root,所以要确认一下samba是否有root用户,如果没有则用以下命令创建

# smbpasswd -a root

输入两遍密码即可,最后可以使用以下命令进行驱动文件的生成了

# cupsaddsmb -H localhost -U root -a -v 

最后可以看到一堆信息,如果看到类似如下信息则说明安装成功

 Printer Driver HPXXXX successfully installed.
 Running command: rpcclient localhost -N -A /tmp/4d47636686f16 -c "setdriver HPXXXX HPXXXX"
 params.c:Parameter() - Ignoring badly formed line in configuration file: w
 Succesfully set HPXXXX to driver HPXXXX.

最后可以到windows上测试一下效果了,我的测试结果是,点击右键安装,几乎在瞬间安装完成,比windows上共享的速度快太多了。