Orange PI 安装 CUPS 提供打印服务
使用 orangepizero3 做为打印服务开发板,集成到打印盒子中,用于适配不同的打印设备。
orangepi zero3 2GB 版本安装 Ubuntu 6.1内核版本的镜像
http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-3.html
apt remove docker-ce -y
apt remove dnsmasq -y
rm -f /etc/apt/sources.list.d/docker.list
apt update
apt install libcupsimage2 libcupsimage2-dev libcups2 libcups2-dev -y
apt install cups -y
systemctl enable cups
systemctl start cups
安装好 CUPS 以后,进行 CUPS 配置,包括添加打印机,配置 PPD 文件。
其中,CUPS 如果要提供给其它机器访问,则需要设置为 `shared`。
# Log general information in error_log - change "warn" to "debug"
# for troubleshooting...
LogLevel warn
PageLogFormat
# Specifies the maximum size of the log files before they are rotated. The value "0" disables log rotation.
MaxLogSize 0
# Default error policy for printers
ErrorPolicy retry-job
# Only listen for connections from the local machine.
Listen 0.0.0.0:631
Listen /run/cups/cups.sock
# Show shared printers on the local network.
Browsing Yes
BrowseLocalProtocols dnssd
# Default authentication type, when authentication is required...
DefaultAuthType Basic
# Web interface setting...
WebInterface Yes
# Timeout after cupsd exits if idle (applied only if cupsd runs on-demand - with -l)
IdleExitTimeout 60
# Restrict access to the server...
<Location />
Order allow,deny
Allow all
</Location>
# Restrict access to the admin pages...
<Location /admin>
Order allow,deny
Allow all
</Location>
# Restrict access to configuration files...
<Location /admin/conf>
AuthType Default
Require user @SYSTEM
Order allow,deny
Allow all
</Location>
# Restrict access to log files...
<Location /admin/log>
AuthType Default
Require user @SYSTEM
Order allow,deny
Allow all
</Location
打印机使用的是 EPSON L8050
PPD 安装好以后位于 `/etc/cups/ppd/EPSON_L8050_Series.ppd`
过滤器程序的路径位于 `/opt/epson-inkjet-printer-escpr2/lib/cups/filter/epson-escpr-wrapper2`
在 Orange PI 手动编译安装 CUPS 2.9.10
wget https://github.com/OpenPrinting/cups/releases/download/v2.4.10/cups-2.4.10-source.tar.gz
tar -zxvf cups-2.4.10-source.tar.gz
cd cups-2.4.10
./configure --disable-shared --enable-static --host=arm-linux-gnueabi --build=aarch64-linux-gnu make CFLAGS="-static" --prefix=/opt/cupsd
make
make install