实际中,往往要求多台电脑共享一台打印机,此时构建一个cups打印服务器可满足要求,也可以购买专门的打印代理服务设备。
本次是为HP LaserJet P2015d打印机构建一个共享的服务器,因为这款打印机不支持网络打印功能,故要一台电脑作为共享的主机。总体的框架图如图1所示:
图1:总体的框架
首先配置cups服务器(cups服务器使用的是ubuntu 12.04系统)和打印机:
1.在ubuntu 12.04中,已经安装好了cups,如果没有安装,可用以下命令进行安装
sudo apt-get install cups
2.安装完成后,把打印机的数据线与服务器进行连接,并打开打印机的电源。然后
在firefox浏览器中输入:
localhost:631
就可以打开如图2所示的cups管理界面
图2:cups管理界面
3.在cups管理界面中的“Administration”下的“Printers”下点击“AddPrinter”,按提示操作即完成配置。
完成配置后,要打印一份测试页,确保配置是正确的,再进行下一步,打印的测试页如图3所示:
图3:本地服务器打印测试页
4.在cups服务器中,进入/etc/cups 目录下,可以看到如图4所示的cupsd.conf和cupsd.conf.default两个文件
图4:cupsd.conf和cupsd.conf.default
cupsd.conf和cupsd.conf.default的内容其实是一样的,我把cupsd.conf.default文件理解为cupsd.conf文件的备份。
5.修改cupsd.conf文件,找到如图5,所示的代码:
图5:要修改的代码段1
在上述代码中:
a.把"Listenlocalhost:631"前加"#"注释掉。然后在下面另起一行,写上:Listen 0.0.0.0:631
意思为:请在631端口监听所有的主机连接。
b.把"Browsingoff"前加"#"注释掉。然后在下面另起一行,写上:Browsing on
意思为:打开局域网共享。
c.在"BrowseOrderallow,deny"中另起一行,写上:allow 172.16.54.*(这里写上你共享任务的网段)
意思为:设定共享任务的网段
6.修改cupsd.conf文件,找到如图6,所示的代码:
图6:要修改的代码段2
在上述代码中:
a.在"<Location/> Order allow,deny"后,另起一行,写上:allow172.16.54.*
意思为:设定只有IP为172.16.54.*的客户机才能访问此服务器
b.在"<Location/admin> Order allow,deny"后,另起一行,写上:allow172.16.54.88
意思为:设定只有IP为 172.16.54.88的客户机才能访问此服务器的管理界面
7.修改cupsd.conf文件,找到如图7,所示的代码:
图7:要修改的代码段3
在"<Limit Create-Job Print-JobPrint-URI Validate-Job> Orderallow,deny"后,另起一行,
写上:allow172.16.54.*
意思为:设定IP为 172.16.54.* 的客户机只能进行 Create-Job Print-JobPrint-URI Validate-Job的任务。
8.使用以下命令重启cups服务
sudo restart cups
效果如图8所示:
图8:重启cups服务
然后,配置客户机,在此,所有客户机使用的是Windows系统,包括Windows XP与Windows7两种。在此,只以Windows 7的配置为例。配置客户机的本质就是与打印服务器联系上,添加打印机。
1.在Windows7下,点击左下角的微软图标,选择"设备和打印机",再选择"添加打印机",会出现如图9所示的对话框
图9:添加打印机对话框
2.在“添加打印机”对话框中选择“添加网络、无线或Bluetooth打印机”,然后会出现如10所示的对话框
图10
3.如图10所示,选择“我需要的打印机不在列表中”,将出现如图11所示的对话框
图11
3.然后选“按名称选择共享打印机”,这个地址怎么填呢,打开IE,在地址栏输入你的cups服务器地址,然后选"Printers",选择打印机点进去。最后,把IE地址栏的地址复制进图11的框内即可。如图12所示:
图12
4.填好后,选择图11中的下一步,出现图13所示对话框
图13
5.如图13所示,在左边选择"HP",右边选择好驱动,然后确定,就配置完成了。
6.最后,在远程打印一个测试页,如图14所示
图14:远程打印的测试页
最后,祝贺你构建好了一个远程共享打印系统!
补充知识:
1.cups(Common UNIX PrintingSystem,通用UNIX打印系统)是一种构建在IPP(Internet PrintingProtocol,基于HTTP协议)协议之上的跨平台打印服务器。
2.IPP(Internet PrintingProtocol)是一种客户端/服务器型协议,服务器方可以是一台打印服务器,也可以是一台具有网络功能的独立打印机。