准备工作
材料:HP LaserJet 1020plus、已装好系统的树莓派3B、路由器
将打印机的USB插到树莓派上,将两者通电;
用网线将树莓派连到路由器,去路由器后台找到树莓派的IP,后面需要用。
为了方便我设置了SSH、VNC以及树莓派静态IP
设置树莓派静态IP
编辑DHCP配置文件
sudo nano /etc/dhcpcd.conf
末尾内容添加如下:
interface wlan0 #etho是无线网卡名字 192.168.2.103是树莓派IP #routers是路由器IP domain_name_servers是DNS服务器IP static ip_address=192.168.2.103/24 static routers=192.168.2.1 static domain_name_servers=192.168.2.1
最后 sudo reboot
重启生效即可。
正式搭建工作
1. 安装惠普hp打印机驱动,此安装会同时安装cups服务,cups服务是我们搭建网络打印机的基础服务,
sudo apt-get install hplip
2. 将用户添加入lpadmin,我的用户名是pi。如果不添加,之后添加网络打印机,会报错:Unable to add printer forbidden。
sudo usermod -a -G lpadmin pi
3. 修改cups配置环境,为了安全起见,cups服务默认是只能本地用户localhost访问的。现在我们需要远程访问,需要修改配置文件/etc/cups/cupsd.conf。在修改配置文件前,先关掉cups服务
sudo service cups stop #关掉服务 sudo gedit /etc/cups/cupsd.conf #开始编辑 sudo service cups start #开启服务
编辑内容修改为:
# Only listen for connections from the local machine. #Listen localhost:631 Listen 0.0.0.0:631 #此行是修改行,并注释上一行 ... ... ... # Restrict access to the server…Order allow,deny Allow from @Local #此行是添加行 # Restrict access to the admin pages… Order allow,deny Allow from @Local #此行是添加行 ... # Restrict access to configuration files…AuthType Default Require user @SYSTEM Order allow,deny Allow from @Local #此行是添加行
一共有四处修改,记得重新开启cups服务。
4. 如果是其他打印机,就可以进行远程打印了,但是HP LaserJet P1020还需要一下操作:安装 foo2zjs: a linux printer driver for ZjStream protocol。
cd ~ #进入用户目录 #开始下载foo2zjs.tar.gz sudo wget http://foo2zjs.rkkda.com/foo2zjs.tar.gz #解压 tar zxf foo2zjs.tar.gz #进入解压目录 cd foo2zjs #执行以下操作: sudo make #编译 sudo ./getweb 10205. sudo make install sudo make install-hotplug sudo make cups
不装这个的话,打印测试页会提示“stopped "Filter failed””(别问我怎么知道的)
foo2系列有很多驱动,使用不同协议的打印机有不同的驱动,自己可以去 http://rkkda.com/ 看,例如我的1020:
5. 如果以上工作没问题,可以通过cups服务添加网络打印机设置了。打开同一局域网下计算机的浏览器,输入树莓派IP:613。例如我的树莓派IP是192.168.2.103,那么输入192.168.2.103:631。
6. 点击Add Print发布打印机,选择Local Printers中的HP1020打印机点击Continue。选择Share The Printers,点击Continue,选择HP1020-Foomatic-Foo2zjs-z1(recommended) ,注意一定要选择recommended版本的驱动(针对的HP1020)。
7. 添加打印机
windows10直接搜索“添加打印机”;安卓手机的系统打印机能直接搜索到。
参考链接:
1. https://blog.csdn.net/windsnow1/article/details/88026028
2. https://blog.51cto.com/13717089481/1953497