搭建无线打印服务器
前言
现在很多新款打印机都已经有了便捷的无线打印功能,但也有很多老款的打印机只能通过USB数据线打印,为了方便打印和管理多台打印机,可以搭建一个打印服务器进行管理。前段时间用机顶盒改造了一个微服务器(点此回顾),这次就在它上面进行搭建。
安装CUPS
CUPS是一个用于类Unix操作系统的打印系统,它提供了一个标准的接口来管理打印任务和打印机。
安装之前先进行软件源更新
1 | apt update |
安装 CUPS
1 | apt install cups |
设置CUPS服务开机自启
1 | systemctl enable cups |
检查CUPS的服务状态
1 | systemctl status cups |
如果CUPS服务没有启动,使用以下命令来启动
1 | systemctl start cups |
修改CUPS的配置
使用以下命令打开CUPS配置文件
1 | vim /etc/cups/cupsd.conf |
按下i键进入编辑模式
将Listen localhost:631 改为Listen 0.0.0.0:631
将Browsing No改为Browsing Yes
在下面四个Location里面添加Allow all
编辑完成后按下ESC键,然后输入“:x”保存退出
重启服务
1 | systemctl restart cups |
安装avahi-daemon
avahi-daemon是一个用于实现零配置网络协议的守护进程。它主要用于在本地网络中自动发现服务和设备,允许计算机和设备在没有手动配置的情况下相互识别和连接。
使用以下命令进行安装
1 | apt install avahi-daemon |
启用avahi-daemon并设置开机自启
1 | systemctl start avahi-daemon |
配置防火墙(可选)
如果没有开启防火墙或者不需要防火墙可以跳过这一步
检查防火墙状态
1 | ufw status |
添加两条规则来放行对应端口
1 | ufw allow 631/tcp |
添加打印机
输入服务器本地ip+端口号打开CUPS的管理页面
点击“Administration”
输入服务器的用户名和密码登录
进入管理员页面
在添加打印机之前需要先把打印机插到服务器的USB接口并且安装驱动,我这台打印机是Brother DCP-7080D,对应的驱动已经集成在brlaser里面了(基本上所有Brother打印机的驱动里面都有,其他品牌的打印机需要自己找驱动并安装,有些驱动可以在openprinting找到)
安装printer-driver-brlaser(其他品牌的打印机不用安装)
1 | apt install printer-driver-brlaser |
安装完驱动就可以添加打印机了
选中自己的打印机(如果没识别出来就重新拔插一下或者换个插口试试),Continue
勾选“Share This Printer”,Continue
选中对应的驱动模型(如果驱动是从openprinting上下载的,直接上传下载的PPD文件),Add Printer
点击添加的打印机
打印测试页
如果打印没问题就可以了
电脑打印配置
在Windows电脑与服务器处于同一网络环境下时直接搜索无线打印机,搜索出来后添加设备就可以打印了
如果搜索不出来,可以手动添加
使用IP地址或主机名添加打印机,下一步
设备类型选择“IPP设备”,地址填写“http://服务器IP:631/printers/设备名称”,下一步
添加成功
可以对添加的设备进行管理
手机打印配置
大部分手机都有内置打印服务(苹果手机是AirPrint,安卓老款手机没有的话可以使用CUPS官方提供的APP,使用方法大同小异,APP下载方式在文末),这里以荣耀手机为例,在手机设置里搜索“打印”,找到对应的设置项
继续打开
点击“默认打印服务”
如果能搜索出来直接添加就可以了
搜索不出来的话手动添加
IP地址添加
地址填写“服务器IP:631/printers/设备名称”,与在电脑上的配置一样,不过注意前面的“http://”标头需要删掉,然后添加就可以使用了
结语
整个流程比较简单,主要的难点在于驱动安装部分。完成打印服务器的搭建并添加好打印机之后就可以在局域网内进行无线打印了,如果想要实现在公网也能打印可以参考上次改造微服务器中用到的内网穿透。如有疑问欢迎留言讨论。
配套资源
(部分素材来源于网络,如有侵权请联系作者删除)