通过 CUPS Web 界面(http://localhost:631)安装打印机驱动是 Linux 系统中通用且强大的管理方式。以下是完整的操作流程,涵盖环境准备、驱动添加及故障排查。
第一步:确保 CUPS 服务已运行
在访问网页界面前,必须确保后台打印服务正在运行。
检查服务状态
打开终端,执行以下命令:
bash
sudo systemctl status cups
若显示 active (running),则服务正常。
若显示 inactive 或 `failed),需启动服务:
bash
sudo systemctl start cups
sudo systemctl enable cups # 设置开机自启
确认安装(若未安装)
如果提示服务未找到,需先安装 CUPS:
Debian/Ubuntu/统信UOS/麒麟OS等:
bash
sudo apt update
sudo apt install cups cups-client cups-common
CentOS/RHEL/Fedora等:
bash
sudo yum install cups
sudo systemctl start cups
sudo systemctl enable cups
第二步:访问 CUPS Web 管理界面
打开浏览器(推荐 Firefox 或 Chrome)。
在地址栏输入:http://localhost:631
注意:
必须使用 http 而非 https(除非你手动配置了 SSL)。
不要省略端口号 :631。
若页面无法加载,请检查浏览器是否开启了代理,尝试禁用代理后刷新。
第三步:添加打印机与安装驱动
进入管理页面
点击顶部导航栏的 "Administration"(管理) 标签。
开始添加
点击 "Add Printer"(添加打印机) 按钮。
身份验证:此时浏览器会弹出登录框。
用户名:输入当前登录系统的用户名的(该用户需在 lpadmin组中,通常普通用户即可,若权限不足可使用 root)。
密码:输入对应用户的密码。
选择打印机连接方式
系统会自动检测本地和网络打印机,常见选项如下:
Local Printers(本地打印机):
USB Printer:直接连接的 USB 打印机。
Parallel Port:并口打印机。
Network Printers(网络打印机):
Internet Printing Protocol (ipp) / IPP Secure:现代网络打印机常用协议。
AppSocket/HP JetDirect:适用于大多数支持网络打印的老款或商用打印机(稳定性高,推荐优先尝试)。
LPD/LPR Host or Printer:较老的打印协议。
操作:选中你的打印机型号或对应的 URI,点击 "Continue"(继续)。
配置打印机基本信息
Name:打印机名称(建议用英文,无空格,如 HP_LaserJet)。
Description:描述信息(可选)。
Location:位置信息(可选)。
勾选 "Share This Printer"(共享此打印机) 如果需要局域网共享。
点击 "Continue"。
选择驱动程序(关键步骤)
这是安装驱动的核心环节,CUPS 提供以下几种方式:
方式 A:自动推荐(Make/Model)
系统会根据检测到的设备 ID 自动推荐驱动。
在列表中选择与你的打印机品牌和最接近的型号。
提示:如果没有完全匹配的型号,选择同系列相近型号通常也能工作。
方式 B:上传 PPD 文件(官方驱动)
如果你从官网下载了特定的 .ppd 文件或驱动包解压后得到了 .ppd 文件。
选择 "Provide PPD File"(提供 PPD 文件)。
点击"浏览"上传该文件。
适用场景:佳能、奔图、兄弟等品牌官方提供的 Linux 专用驱动。
方式 C:使用通用驱动
若无专用驱动,可尝试选择 Generic -> Generic PostScript Printer 或 Generic PCL Laser Printer。
注意:通用驱动可能不支持双面打印或特定纸张尺寸,仅作为最后手段。
点击 "Add Printer" 完成添加。
设置默认选项
添加成功后,可以设置默认纸张大小(如 A4)、分辨率、双面打印等选项,点击 "Set Default Options" 保存。
第四步:测试打印
在 CUPS 界面点击 "Printers" 标签。
点击刚才添加的打印机名称。
在下拉菜单中选择 "Maintenance"(维护) -> "Print Test Page"(打印测试页)。
若打印机成功输出测试页,说明驱动安装成功。
常见问题与排查
- 登录时提示 "Forbidden" 或无法认证
原因:当前用户不在 lpadmin 组,或者 CUPS 配置限制了访问。
解决:
将用户加入 lpadmin 组:
bash
sudo usermod -aG lpadmin $USER
注销并重新登录系统后生效。
或者直接使用 root 账户登录(用户名 root,密码为 root 密码)。
- 找不到打印机或驱动不匹配
USB 打印机:确保打印机已开机并连接稳固。执行 lsusb 查看系统是否识别到硬件。
网络打印机:如果自动发现失败,手动输入 URI。例如 HP 打印机常用 socket://192.168.1.100(替换为实际 IP)。
驱动缺失:
HP 打印机:建议安装 HPLIP 套件 (sudo apt install hplip),然后使用 hp-setup 命令行工具或图形界面配置,它会自动在 CUPS 中注册正确的驱动。
其他品牌:去官网下载 Linux 驱动包(通常是 .deb、.rpm 或 .tar.gz)。如果是源码包,需按照厂商说明编译安装;如果是 deb/rpm,安装后重启 CUPS (sudo systemctl restart cups),再次进入 Web 界面通常就能在列表中看到官方驱动。
- 修改 CUPS 监听地址(如需局域网访问)
默认情况下,CUPS 只监听本地回环地址。若需从其他电脑访问此 CUPS 服务器:
编辑配置文件:sudo nano /etc/cups/cupsd.conf
找到 Listen localhost:631,改为 Listen *:631 或 Listen 0.0.0.0:631。
在 <Location /> 块中添加 Allow @LOCAL 或 Allow all(注意安全风险)。
重启服务:sudo systemctl restart cups。
通过以上步骤,你可以利用 CUPS Web 界面灵活地管理和安装各类打印机驱动。