PVE的LXC容器系统安装CUPS软件,实现多平台共享的印表机(多图)
PVE的LXC容器系统安装CUPS软件,实现多平台共享的印表机
#####################
前言:
家里使用Canon LBP6030的USB印表机,连接住路由器(Youku1)的Padavan(老毛子)系统实现无线打印,但只能在Windows的平台实现无线打印,然而Apple的系统(如: macOS、IOS)就无法实现,难免有少许不便。
在SMZDM发现这篇贴文N1刷armbian变身打印服务器,支持全平台无线打印@PC扫瞄 ,可以安装CUPS软件成为印表机伺服器系统,就有了以下的内容记录。
#####################
目录内容:
实现条件
PVE下安装LXC容器系统(Debian)
LXC直通USB端口
LXC(Debian)安装CUPS软件及印表机驱动
多个系统平台实现印表机安装及列印测试
Windows 10 系统安装印表机
Windows 7 系统安装印表机
macOS 系统安装印表机
android 系统安装印表机
#####################
实现条件:
可以安装CUPS软件的平台
如: armbian、ubuntu、centos等,我选取Debian Linux平台
可支援平台的印表机驱动程式
如果在OpenPrinting找到支援的驱动程式可忽略这一步
#####################
PVE下安装LXC容器系统(Debian)
LXC 提供了一个作业系统级的虚拟化环境,基于Linux的系统上安装。
而免费的PVE虚拟伺服器可以很方便地建立一个全新共用内核的Linux系统(即罐头系统)
下载CT模板:
LXC系统的建立
新建的LXC系统暂不用启动
#####################
LXC直通USB端口:
印表机Canon LBP6030的USB口和PVE主机的USB口对接
lsusb查看连接的USB装置
lsusb
看到Bus 001内的Device 003是Canon
查看Canon装置的数字编号是189
ls -al /dev/bus/usb/001
透过cgroup允许LXC存取PVE的USB装置
cat >> '/etc/pve/lxc/100.conf' << EOF
lxc.cgroup.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/bus/usb/001 dev/bus/usb/001 none bind,optional,create=dirEOF
LXC的ID是100 #配置文件路径是: /etc/pve/lxc/100.conf
189:* rwm 内的装置 # 允许读、写、挂载
挂载整个Bus 001 USB端口 # 这样的好处是就算印表机的USB unplug多次而变动Device的编号也不影响挂载
启动新建的LXC容器
在LXC容器内的Console查看是否已经挂载成
dmesg | grep -in 'canon'
1617:[3489934.461195] usb 1-1: Manufacturer: Canon,Inc.
1837:[3494585.821378] usb 1-1: Manufacturer: Canon,Inc.
看到Manufacturer: Canon,Inc. 代表已成功在LXC容器内连入到USB印表机
#####################
LXC(Debian)安装CUPS软件及印表机驱动:
CUPS(Common UNIX Printing System,通用Unix列印系统)是Fedora Core3中支援的列印系统,它主要是使用IPP(Internet Printing Protocol)来管理列印工作及伫列,但同时也支援LPD(Line Printer Daemon)和SMB(Server Message Block) 以及AppSocket等通信协定。来自百度
安装CUPS软件
sudo apt update && sudo apt install -y cups
开启CUPS 的远端存取权限
sudo cupsctl --remote-any
将当前的使用者加入到lpadmin群组
sudo usermod -aG lpadmin $USER
如果在OpenPrinting找到支援的印表机,可忽略驱动程式这一步
下载及安装Canon LBP6030的印表机驱动程式
wget https://gdlp01.c-wss.com/gds/0/0100005950/10/linux-UFRIILT-drv-v500-uken-18.tar.gz && tar xzvf linux-UFRIILT-drv-v500-uken-18.tar.gz && sudo dpkg -i ./linux-UFRIILT-drv-v500-uken/64-bit_Driver/Debian/cnrdrvcups-ufr2lt-uk_5.00-1_amd64.deb && rm -rf linux-UFRIILT-drv-v500-uken linux-UFRIILT-drv-v500-uken-18.tar.gz
浏览器输入https://10.1.1.253:631/admin/
LXC系统的IP地址是: 10.1.1.253
列印测试页面
安装CUPS软件成为印表机伺服器系统的设定部份已经完成
#####################
多个系统平台实现印表机安装及列印测试:
CUPS软件部署完成后可实现多个平台共享印表机了,
在以下范例中我测试了Windows7、Windows10、macOS、IOS及android均可实现无线打印功能。
Windows 10 系统安装印表机:
透过搜寻安装印表机
手动安装印表机
如透过搜寻找不到印表机 或在跨网段的网络就需要手动安装印表机
浏览器开启http://10.1.1.253:631 CUPS版面,复制路径
贴上路径 # 注意不能为https
Windows 7 系统安装印表机:
以手动安装印表机,需预先准备好印表机在相对应的Windows驱动程式
留意贴上的路径不能为https
选取预先准备好的Windows驱动程式
macOS 系统安装印表机:
android 系统安装印表机:
测试的android装置是OnePlus 6,在软件商店安装Mopria Print Service app。
#####################
结语:
相信最困难的部份应该是印表机的驱动程式安装,如果在OpenPrinting找到相对应的厰商及型号,就会相对简单。
使用PVE的LXC安装CUPS软件的好处是不用额外多一部Linux装置(或armbian盒子)去配置印表机伺服器,而且Canon官方也有相应的Linux驱动支持。
别外利用zero-tier等软件手动安装印表机,可实现远端(跨地域)列印。如: 在公司可以直接存取家里的印表机列印文件。
#####################
参考资料:
































































校验提示文案
校验提示文案
校验提示文案
另,非原生usb支持吗?(usb转并口)
谢谢
校验提示文案
可以到寻找打印机的那一步,但是本地打印机里没有canon打印机的选项
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
可以到寻找打印机的那一步,但是本地打印机里没有canon打印机的选项
校验提示文案
校验提示文案
另,非原生usb支持吗?(usb转并口)
谢谢
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案