温馨提示×

Debian如何挂载打印机

小樊
48
2025-11-02 06:42:25
栏目: 智能运维

一、前置准备:安装CUPS打印服务
CUPS(Common Unix Printing System)是Debian系统下管理打印机的核心服务,需先安装并启动:

sudo apt-get update
sudo apt-get install cups cups-client cups-bsd foomatic-filters  # 安装CUPS及常用组件
sudo systemctl start cups         # 启动CUPS服务
sudo systemctl enable cups        # 设置开机自启

若使用HP打印机,还需额外安装hplip驱动包:

sudo apt-get install hplip hplip-gui

二、解决权限问题(避免无法添加打印机)
默认情况下,仅rootlpadmin组用户可在CUPS Web界面添加打印机。若使用普通用户(如linarodebian),需完成以下操作:

  1. 将用户加入lpadmin组:
    sudo usermod -aG lpadmin <用户名>  # 替换<用户名>为实际账户名
    
  2. 退出并重新登录用户(或重启系统),使组权限生效。

三、添加USB打印机(最常见场景)

  1. 确认打印机被系统识别
    插入USB打印机后,运行以下命令查看设备信息:
    lsusb                  # 查看USB设备列表
    dmesg | grep usb       # 检查内核是否识别到打印机
    lpinfo -v              # 列出可用打印设备(正常应出现类似/dev/usb/lp0的输出)
    
  2. 通过Web界面添加
    打开浏览器访问http://localhost:631,登录后进入“Administration”→“Add Printer”,选择USB打印机(如“HP DeskJet 2130”),按照提示完成配置。
  3. 通过命令行添加(可选)
    若熟悉命令行,可使用lpadmin工具快速添加,例如:
    sudo lpadmin -p MyUSBPrinter -E -v usb://HP/DeskJet_2130?serial=XXXX -m everywhere
    
    其中:-p指定打印机名称(自定义),-E启用打印机,-v指定设备URI(通过lpinfo -v获取),-m everywhere使用通用驱动(适用于大多数USB打印机)。

四、添加网络打印机(局域网共享)

  1. 确认网络可达性
    确保打印机与Debian系统在同一网络,且打印机已开启网络共享功能(如IPP、Socket协议)。
  2. 通过Web界面添加
    进入CUPS管理界面的“Add Printer”,选择“Find Network Printer”,输入打印机IP地址(如192.168.1.100),搜索到后选择对应型号并配置。
  3. 通过命令行添加(以IPP为例)
    sudo lpadmin -p NetPrinter -E -v ipp://192.168.1.100/ipp/print -m everywhere
    
    其中-v指定IPP协议的设备URI(格式为ipp://<打印机IP>/ipp/print)。

五、配置共享打印机(供局域网其他设备使用)
若需让Windows、Linux等其他设备使用Debian主机的打印机,需修改CUPS配置文件:

  1. 编辑/etc/cups/cupsd.conf
    sudo nano /etc/cups/cupsd.conf
    
  2. 找到并修改以下内容:
    Listen 0.0.0.0:631                # 允许所有IP访问CUPS服务
    <Location />
      Order allow,deny
      Allow all                       # 允许所有客户端访问
    </Location>
    <Location /admin>
      Require user @SYSTEM linaro     # 允许指定用户(如linaro)管理打印机(根据实际情况调整)
    </Location>
    
  3. 保存后重启CUPS服务:
    sudo systemctl restart cups
    

其他设备添加打印机时,输入Debian主机的IP地址和端口(如http://192.168.1.100:631/printers/MyUSBPrinter)即可搜索到共享打印机。

六、测试打印
添加完成后,可通过以下方式验证打印机是否正常工作:

  1. 在CUPS管理界面点击打印机名称旁的“Print Test Page”按钮,打印测试页。
  2. 使用命令行测试:
    echo "Hello from Debian Printer" | lp -d MyUSBPrinter  # 替换为实际打印机名称
    

七、常见问题排查

  • CUPS Web页面无法访问:检查/etc/cups/cupsd.conf中是否启用了WebInterface YesListen *:631,并确认防火墙未阻止631端口。
  • USB打印机未被识别:确保内核加载了usblp模块(运行lsmod | grep usblp,若未加载则执行sudo modprobe usblp)。
  • 权限不足:确认用户已加入lpadmin组,并重新登录系统。

0