From 2c8f0162fd820513de210e8b3c546fd5f39c0c6a Mon Sep 17 00:00:00 2001 From: yuyx <237899745@qq.com> Date: Mon, 1 Dec 2025 09:25:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=A5=94=E5=9B=BE?= =?UTF-8?q?=E9=A9=B1=E5=8A=A8=E4=B8=8B=E8=BD=BD=E5=A4=B1=E8=B4=A5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 奔图官网有CDN防盗链,wget直接下载返回403错误页面 - 更换为GitHub社区镜像下载地址 - 添加下载文件有效性验证(检查是否为真正的zip文件) - 添加备用下载链接自动重试机制 - 明确提示ARM架构不支持奔图官方驱动 - 更新手动下载提示链接 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- setup_cups.sh | 51 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/setup_cups.sh b/setup_cups.sh index fe28e89..a5fc888 100755 --- a/setup_cups.sh +++ b/setup_cups.sh @@ -507,19 +507,21 @@ install_pantum_driver() { local arch=$(dpkg --print-architecture) info "检测到系统架构: $arch" - # 奔图驱动下载地址 (通用Linux驱动) - local pantum_url="" - local pantum_file="" + # 奔图驱动下载地址 (GitHub镜像,官网有防盗链限制) + # 官网链接无法直接wget下载,使用社区镜像 + local pantum_url="https://github.com/ArticExploit/pantum-driver/releases/download/1.1.123/Pantum.Ubuntu.Driver.V1_1_123.zip" + local pantum_backup_url="https://raw.githubusercontent.com/ArticExploit/pantum-driver/main/Pantum.Ubuntu.Driver.V1_1_123.zip" + # 检查架构是否支持 (奔图官方驱动仅支持x86架构) case $arch in - arm64|aarch64) - pantum_url="https://drivers.pantum.com/userfiles/files/download/drive/Pantum%20Ubuntu%20Driver%20V1_1_123_1.zip" + amd64|x86_64|i386) + # x86架构支持 ;; - armhf|arm) - pantum_url="https://drivers.pantum.com/userfiles/files/download/drive/Pantum%20Ubuntu%20Driver%20V1_1_123_1.zip" - ;; - amd64|x86_64) - pantum_url="https://drivers.pantum.com/userfiles/files/download/drive/Pantum%20Ubuntu%20Driver%20V1_1_123_1.zip" + arm64|aarch64|armhf|arm) + warn "奔图官方驱动不支持ARM架构 ($arch)" + warn "ARM设备可尝试使用通用驱动或IPP Everywhere协议" + warn "如果打印机支持网络打印,可尝试使用driverless方式添加" + return 1 ;; *) warn "不支持的架构: $arch,跳过奔图驱动安装" @@ -532,11 +534,34 @@ install_pantum_driver() { cd "$tmp_dir" info "下载奔图驱动..." - if ! wget -q --show-progress -O pantum_driver.zip "$pantum_url"; then + local download_success=false + + # 尝试主下载链接 + if wget -q --show-progress -O pantum_driver.zip "$pantum_url" 2>/dev/null; then + # 验证下载的文件是否为有效zip + if file pantum_driver.zip | grep -q "Zip archive"; then + download_success=true + else + warn "主链接下载的文件无效,尝试备用链接..." + rm -f pantum_driver.zip + fi + fi + + # 尝试备用链接 + if [ "$download_success" = false ] && [ -n "$pantum_backup_url" ]; then + info "尝试备用下载链接..." + if wget -q --show-progress -O pantum_driver.zip "$pantum_backup_url" 2>/dev/null; then + if file pantum_driver.zip | grep -q "Zip archive"; then + download_success=true + fi + fi + fi + + if [ "$download_success" = false ]; then warn "下载奔图驱动失败,尝试备用方案..." # 备用: 直接安装依赖,用户手动下载驱动 apt install -y libcups2 libcupsimage2 - warn "请手动从 https://www.pantum.com 下载驱动并安装" + warn "请手动从 https://global.pantum.com/support/download/driver/ 下载驱动并安装" cd - > /dev/null rm -rf "$tmp_dir" return 1 @@ -566,7 +591,7 @@ install_pantum_driver() { success "奔图驱动安装完成" else warn "未找到适合的驱动包" - warn "请手动从 https://www.pantum.com 下载驱动" + warn "请手动从 https://global.pantum.com/support/download/driver/ 下载驱动" fi # 清理