要让CUPS发现并信任局域网打印机,需修改/etc/cups/cupsd.conf:将Listen localhost:631改为Listen 0.0.0.0:631,在<Location />、<Location /admin>、<Location /admin/conf>中均添加Allow all,启用Browsing On,最后执行sudo systemctl restart cups。

怎么让 CUPS 发现并信任局域网里的打印机
CUPS 默认只监听本地回环(localhost:631),不对外提供服务,所以其他设备根本“看不见”你的打印队列。这不是打印机没连上,而是服务故意关了门。
- 必须改
/etc/cups/cupsd.conf:把Listen localhost:631换成Listen 0.0.0.0:631 - 三个关键位置块——
<Location />、<Location /admin>、<Location /admin/conf>——每块里都要加Allow all,否则网页管理页打不开,Windows/macOS 添加时会卡在“连接被拒绝” -
Browsing On要打开,不然 CUPS 不主动广播自己有打印机,其他设备扫不到 - 改完必须重启:
sudo systemctl restart cups,光 reload 不生效
Windows 怎么连上 Linux 的 CUPS 共享打印机
Windows 原生不认 IPP 协议的直连地址(比如 http://192.168.1.101:631/printers/HP-LaserJet-MFP-M725),它只认两种方式:HTTP 添加(需手动填 URI)或“通过网络发现”(依赖 SMB/Bonjour,不稳定)。
- 最稳的方式是:设置 → 设备 → 打印机和扫描仪 → “我需要的打印机不在列表中” → “按名称选择共享打印机” → 输入
http://192.168.1.101:631/printers/HP-LaserJet-MFP-M725 - Windows 必须提前装好对应型号的驱动,CUPS 不传驱动,只传打印数据;如果选错驱动(比如选了通用 PCL 而非 HP 官方驱动),双面/缩放/纸盒切换会失效
- 若提示“无法连接到打印机”,先在 Windows 上用浏览器打开那个
http://...地址,能进 CUPS 管理页,说明网络通;打不开,就是防火墙或cupsd.conf权限没配对
Linux 主机添加 Windows 共享打印机时 URI 怎么写
Linux 用 CUPS 添加 Windows 共享打印机,URI 格式不是 smb://,也不是 Windows 共享名,而是 lpd:// 或 smb://(取决于 Windows 开启的服务),且路径不能带空格、不能含中文。
- Windows 需开启“文件和打印机共享”+“LPD 服务”(控制面板 → 程序 → 启用或关闭 Windows 功能 → 勾选“LPD 服务”)
- URI 正确写法是:
lpd://192.168.1.200/HP_LaserJet_MFP_M725,其中HP_LaserJet_MFP_M725是你在 Windows 打印机属性 → 共享选项卡里设的“共享名称”,不是设备名 - 如果 Windows 开的是 SMB 共享(没开 LPD),就得用
smb://WORKGROUP/WinPC/HP_LaserJet_MFP_M725,但要求 Linux 已安装cups-backend-smb(Ubuntu/Debian:运行sudo apt install printer-driver-splix可能附带,否则单独装) - 填错 URI 最常见报错:
Unable to locate printer或Connection refused,本质是协议不通或名称拼错
为什么装了 HPLIP 还打不了,或者只能打印不能扫描
HPLIP 是惠普官方驱动套件,但它默认只装核心打印模块;扫描、状态监控、墨量查询等功能需要额外启用插件和用户组权限,缺一不可。
- 必须把当前用户加进
lp和lpadmin组:sudo usermod -a -G lp,lpadmin $USER,然后重新登录终端或重启图形会话 - 运行
hp-check -t查问题,重点看 “warning: hpcups not found” 或 “error: plug-in not installed” —— 这表示插件没下全,得手动跑sudo hp-setup -i补装 - 某些型号(如 M725 系列)的固件需从 HP 官网下载后,用
hp-firmware工具刷入,否则 USB 直连都可能卡在“waiting for device” - 别信“系统自动识别”,很多新机型的 PPD 文件在旧版 HPLIP 里压根没有,得确认你装的是最新版(Ubuntu 22.04 自带的 hplip 3.22.x 就不支持 M725,要
sudo apt install hplip --upgrade或手动编译 3.24+)
真正麻烦的从来不是“加一台打印机”,而是搞清哪一层在拦路:是网络层没通,CUPS 权限锁死,Windows 共享名拼错,还是 HPLIP 插件根本没装。每个环节都得单独验证,靠猜只会越调越乱。


















