PVE的LXC容器系統(tǒng)安裝CUPS軟件,實(shí)現(xiàn)多平臺(tái)共享的印表機(jī)

前言:
家里使用
Canon LBP6030的USB印表機(jī),連接住路由器(Youku1)的Padavan(老毛子)系統(tǒng)實(shí)現(xiàn)無線打印,但只能在Windows的平臺(tái)實(shí)現(xiàn)無線打印,然而Apple的系統(tǒng)(如: macOS、IOS)就無法實(shí)現(xiàn),難免有少許不便。
在
SMZDM發(fā)現(xiàn)這篇貼文N1刷armbian變身打印服務(wù)器,支持全平臺(tái)無線打印@PC掃瞄 ,可以安裝CUPS軟件成為印表機(jī)伺服器系統(tǒng),就有了以下的內(nèi)容記錄。
目錄內(nèi)容:
- [實(shí)現(xiàn)條件]
- [PVE下安裝LXC容器系統(tǒng)(Debian)]
- [LXC直通USB端口]
- [LXC(Debian)安裝CUPS軟件及印表機(jī)驅(qū)動(dòng)]
- [多個(gè)系統(tǒng)平臺(tái)實(shí)現(xiàn)印表機(jī)安裝及列印測(cè)試]
- [Windows 10 系統(tǒng)安裝印表機(jī)]
- [Windows 7 系統(tǒng)安裝印表機(jī)]
- [macOS 系統(tǒng)安裝印表機(jī)]
- [android 系統(tǒng)安裝印表機(jī)]
實(shí)現(xiàn)條件:
-
可以安裝
CUPS軟件的平臺(tái)如: armbian、ubuntu、centos等,我選取Debian Linux平臺(tái)
-
可支援平臺(tái)的印表機(jī)驅(qū)動(dòng)程式
如果在OpenPrinting找到支援的驅(qū)動(dòng)程式可忽略這一步
PVE下安裝LXC容器系統(tǒng)(Debian)
LXC提供了一個(gè)作業(yè)系統(tǒng)級(jí)的虛擬化環(huán)境,基于Linux的系統(tǒng)上安裝。而免費(fèi)的
PVE虛擬伺服器可以很方便地建立一個(gè)全新共用內(nèi)核的Linux系統(tǒng)(即罐頭系統(tǒng))
下載CT模板:
LXC系統(tǒng)的建立
新建的LXC系統(tǒng)暫不用啟動(dòng)
LXC直通USB端口:
印表機(jī)
Canon LBP6030的USB口和PVE主機(jī)的USB口對(duì)接
lsusb查看連接的USB裝置
lsusb
看到Bus 001內(nèi)的Device 003是Canon
查看Canon裝置的數(shù)字編號(hào)是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=dir
EOF
LXC的ID是100#配置文件路徑是:/etc/pve/lxc/100.conf
189:* rwm內(nèi)的裝置 # 允許讀、寫、掛載掛載整個(gè)
Bus 001USB端口 # 這樣的好處是就算印表機(jī)的USB unplug多次而變動(dòng)Device的編號(hào)也不影響掛載
啟動(dòng)新建的LXC容器
在LXC容器內(nèi)的Console查看是否已經(jīng)掛載成
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容器內(nèi)連入到USB印表機(jī)
LXC(Debian)安裝CUPS軟件及印表機(jī)驅(qū)動(dòng):
CUPS(Common UNIX Printing System,通用Unix列印系統(tǒng))是Fedora Core3中支援的列印系統(tǒng),它主要是使用IPP(Internet Printing Protocol)來管理列印工作及佇列,但同時(shí)也支援LPD(Line Printer Daemon)和SMB(Server Message Block) 以及AppSocket等通信協(xié)定。來自百度
安裝CUPS軟件
sudo apt update && sudo apt install -y cups
開啟CUPS 的遠(yuǎn)端存取權(quán)限
sudo cupsctl --remote-any
將當(dāng)前的使用者加入到lpadmin群組
sudo usermod -aG lpadmin $USER
如果在OpenPrinting找到支援的印表機(jī),可忽略驅(qū)動(dòng)程式這一步
下載及安裝Canon LBP6030的印表機(jī)驅(qū)動(dòng)程式
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系統(tǒng)的IP地址是:10.1.1.253
列印測(cè)試頁(yè)面

安裝
CUPS軟件成為印表機(jī)伺服器系統(tǒng)的設(shè)定部份已經(jīng)完成
多個(gè)系統(tǒng)平臺(tái)實(shí)現(xiàn)印表機(jī)安裝及列印測(cè)試:
CUPS軟件部署完成后可實(shí)現(xiàn)多個(gè)平臺(tái)共享印表機(jī)了,在以下范例中我測(cè)試了
Windows7、Windows10、macOS、IOS及android均可實(shí)現(xiàn)無線打印功能。
Windows 10 系統(tǒng)安裝印表機(jī):
透過搜尋安裝印表機(jī)

手動(dòng)安裝印表機(jī)
如透過搜尋找不到印表機(jī) 或在跨網(wǎng)段的網(wǎng)絡(luò)就需要手動(dòng)安裝印表機(jī)
瀏覽器開啟http://10.1.1.253:631 CUPS版面,復(fù)制路徑
貼上路徑 # 注意不能為https

Windows 7 系統(tǒng)安裝印表機(jī):
以手動(dòng)安裝印表機(jī),需預(yù)先準(zhǔn)備好印表機(jī)在相對(duì)應(yīng)的Windows驅(qū)動(dòng)程式
留意貼上的路徑不能為https
選取預(yù)先準(zhǔn)備好的Windows驅(qū)動(dòng)程式

macOS 系統(tǒng)安裝印表機(jī):

android 系統(tǒng)安裝印表機(jī):
測(cè)試的
android裝置是OnePlus 6,在軟件商店安裝Mopria Print Serviceapp。
結(jié)語:
相信最困難的部份應(yīng)該是印表機(jī)的驅(qū)動(dòng)程式安裝,如果在OpenPrinting找到相對(duì)應(yīng)的厰商及型號(hào),就會(huì)相對(duì)簡(jiǎn)單。
使用
PVE的LXC安裝CUPS軟件的好處是不用額外多一部Linux裝置(或armbian盒子)去配置印表機(jī)伺服器,而且Canon官方也有相應(yīng)的Linux驅(qū)動(dòng)支持。
別外利用
zero-tier等軟件手動(dòng)安裝印表機(jī),可實(shí)現(xiàn)遠(yuǎn)端(跨地域)列印。如: 在公司可以直接存取家里的印表機(jī)列印文件。