使用树莓派配置打印机服务器最常用的就是CUPS,这里就用CUPS来配置
首先使用ssh登录树莓派
1.更新
sudo apt-get update
2.安装HPLIP
sudo apt-get install hplip
3.安装CUPS
sudo apt-get install cups
安装HPLIP时,CUPS已经安装上了,这里安装时会看到已经安装过的提示。
4.将树莓派默认用户pi添加到用户组lpadmin里
sudo usermod -a -G lpadmin pi
5.配置cupsd.conf
先备份cupsd.conf
sudo cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.bak
cupsd.conf默认的配置文件只能本地访问,所以需要修改一些内容使局域网的电脑访问
配置不成功时,访问http://树莓派ip:634/会出现forbidden的界面
首先需要将
Listen localhost:631
改成
Listen 0.0.0.0:631
将<Location /> <Location /admin> <Location /admin/conf>三个节点添加
Allow from @LOCAL
可能有的教程给的配置是Allow @Local,这是旧版的兼容写法,在
CUPS官网和
ARCH LINUX的教程中给出都有from
此时再重启CUPS服务即可生效
sudo service cups restart
笔者的校园网环境有些特殊,是跨网段的局域网。
所以在<Location /> <Location /admin> <Location /admin/conf>三个节点再添加一句
Allow from 172.*
这些节点可以添加网段的方法如下
<Location /path>
...
Allow from All
Allow from None
Allow from *.domain.com
Allow from .domain.com
Allow from host.domain.com
Allow from nnn.*
Allow from nnn.nnn.*
Allow from nnn.nnn.nnn.*
Allow from nnn.nnn.nnn.nnn
Allow from nnn.nnn.nnn.nnn/mm
Allow from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
Allow from @LOCAL
Allow from @IF(name)
</Location>
再次重启服务,使之生效
sudo service cups restart
6.打开网页配置打印机共享
连接打印机和树莓派
输入 https://你的树莓派ip:631 进入配置界面
Administrator-->Add Printer-->输入树莓派的用户名密码pi/raspberry
显示的Local Printers会有你连接上的那台打印机,应该是带有USBxxx之类的,选中它点击continue
在这个界面Name是打印机的名字,以后用来在URL中确定打印机,所以短一些比较好
勾选Sharing,别的不用变,点Continue
下一个界面选择驱动程序,这边的时候记得选择recommended的那个驱动,如果自己有ppd,可以上传打印驱动程序
最后就设置完成了,复制最后一个界面的URL,也就是类似于http://你的树莓派ip:631/printers/打印机名 就可以在其他电脑上添加共享打印机了
在Printer页面可以复制打印机对应的超链接,超链接可能为HTTPS格式,如:https://192.168.199.132:631/printers/HP_LaserJet_Professional_P1108
在电脑上添加打印机要将https改成http即
http://192.168.199.132:631/printers/HP_LaserJet_Professional_P1108
7.windows打印机配置
打开任意文档,文件-->打印,点击查找打印机,在打印机(P)地址栏输入:http://192.168.199.132:631/printers/HP_LaserJet_Professional_P1108
系统检测到打印机后,会提示安装该网络打印机驱动。如果电脑安装过打印机驱动,直接点击浏览,找到驱动目录的autorun.inf,然后选择打印机型号1108,之后就可以打印了。以后打印机就不用再安装驱动就可以直接打印了。
附:故障处理
1.打印机出现卡纸故障后,无法再使用网络打印
解决方法:检查CUPS后台Printer选项之后,打印机状态停留在Pause(暂停)状态,无论如何重启打印机和树莓派,始终是Pause状态;查看Jobs选项,后面还有很多发送到CUPS的任务,但任何打印任务都无法往下执行。打印机直连电脑却可以打印。笔者尝试在CUPS删除该打印机然后再重新添加,状态变成了Idle(空闲),打印机恢复正常,能正常打印了。
2.打印机状态出现暂停
在windows上打印列表里出现已暂停的提示,这时需要先清空打印任务,具体方法如下:1.进入CUPS维护界面:进入CUPS后台页面-->Printer-->点击打印机名。2.在维护界面移除所有打印任务:第一个下拉菜单中选择Move All Jobs,3.在维护界面重新调整打印机状态:重新进入维护页面,选择第三项Pause printer/Resume Printer,反复几次,最终使打印机后台的状态变成Idle(空闲),或者Idle - "ready to print"(空闲-"等待打印")