安装CUPS以及scanservjs

CUPS

安装cups

apt-get install cups

设置CUPS的conf文件

打开/etc/cups/cupsd.conf

将Listen localhost:631修改为Listen 0.0.0.0:631

将Browsing No改成Browsing On(默认Browsing No无法通过浏览器访问打印机后台,也有的是Browsing Off)

在以下四段增加 Allow all

# Restrict access to the server…

Order allow,deny

Allow all

# Restrict access to the admin pages…

Order allow,deny

Allow all

# Restrict access to configuration files…

AuthType Default

Require user @SYSTEM

Order allow,deny

Allow all

# Restrict access to log files…

AuthType Default

Require user @SYSTEM

Order allow,deny

Allow all

在以下区域添加域名,以支持域名的外网打印,如果Yes为No则改为Yes

Web interface setting…

WebInterface Yes
ServerAlias abc.com

保存对conf文件的修改

重启cups以支持修改后的配置

systemctl restart cups

汉化CUPS

依据版本下载汉化文件

将压缩包内的 zh_CN 目录上传到/usr/share/cups/templates/下

在/usr/share/cups/doc-root/目录下创建zh_CN文件夹,并将包内的 index.html 上传该目录下

修改/etc/cups/cupsd.conf文件,在适当位置(大概第9行之前)插入DefaultLanguage zh_CN

重启cups

安装驱动程序

惠普

apt-get install hplip

安装hp-plugin

输入命令hp-plugin需要全程联网

兄弟

有驱动按官方驱动安装,没有驱动使用

apt-get install printer-driver-brlaser

其他品牌

apt-get install printer-driver*

安装AirPrinter广播

apt-get -y install avahi-daemon avahi-discover libnss-mdns

systemctl restart avahi-daemon

service cups restart

此时安装完毕

自行按需求添加打印机即可

AirPrint无法显示纸张规格

如果出现iOS设备在AirPrint目录下不显示A4等格式,亦或者是默认选项并非A4或ISO标准格式大小

如果你使用汉化则添加

DefaultPaperSize A4在DefaultLanguage zh_CN之后

如果未汉化,则将这两句都添加

设备拔插后无法使用

使用udevadm monitor –environment对USB接口进行监控

拔出设备后寻找ACTION=remove的区块

其中UDEV一行的最后一截即为该USB接口的物理地址

演示地址即1-1.3

记住此地址后进入/etc/udev/rules.d/

新建文件99-usb-restart-cups.rules

填入以下代码,其中KERNELS=="1-1.3"中的1-1.3即为你所需要的USB接口

ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", KERNELS=="1-1.3", RUN+="/bin/bash /home/restart.sh"

依此可以添加更多USB接口

/home/restart.sh为脚本地址,你可以自行更改,以下是该脚本内容

!/bin/bash

uptime_seconds=$(cut -d. -f1 /proc/uptime)
if [ "$uptime_seconds" -ge 60 ]; then
sudo systemctl restart cups
fi

scanservjs扫描前端

curl -s https://raw.githubusercontent.com/sbs20/scanservjs/master/bootstrap.sh | sudo bash -s -- -v latest

网络状态差的使用以下脚本

解压后导入系统,输入以下命令

chmod +x bootstrap.sh

./bootstrap.sh -v latest