feat: add CUPS watchdog timers

This commit is contained in:
2026-06-09 14:58:13 +08:00
parent 2a688d2514
commit 00d512f9d9
11 changed files with 668 additions and 0 deletions

View File

@@ -11,6 +11,7 @@
- 虚拟 PDF 打印机(测试连接用)
- 多种打印机驱动可选
- 驱动管理器(默认仅允许内网访问)
- 网络和打印服务守护(断网自动切 DHCPCUPS 卡死自动恢复)
- 支持一键卸载
## 快速安装
@@ -76,6 +77,34 @@ chmod +x setup_cups.sh
| Avahi | 5353 | mDNS/AirPrint 自动发现 |
| 驱动管理器 | 632 | 内网上传安装打印机驱动(可选) |
## 自动守护
安装脚本会自动启用两个 systemd timer
| 守护 | 作用 |
|------|------|
| `cups-network-watchdog.timer` | 每分钟检测网络,连续失败后自动把网卡切回 DHCP |
| `cups-print-watchdog.timer` | 每分钟检测 CUPS/Avahi/驱动管理器,卡死或异常后自动重启 |
配置文件:
```bash
# 网络守护配置,可在里面设置固定 IP、网关、DNS
nano /etc/cups-watchdog/network-watchdog.conf
# 手动切回配置里的固定 IP
/opt/cups-watchdog/network-watchdog.sh static
# 手动切 DHCP
/opt/cups-watchdog/network-watchdog.sh dhcp
# 打印服务守护配置
nano /etc/cups-watchdog/print-watchdog.conf
# 查看守护状态
systemctl status cups-network-watchdog.timer cups-print-watchdog.timer
```
## 常用命令
```bash
@@ -88,6 +117,10 @@ systemctl restart cups
# 查看 CUPS 日志
tail -f /var/log/cups/error_log
# 查看守护脚本日志
tail -f /var/log/cups-watchdog/network.log
tail -f /var/log/cups-watchdog/print.log
# 检查 USB 打印机
lsusb | grep -i print
lpinfo -v | grep usb
@@ -103,6 +136,7 @@ lpinfo -v | grep usb
```
├── setup_cups.sh # 一键安装/卸载脚本
├── watchdog/ # 网络和打印服务守护脚本
├── cups-templates-zh_CN/ # 中文界面模板65个文件
├── README.md # 本文档
└── 刷机教程.md # Armbian 刷机教程