打印机是否被Linux支持:

http://www.openprinting.org/printers
 
查看是否安装了打印机:
[root@Centosszm ~]# lsusb
 
安装打印服务:
[root@Centosszm ~]# yum groupinstall "Print Server"
 
1.开放本机所有网络接口监听网络中的打印请求
#Listen localhost:631
Listen 0.0.0.0:631
 
2.CPUS浏览与控制
# Restrict access to the server...
<Location />
  Order allow,deny
  Allow From 127.0.0.0/8
  Allow From 192.168.179.0/24
</Location>
 
3.管理CUPS者
# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
  Allow From 127.0.0.0/8
  Allow From 192.168.179.0/24
</Location>
 
[root@Centosszm ~]# /etc/init.d/cups start
Starting cups:                                             [  OK  ]
[root@Centosszm ~]# netstat -tulnp | grep 'cups'
tcp        0      0 0.0.0.0:631                 0.0.0.0:*                   LISTEN      5556/cupsd
udp        0      0 0.0.0.0:631                 0.0.0.0:*                               5556/cupsd
 
打印方式:
1.USB端口:usb:/dev/usb/lp0
2.网络打印机:ipp://ip/打印机型号
3.网上邻居打印机:smb://user:password@host/pinter
 
HTTP安装CUPS打印机:
https://192.168.179.7:631
 
安装位置:
https://192.168.179.7:631/printers/打印机名称
 
[root@Centosszm ~]# vi /etc/samba/smb.conf
        load printers = yes
        cups options = raw   #可支持来自Windows用户的打印作业
        printcap name = cups
        printing = cups      #使用CUPS打印系统
[printers]
        comment = All Printers
        path = /var/spool/samba   #默认把来自SAMBA的打印作业暂时放置的队列
        browseable = no
        guest ok = no
        writable = no
        printable = yes
 
[root@Centosszm ~]# testparm
[root@Centosszm ~]# /etc/init.d/smb restart
Shutting down SMB services:                                [  OK  ]
Starting SMB services:                                     [  OK  ]
 
让SAMBA主动提供驱动程序给Windows用户使用:
CUPS主要是通过利用postscript的打印语言与打印机沟通的,国此客户端只要取得postscript的驱动程序就能够使用SAMBA服务器所提供的打印机了。下面这个网络下载这个文件:
http://www.cups.org/software.php  默认驱动安装位置:/usr/share/cups/dricers
 
要支持W2000以后的Windows版本还要到C:\WINDOWS\system32\spool\drivers\w32x86\3下载PS开头的文件放在/usr/share/cups/dricers中;
 
[root@Centosszm ~]# vi /etc/samba/smb.conf
[print$]
        comment=Printer drivers
        path=/etc/samba/drivers       #存放打印机驱动程序目录
        browseable=yes
        guest ok=no
        read only=yes
        write list=root               #驱动程序管理员
 
[root@Centosszm ~]# mkdir /etc/samba/drivers
[root@Centosszm ~]# chcon -t samba_share_t /etc/samba/drivers
[root@Centosszm ~]# pdbedit -a -u root
new password:
retype new password:
Unix username:        root
NT username:
Account Flags:        [U          ]
User SID:             S-1-5-21-3409024784-2675410203-1103496359-1003
Primary Group SID:    S-1-5-21-3409024784-2675410203-1103496359-513
Full Name:            root
Home Directory:       \\myserver\root
HomeDir Drive:
Logon Script:
Profile Path:         \\myserver\root\profile
Domain:               MYSERVER
Account desc:
Workstations:
Munged dial:
Logon time:           0
Logoff time:          never
Kickoff time:         never
Password last set:    Sun, 07 Apr 2013 15:12:07 CST
Password can change:  Sun, 07 Apr 2013 15:12:07 CST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
 
[root@Centosszm ~]# testparm
[root@Centosszm ~]# /etc/init.d/smb restart
Shutting down SMB services:                                [  OK  ]
Starting SMB services:                                     [  OK  ]
 
本地测试:
[root@Centosszm ~]# smbclient -L //127.0.0.1 -U root
 
#将打印机驱动程序挂上SAMBA
[root@Centosszm ~]# cupsaddsmb -H localhost -U root -a -v
 
H:SAMBA服务器名
h:CUPS服务器名
a:自动搜索出所有可用的CUPS打印机
v:列出更多信息
U:打印机管理员
 
#多出一个目录:W32X86
[root@Centosszm ~]# ll /etc/samba/drivers/
 
 
列出所有可用的打印机状态:
[root@Centosszm ~]# lpstat -a
 
 
查询目前默认打印机的工作情况:
[root@Centosszm ~]# lqp
 
删除所有的工作项目:
[root@Centosszm ~]# lprm -