PVE的LXC容器系统安装CUPS软件,实现多平台共享的印表机

前言:

家里使用Canon LBP6030USB印表机,连接住路由器(Youku1)的Padavan(老毛子)系统实现无线打印,但只能在Windows的平台实现无线打印,然而Apple的系统(如: macOSIOS)就无法实现,难免有少许不便。

SMZDM发现这篇贴文N1刷armbian变身打印服务器,支持全平台无线打印@PC扫瞄 ,可以安装CUPS软件成为印表机伺服器系统,就有了以下的内容记录。


目录内容:
  • 实现条件
  • PVE下安装LXC容器系统(Debian)
  • LXC直通USB端口
  • LXC(Debian)安装CUPS软件及印表机驱动
  • 多个系统平台实现印表机安装及列印测试
    • Windows 10 系统安装印表机
    • Windows 7 系统安装印表机
    • macOS 系统安装印表机
    • android 系统安装印表机

实现条件:
  • 可以安装CUPS软件的平台

    如: armbianubuntu、centos等,我选取Debian Linux平台

  • 可支援平台的印表机驱动程式

    如果在OpenPrinting找到支援的驱动程式可忽略这一步

[[返回目录内容]]


PVE下安装LXC容器系统(Debian)

LXC 提供了一个作业系统级的虚拟化环境,基于Linux的系统上安装。

而免费的PVE虚拟伺服器可以很方便地建立一个全新共用内核的Linux系统(即罐头系统)

下载CT模板:

LXC系统的建立

新建的LXC系统暂不用启动

[[返回目录内容]]


LXC直通USB端口:

印表机Canon LBP6030USB口和PVE主机的USB口对接

lsusb查看连接的USB装置

lsusb

看到Bus 001内的Device 003Canon

查看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=dir
EOF

LXCID100 #配置文件路径是: /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软件部署完成后可实现多个平台共享印表机了,

在以下范例中我测试了Windows7Windows10macOSIOSandroid均可实现无线打印功能。

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找到相对应的厰商及型号,就会相对简单。

使用PVELXC安装CUPS软件的好处是不用额外多一部Linux装置(或armbian盒子)去配置印表机伺服器,而且Canon官方也有相应的Linux驱动支持。

别外利用zero-tier等软件手动安装印表机,可实现远端(跨地域)列印。如: 在公司可以直接存取家里的印表机列印文件。


参考资料:

USB Passthrough to an LXC (Proxmox)

OpenPrinting

N1刷armbian变身列印伺服器,支援全平台无线列印@PC扫描

PVE的LXC容器系统安装CUPS软件,实现多平台共享的印表机相关推荐

  1. pve安装黑群晖直通硬盘_USB硬盘挂载到PVE LXC容器使用/ Proxmox VE硬盘直通黑群晖...

    USB硬盘挂载到LXC容器 1.进入pve管理后台 节点-磁盘,查看硬盘连接成功没有,如果连接成功,会显示磁盘设备名字,大小等等 2.进入节点-shell 运行命令 blkid ,查询硬盘分区uid ...

  2. 【PVE7.1-8】LXC容器下Jellyfin服务器配置显卡硬件加速

    一.平台信息 PVE版本:7.1-8 容器:Ubuntu20.04 Jellyfin:10.7.7 Cpu:G6505T十代U 显卡:intelHD63核显 二.配置步骤 1.登录pve,查询设备编号 ...

  3. Docker(三):镜像导入与导出、保存与加载、在Docker容器中安装软件

    相关阅读: Docker(一):Docker的安装与常用命令 Docker(二):Docker常用命令之镜像的创建:Dockerfile 与 commit Docker(三):Docker镜像导入与导 ...

  4. 【学习笔记】Docker - 02. 在容器中运行软件(上)

    2.1 控制容器: 构建一个网站监视器 需求: 客户想让你做一个网站, 这个网站需要被紧密的监视, 如果服务器宕机了, 那么它们的团队会收到相关的邮件. 这里用到了3个容器. 第一个运行NGINX;  ...

  5. linux打印机测试程序,轻松了解Linux打印之CUPS软件

    轻松了解Linux打印CUPS .到目前为止,有关使用公共 UNIX 打印系统 (CUPS),这种打印系统可以为您的网络带来一种通用打印解决方案. Unix/Linux 打印界在很长一段时间内都没有什 ...

  6. 大规模部署lxc容器遇到的若干问题

    线程数控制 启动线程过多会导致资源不足引发的lxc-start命令无法执行问题,到致大量容器只执行了lxc-copy,而无法真正运行.具体情况应视服务器硬件条件(cpu,内存--在本项目部署中主要瓶颈 ...

  7. 借重新装系统之际,一篇文章带你玩透Windows 10从系统安装到软件选择

    系统安装所需软件 Rufus 一个制作USB-ISO的免费软件,比微软官方工具好的地方在于除了可以制作windows 系统U盘,还可以制作linux 以及安卓X86的系统安装光盘. 借重新装系统之际, ...

  8. Docker 容器中相关软件安装

    Docker 容器中相关软件安装 1.介绍 我们从docker hub下载的centos镜像是只有很少的命令,需要单独安装我们所需的相关软件. 2.安装软件 安装yum-utils软件包 该软件包是辅 ...

  9. ug用计算机名还是全民,win7系统安装UG软件后打开提示计算机名不对的解决方法...

    今天和大家分享一下win7系统安装UG软件后打开提示计算机名不对问题的解决方法,在使用win7系统的过程中经常不知道如何去解决win7系统安装UG软件后打开提示计算机名不对的问题,有什么好的办法去解决 ...

最新文章

  1. hibernate 逆向工程
  2. 基因注释神器UCSC Genome Browser使用教程
  3. 洛谷 P1352 没有上司的舞会(树形 DP)
  4. 精述字符编码(读这篇就够了)
  5. 调用目标检测百度接口api
  6. Atitit 信息管理概论 艾提拉总结 信息的采集 信息格式转换 信息整合 信息的tag标注 信息的结构化 信息检索,,索引 压缩 信息分析 汇总 第1章 信息管理的基本概念 第
  7. 【系统架构】ER图的画图规范和优化点
  8. NRF52840 DFU升级(一): 按键升级
  9. java f5 f6_eclipse debug常见调试 F6 单步 F8完成 F5进入方法
  10. 【NOI2008】 赛程安排
  11. 手把手带你开发一个批量下载资源的谷歌浏览器扩展
  12. 大疆云台和华为P30_全面分析曝光大疆云台3和mobile有没有区别?哪个好?优缺点内幕透露...
  13. linux 如何做共享磁盘阵列,在Linux上玩转磁盘阵列分享
  14. [模板匹配霍夫变换]——模板匹配分析、霍夫变换分析
  15. 手机拨出等待时间长_手机打不出去电话怎么回事 一分钟轻松排查原因
  16. java二维数组添加数据_我敢保证,全网没有再比这更详细的Java知识点总结了,送你啊...
  17. windows 同时连接多个 openvpn
  18. C++11 Type-rich编程
  19. 基于nginx负载均衡的慢性病专家系统
  20. 考研线性代数知识导图

热门文章

  1. ARM基础教程3 | ARM与RISC-V架构的区别(架构)
  2. SQL四大基础操作语言DDL,DCL,DQL,DML
  3. 淘宝api Python 接口升级 3.0 版本 主要解决图片上传问题
  4. java过载保护_在照明和电加热电路中,熔断器既可以作过载保护,也可以作短路保护...
  5. Unity 打包安装包
  6. android刷成windows7,牛人将Win7刷进了安卓手机 高手在民间!
  7. 自制基于python的DoU log分析脚本
  8. s7300的db块详细说明_如何使用S7-300的DB块
  9. 纯html5+css3能写出什么惊人效果
  10. 关于康托展开和逆康托展开详解,及python代码