1. 更新系统并安装 CUPS 和打印机驱动
sudo apt update sudo apt install cups cups-client cups-filters hplip printer-driver-gutenprint printer-driver-brlaser printer-driver-c2esp avahi-daemon avahi-discover libnss-mdns -y # 上面选择自己的打印机,去掉不需要的
2. 将当前用户加入 lpadmin 组(方便以后管理打印机)
sudo usermod -aG lpadmin $USER # 重新登录或重启后生效
3. 启动并启用 CUPS 服务
sudo systemctl enable cups sudo systemctl restart cups
4. 允许局域网访问 CUPS Web 管理界面和打印服务(关键步骤)
默认情况下 CUPS 只监听 127.0.0.1,我们要改成监听所有接口,并允许 192.168.9.0 网段访问。
编辑主配置文件:
sudo vim /etc/cups/cupsd.conf
# 只监听所有网络接口(而不是默认只听 localhost)
Listen localhost:631 ← 删除或注释掉这行
Port 631 ← 改成这一行,让它监听所有接口的 631 端口
# 允许局域网访问 Web 界面和打印服务
# 只监听所有网络接口(而不是默认只听 localhost) Listen localhost:631 ← 删除或注释掉这行 Port 631 ← 改成这一行,让它监听所有接口的 631 端口 # 允许局域网访问 Web 界面和打印服务 <Location /> Order allow,deny Allow from 127.0.0.1 Allow from 192.168.9.0/24 # 允许整个 9 网段 </Location> <Location /admin> Order allow,deny Allow from 127.0.0.1 Allow from 192.168.9.0/24 # 允许网段内访问管理页面(也可以只给自己IP) # Allow from 192.168.9.100 # 如果只想自己管理,可以写死自己的IP </Location> <Location /admin/conf> AuthType Default Require user @SYSTEM Order allow,deny Allow from 127.0.0.1 Allow from 192.168.9.0/24 </Location>
保存后重启 CUPS:
sudo systemctl restart cups
7. 确保打印机被共享(命令行也可以强制共享)//一般不需要
如果你已经通过 Web 加好了,通常会自动共享。如果想用命令行确认或强制共享:
# 查看已安装的打印机名称
lpstat -p
# 强制开启共享(把 PrinterName 换成你的打印机名字)
sudo lpadmin -p PrinterName -o printer-is-shared=true
电脑添加网络打印机时,https://192.168.9.223:631/printers/Brother_HL-2140_series
