Unraid 安装CUPS实现共享打印和无线打印

2020-11-29 16:08:34 60点赞 551收藏 68评论

创作立场声明:个人瞎折腾,文中部分内容来自网络,本人并非专业人士,只是将个人的折腾经验分享给大家,如有错误请大家指正

今年上半年买了一台高配蜗牛,蜗牛D的机箱、G5400的cpu、B365的板子,就开始了一系列的折腾,更换了8700t es cpu,带pcie 插槽的蜗牛C机箱,4口pcie 网卡,折腾出了一台windows all in one 机器,软路由、群晖、文件共享等等,用了大半年,一直很稳定,但是也有些美中不足,待机功耗也有些高。最近看了站内大神们unraid的文章,提到了unraid的硬盘休眠功能不错,文件共享、docker、虚拟机等功能也很强大,就将机器换成了unraid系统,折腾过程就不细说了,今天主要说一下unraid下打印机共享的问题。

楼主家里目前有两台打印机,最早买了一台联想的S2001,只能打印不能复印扫描,后来又趁着特价买了一台奔图的M6200NW一体机,后者虽然支持无线功能,但是特别不好用,连接麻烦不说,还动不动就连不上,只能连接电脑重新连接,比家里原来用的hp 4518 无线功能弱爆了。索性后来直接放弃了无线功能,直接跟s2001一样,插在all in one主机上,通过windows共享打印机共享给家里的其他机器使用。

换了unraid系统后,如何实现打印机的共享就成为了折腾目标之一。

方案一、群晖实现

因为新的系统虚拟了群晖系统,而群晖系统自带了打印共享的功能,在“控制面板 - 外接设备 - 打印机”栏目内,但是不知什么原因,添加后可以识别打印机,但是点击打印后会一直不停的打印空白页Unraid 安装CUPS实现共享打印和无线打印 ,群晖我也不是太熟,网上搜了下也说群晖的打印共享不太好用,遂放弃。

群晖共享打印机页面群晖共享打印机页面

方案二、centos实现

网上搜了一圈方案,发现了利用cups可以实现打印机共享,还能实现airprint和android无线打印,功能很强大。网上的经验贴大多是利用centos等linux系统安装实现的。于是新虚拟了一个最小化的centos的虚拟机,按照网上的提示安装cups,成功实现了打印机的共享,具体安装过程可参考网上的相关内容,这里简单说一下:

1、VNC进入centos,安装cups

yum install -y cups

2、启动并设置cups

systemctl start cups

确保防火墙已经放通631端口,楼主一开始就在这里卡了很久,怎么也访问不了设置页面

firewall-cmd --permanent --add-port=631/tcp
service firewalld restart

这时候是无法从局域网内访问cups的,原因是因为cups的配置只允许本地访问。

这时候需要编辑cups的配置文件

vi /etc/cups/cupsd.conf

将Listen 改为Port 631

Unraid 安装CUPS实现共享打印和无线打印

在如图位置添加Allow All

Unraid 安装CUPS实现共享打印和无线打印

然后重启cups

service cups restart

3、局域网内其他主机打开web输入http://IP:631/admin,输入centos的账号密码,点击添加打印机(add printer),选择local printer中对应的打印机型号,依次点击continue,最后选择厂商和型号,如果没有对应的型号,随便选择一个即可。

4、添加完成后,进入printer界面,点击添加成功的打印机名称,进入打印机页面,记录该网页的网址,即是后续添加打印机的型号。

Unraid 安装CUPS实现共享打印和无线打印

5、Windows本地添加打印机

添加设备,点击下侧“我所需的打印机未列出”,选择按名称选择打印机。输入4步骤中的打印机网址(http://192.168.6.9:631/printers/Lenovo_S2001,此处注意将https后面的s去掉)。后续关键点就是选驱动,一定要对应型号,不然会出现很多问题。

Unraid 安装CUPS实现共享打印和无线打印

Unraid 安装CUPS实现共享打印和无线打印

Unraid 安装CUPS实现共享打印和无线打印

6、点击确定添加完成,这时候就可以进行打印了。

本人的两台打印机都不在cups的支持范围之内,没有相关的驱动,只能采用上述方式进行共享打印(使用的是windows上安装的驱动),手机打印的话因没有cups上的驱动,打印出来的都是空白。但个人手机上打印的情况不多,能共享就好了哈。

方案三、Unraid 上docker实现

上述方案用了一段时间,偶然间发现虚拟机对整机的功耗影响很大,群主的机器装了4个虚拟机:windows10、openwrt、群晖、centos,带8t、4t、3t三块机械硬盘,其中3t的硬盘直通给群晖使用,结果发现在硬盘休眠的情况下,待机也要接近50w,并不比当初windows时省电。后来有一次关闭windows10虚拟机后再看功率,直接降低5W,再关掉群晖,再降3W,关掉centos也能降2W,openwrt要做旁路由不能关,windows10和群晖可以需要的时候再开,而centos只用了打印共享的功能,想着如果能用unraid的docker实现的话,这2W的功耗就能省出来了。

上unraid的app中搜了下,好像没有cups的应用。网上搜了很多资料,都没有介绍利用unraid上的docker安装cups的,大多都是群晖的docker内安装,看了unraid的还是小众一些。只能参考群晖的帖子进行安装,比如这一篇:

低成本的无线打印:群晖上通过Docker容器实现Airprint欢迎参加#果粉是怎样炼成的#征稿,围观秋季发布会新品!是什么让苹果生态无法割舍?快来讲讲你的果粉炼成记,AirPodsPro等丰厚奖品等你来!>点击这里查看活动详情我的昵称已被注册| 107 评论171 收藏1k查看详情

群晖的docker中是可以搜索到cups镜像的,而且上述帖子中楼主也给出了直接安装的代码,但是unraid中不能直接用,需要进行一定的修改,这里直接给出unraid中docker安装cups的命令,大家进入unraid的终端,运行下列命令即可:

docker run -d --name="cups-google-print" --net="host" --privileged="true" -e TZ="UTC" -e HOST_OS="unRAID" -e "CUPS_USER_ADMIN"="admin" -e "CUPS_USER_PASSWORD"="pass" -e "TCP_PORT_631"="631" -v "/mnt/user/appdata/cups-google-print":"/config":rw -v /dev:/dev -v /etc/avahi/services:/avahi -v /var/run/dbus:/var/run/dbus mnbf9rca/cups-google-print

运行完毕,局域网内其他主机打开web输入http://unraid的IP:631 即可访问cups设置页面了,非常简单。

后面安装打印机跟前面一样,大家参考前面内容即可。

至此,实现了docker安装cups,资源占用比虚拟机好多了,功耗也降低2W,美滋滋。楼主的机器,在只保留openwrt虚拟机的情况下,待机功耗最低只要30W。。。

奔图 Pantum M6200NW series cups打印驱动安装

上述方案因为没有在cups中安装对应的打印机驱动,因此手机上虽然能够搜索到打印机,但是却不能正常打印,所以实现上述windows共享之后,就一直研究如何实现手机无线打印。

偶然间看到一篇帖子,提到如果打印机有linux驱动的话,基本都能实现cups中的驱动安装,于是就上奔图网站上搜了下,竟然真有M6200系列的linux驱动,后面就好办了。

Unraid 安装CUPS实现共享打印和无线打印

进入docker控制台

Unraid 安装CUPS实现共享打印和无线打印

依次运行以下命令:

wget https://global.pantum.com/global/wp-content/uploads/2016/06/Pantum-Ubuntu-Driver-V1-1-5-1.tar.gz
tar -zxvf Pantum-Ubuntu-Driver-V1-1-5-1.tar.gz
sudo dpkg -i Pantum Ubuntu Driver V1.1.5/Resources/pantum-1.1.5-amd64.deb

反斜杠无法显示,最后一条命令大家参考上图反斜杠无法显示,最后一条命令大家参考上图

驱动就安装好了,再次进入cups后台,找到原来添加的打印机,选择“Modify Printer”

Unraid 安装CUPS实现共享打印和无线打印

Unraid 安装CUPS实现共享打印和无线打印

然后就能发现对应的驱动了,选择正确的驱动提交,然后就可以通过手机打印了。

PS:苹果手机airprint可以直接用,安卓要用的话需要安装个APP,“Android CUPS Print”,大家自行搜索下载安装即可。

如果你的打印机是其他型号,且不在cups支持库中的话,可以上打印机官网搜索linux驱动,利用本方法安装即可。

展开 收起
68评论

  • 精彩
  • 最新
  • 这种打印机已经自带打印服务器了,你把IP设固定(路由器也要绑定>

    校验提示文案

    提交
    非常的不好用啊,经常就连接不上了,然后必须插上usb线,按照初始程序重新连接一遍。路由器锁定ip还没试过,可以试试看

    校验提示文案

    提交
    现在的打印机不是插路由器就能用 我是网口不够舍不得再买个交换机了 跟电脑公用一个网口就行 路由器IP绑定就行

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 无线打印还是n1香

    校验提示文案

    提交
    n1也是用的cups实现的吧

    校验提示文案

    提交
    openwrt即可实现

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 这种方式支不支持macOS

    校验提示文案

    提交
    macOS可以的啊,直接添加就好了,网上有教程的

    校验提示文案

    提交
    收起所有回复
  • 还好当买支持无线双面打印的

    校验提示文案

    提交
    嗯,现在要买肯定要买支持无线的哈

    校验提示文案

    提交
    手机打印就空白 求解决

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 当年八哥价的4518是真的好用

    校验提示文案

    提交
    当初交行刷卡活动送的,好用是好用,就是墨盒太贵了,改的连供什么的也都不好用,后来换激光了

    校验提示文案

    提交
    收起所有回复
  • 我用树莓派跑cups,我用的京瓷打印机并没有树莓派的驱动,最后在cups中选择了通用的打印机,也能识别并正确打印。

    校验提示文案

    提交
    电脑绑定的话,可以使用电脑上的驱动。手机的话就不行了,必须要在cups上装好对应驱动

    校验提示文案

    提交
    是的,先打印机接电脑,识别驱动并安装,然后cups里选通用,最后电脑接cups的打印机还会再次确认打印机,这个时候就是精准的型号和驱动了

    校验提示文案

    提交
    收起所有回复
  • 正好用得到,目前就是虚拟群晖下docker的,实体黑裙迁移过来的,所以并没怎么折腾。 不过如果能省电的话,我也就换成unraid的docker来做吧

    校验提示文案

    提交
    关掉虚拟机确实省,我现在待机只有30-35w,原来要48w

    校验提示文案

    提交
    第一次成功,再打开就没办法打开管理网页了(unraid的ip:631这个页面),难道是端口被占用了吗,logs也打不开。。

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 我用的是另一个docker程序,差不多。提示一下,如果unraid启动时,打印机是关闭的,dockers程序会中止,这时打开打印机,是无法从网络访问的。需要手动重启docker打印机驱动程序

    校验提示文案

    提交
    谢谢提醒。。。

    校验提示文案

    提交
    程序名来一个?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 请教:我是采用的方案三、Unraid 上docker安装cups,装好后,通过IP登录管理界面需要输入用户名和密码,请问默认账号和密码是什么?感谢

    校验提示文案

    提交
    如果用我的代码安装的话,是admin 和pass

    校验提示文案

    提交
    自己找到了,用户名admin,密码pass

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 软路由应该可以挂吧

    校验提示文案

    提交
    什么系统的软路由?

    校验提示文案

    提交
    lede,不过我没有设备,不知道好不好用

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 楼主有搞定双面打印吗 [皱眉]

    校验提示文案

    提交
    没有搞定。。。。

    校验提示文案

    提交
    收起所有回复
  • hp1020的老大难第三方案怎么解决呢???????里面能看到,就是不能打印

    校验提示文案

    提交

    校验提示文案

    提交
    安装惠普支持套件,不选择使用foo2zjs。同时安装cups

    sudo apt-get install hplip

    sudo apt-get install hpijs-ppds

    校验提示文案

    提交
    收起所有回复
  • 突然发现发布后少了一部分内容,就是docker安装完成后,输入unraid主机ip:631 即可访问cups了,这点提示下大家

    校验提示文案

    提交
  • 哇塞,学习了,正是目前正在琢磨的,之前是虚拟了个ubuntu,太费资源了。前两天还想着都是Linux系列的,应该也是可以的,就看到了这篇文章。真好。同时也在想,因为CUPS也支持python 这样的话运行个程序是不是安卓都不用安装APP了

    校验提示文案

    提交
  • 照着教程来,HP1020搞不定 [喜极而泣]
    HP LaserJet 1020, hpcups 3.20.9, requires proprietary plugin
    有人说是要装foo2zjs,悲凉。

    校验提示文案

    提交
    sudo apt-get install hplip
    想办法安装

    校验提示文案

    提交
    收起所有回复
  • 我就想知道爱快的 DOCKER怎么安装 CUPS [喜极而泣] [喜极而泣] [喜极而泣]

    校验提示文案

    提交
  • 我买了一个小白盒子

    校验提示文案

    提交
  • 吃灰的安卓手机是不是也可以利用起来

    校验提示文案

    提交
  • 我用20块dir505来接hp1020,手机电脑还算能用…要用了开机,打完关机 [高兴]

    校验提示文案

    提交
  • 买个专门的打印服务器,200多,路由器大小,能接几台打印机,挺好用的

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
相关好价
最新文章 热门文章
551
扫一下,分享更方便,购买更轻松