Linux使用CUPS实现网络打印机
本文地址:http://tongxinmao.com/Article/Detail/id/262
一、设备
家有老式笔记本一台
HP F2288打印机一台(无网卡模块)
能上网的路由器
二、准备
笔记本安装CentOS 6.4 x64系统(linux适合老式机子,开机比windows快多了)
到HPLIP官网(http://hplipopensource.com/hplip-web/index.html)下载F2288打印机linux驱动包(rpm包),或者到Openprinting网站(http://www.openprinting.org/printers)下也有,两个网站都可以看看
三、安装
笔记本系统安装完,连接无线路由,设置静态IP
安装下载好的HP打印机rpm驱动
关闭防火墙和selinux
service iptables stop
chkconfig iptables off
vim /etc/sysconfig/selinux disabled
默认centos已安装cups服务,检查下服务是否在运行
service cups status
下载安装firefox浏览器
将打印机的USB口连接至笔记本,开启打印机
查看dev下是否有新增的打印机设备lp0:ll /dev/usb/lp0
浏览器地址栏输入:https://localhost:631,开启CUPS的WEB管理界面
点击“Administration--Add printer”,输入root密码
“local printer”选择HP F2288带USB内容的项目
填写Name(建议简洁些,后续此会做为共享名)、description(随意)、location(随意)。这里我Name用的默认的HP_F2288_Printer
之后选择model类型(就是之前rpm驱动包里提供的,所以建议下最新的会比较全),我是"HP Deskjet F2200 series printer",总之选最接近的型号
最后点add printer就OK了
在首页的Printer选项下,选择print test page,打印机可正常工作啦
首页“Administration--server settings”,将share printers connected to this system和allow remote administration勾上,开启网络共享,以及方便远程管理
四、客户端为windows 7,如何连接CUPS共享的打印机
“设备和打印机”里,添加打印机,选择网络打印机,我的不在清单上,“依名称选取共享的打印机”,地址栏输入“http://192.168.1.100:631/printers/HP_F2288_Printer”来连接到共享的打印机(192.168.1.100为笔记本的静态IP,HP_F2288_Printer为刚才填写的Name,所以建议一开始就简洁些)
连上后,选择驱动列表里的HP-F2200 series就可以了
打印测试页,OK成功
五、HP F2288带的扫描功能如何实现
按上述操作后,centos已能正常识别HP这台打印机。而centos自带有个扫描软件,在桌面上方applications--Graphics--AcquireImages,我试下了,非常好用,比windows下安装的HP自家扫描软件功能更丰富,只是扫描完记得要保存成JPEG格式图片
总结:
这样实现的优点:
1.老本本迎来第二春,废物利用
2.搭配centos,老本本开机速度更快,方便临时突发打印东西时的时效需求
3.让不带网卡模块的老式打印机,也能实现网络共享打印
4.可远端管理,快捷高效
缺点:
1.linux下配置需要专业知识,不容易上手
2.因为走的是无线网络,打印传输相对延迟大点
打印机服务器搭建 -cups
系统:ubuntu 14.04
http://foo2zjs.rkkda.com/INSTALL
安装cups sudo apt-get install cups
安装完成后,把打印机的数据线与服务器进行连接,并打开打印机的电源。然后在firefox浏览器中输入:
localhost:631
在cups管理界面中的“Administration”下的“Printers”下点击“Add Printer”,按提示操作即完成配置。
完成配置后,要打印一份测试页,确保配置是正确的,再进行下一步,打印的测试页
.在cups服务器中,进入/etc/cups 目录下,可以看到如图4所示的cupsd.conf和cupsd.conf.default两个文件cupsd.conf和cupsd.conf.default的内容其实是一样的,我把cupsd.conf.default文件理解为cupsd.conf文件的备份。
在上述代码中:
a.把"Listen localhost:631"前加"#"注释掉。然后在下面另起一行,写上:Listen 0.0.0.0:631
意思为:请在631端口监听所有的主机连接。
b.把"Browsing off"前加"#"注释掉。然后在下面另起一行,写上:Browsing on
意思为:打开局域网共享。
c.在"BrowseOrder allow,deny"中另起一行,写上:allow 172.16.54.*(这里写上你共享任务的网段)
意思为:设定共享任务的网段
在上述代码中:
a.在"<Location /> Order allow,deny"后,另起一行,写上:allow 172.16.54.*
意思为:设定只有IP为 172.16.54.* 的客户机才能访问此服务器
b.在"<Location /admin> Order allow,deny"后,另起一行,写上:allow 172.16.54.88
意思为:设定只有IP为 172.16.54.88 的客户机才能访问此服务器的管理界面
在"<Limit Create-Job Print-Job Print-URI Validate-Job> Order allow,deny"后,另起一行,
写上:allow 172.16.54.*
意思为:设定IP为 172.16.54.* 的客户机只能进行 Create-Job Print-Job Print-URI Validate-Job的任务。
使用以下命令重启cups服务
sudo restart cups
上一篇:打印机纸张规格
下一篇:热敏打印机光栅位图点阵数据解析工具