利用 OpenWrt 在局域网下共享打印机,主要需要以下两个插件
接下来分别介绍两个插件的安装及配置流程
p910nd
安装插件
opkg update
opkg install kmod-usb-printer p910nd luci-app-p910nd luci-i18n-p910nd-zh-cn
连接打印机
将打印机连接到路由器 USB 接口,输入指令
ls /dev/usb
应该能看到lp0
设备
在 LUCI 界面配置打印机
找到 服务
-打印服务器
,勾选启动。
设备填上刚才看到的/dev/usb/lp0
,接口选择lan
用作局域网共享,端口通常为9100
。
在 Windows 配置打印机
首先安装打印机对应的驱动程序。在这个案例中我使用的打印机为佳能MG2580s
。
设置
-设备
-打印机和扫描仪
-添加打印机
-我需要的打印机不在列表中
选择使用 TCP/IP 地址或主机名添加打印机
,点击下一步。
设备类型选择TCP/IP 设备
,主机名或 IP 地址填上路由器网关,取消勾选自动查询驱动,点击下一步。
等待自动检测失败,选择自定义
,点击设置,检查端口是否与之前设置的9100
相同,确认后点击下一步。
寻找打印机对应的驱动,Canon
-Canon MG2500 series Printer
。
大功告成,enjoy!
- 注:
- 有的时候打印时出现找不到设备的情况,通常是打印机与路由器通讯不畅,进路由器管理找到
p910nd
服务并重启一下就好。
SANE
安装插件
先安装通用插件:
opkg update
opkg install sane-frontends xinetd sane-daemon
之后还需要安装sane-backends
,类似于扫描仪驱动接口,如果直接安装这个包过于庞大,我们只需要挑选适合自己打印机型号的驱动包即可。
opkg list sane-* # list available backend package
# in my case, I'm using MG2580s which is a Pixma scanner.
# There is a suitable package `sane-pixma`
opkg install sane-pixma
可以通过scanimage -L
命令检查是否安装成功,如果打印机正常连接且安装了对应的 backend,应该能看到如下效果:
device `pixma:04A9176D_C1449C' is a CANON Canon PIXMA MG2500 Series multi-function peripheral
配置
编辑/etc/sane.d/saned.conf
192.168.1.0/24 # allow local ip to visit
检查/etc/services
是否有sane-port
,通常安装了sane-daemon
会自动添加,如果没有,则在文件后手动添加
sane-port 6566/tcp sane saned # SANE network scanner daemon
编辑/etc/xinetd.d/sane
添加
service sane-port
{
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = root
group = root
wait = no
disable = no
}
最后在 LUCI 界面中系统
-启动项
,找到xinetd
并设置为启用。
Windows 客户端
windows 下需要用sanetwain
客户端进行扫描,打开客户端后,把主机名设为路由器网关,端口号6566
,即可开始扫描。