当前位置:首页>Linux>Linux打印机与扫描仪安装攻略——CUPS/hplip/扫描怎么搞定

Linux打印机与扫描仪安装攻略——CUPS/hplip/扫描怎么搞定

  • 2026-10-11 05:48:33
Linux打印机与扫描仪安装攻略——CUPS/hplip/扫描怎么搞定

大家好,我是冯哥的缓存。今天这篇讲 Linux 下打印机和扫描仪的安装。

打印机是 Linux 新手最头疼的硬件之一。Windows 下插上打印机,驱动自动装好,打印没问题;到了 Linux,同一台打印机,有人装好了没问题,有人折腾一天也用不了。

差别在哪?就在于有没有驱动支持、有没有用对工具。这篇把常见情况拿出来聊聊。

Linux 打印机的工作原理——先懂原理再动手

Linux 的打印系统叫 CUPS(Common Unix Printing System),几乎所有 Linux 发行版都预装了它。

打印机驱动的安装过程是这样的:

步骤
说明
1. 连接打印机
USB 或网络(Wi-Fi/有线)
2. CUPS 识别
Linux 的打印管理核心,负责调度所有打印任务
3. 驱动/PPD文件
告诉 CUPS 如何和具体型号的打印机通信
4. 发送打印任务
应用程序 → CUPS → 驱动 → 打印机

💡 提示: PPD(PostScript Printer Description)是打印机的"说明书文件",CUPS 通过它知道打印机支持哪些功能(纸张大小、分辨率等)。

打印机安装成功率预判——先查支持情况

装驱动之前,先查一下自己的打印机是否有 Linux 驱动。这一步能省很多时间。

查询方式

方法一:用 OpenPrinting 数据库(最全的 Linux 打印机兼容性数据库)

在浏览器里搜索:openprinting.org 你的打印机型号

或者直接访问:https://www.openprinting.org/printers

方法二:搜索发行版 + 型号

搜索关键词:Ubuntu + 你的打印机品牌 + 型号,看看有没有人成功的案例。

支持等级参考

支持情况
说明
建议
完美支持
插上自动识别,无需额外操作
直接装,开箱即用
需要安装驱动包
品牌提供 deb 包或需要 hplip 等工具
按本文步骤安装
社区驱动
有热心用户贡献的驱动,可能不稳定
可以试试,备好预案
不支持
没有任何驱动
考虑换打印机或用虚拟机打印

⚠️ 注意: 部分品牌打印机(某些低价激光打印机)在 Linux 下完全没有驱动,购买前建议先查清楚。

第一步:安装并启动 CUPS

大多数 Ubuntu/Debian 系统已预装 CUPS,先确认状态:

# 检查 CUPS 是否已安装
which cupsd
cups --version

# 检查 CUPS 服务是否在运行
systemctl status cups

# 如果没安装,执行安装
sudo apt install cups

# 启动 CUPS 并设置开机自启
sudo systemctl enable cups
sudo systemctl start cups

CUPS 自带一个 Web 管理界面,可以在浏览器里管理打印机:

# 打开 CUPS 管理界面(在浏览器里输入)
# http://localhost:631

第二步:USB 打印机安装

方案 A:自动识别(推荐先试)

直接插上 USB 打印机,系统通常会自动识别并安装基础驱动:

# 插上打印机后,查看是否被识别
lsusb | grep -i print

# 查看 CUPS 是否已自动添加
lpstat -p -d

如果 lpstat -p 能看到打印机名称,说明已自动识别成功,可以直接测试打印:

# 测试打印一个文件
lp 文件名.pdf

# 或者用图形界面:打开文件 → 打印

方案 B:通过 GNOME/KDE 系统设置添加

  1. 打开"设置" → "打印机"
  2. 点击右上角"+"添加打印机
  3. USB 打印机通常会直接列出,点击添加即可

方案 C:通过 CUPS Web 界面添加

  1. 浏览器打开 http://localhost:631
  2. 点击"Administration" → "Add Printer"
  3. 选择已连接的 USB 打印机
  4. 选择驱动(建议先选自动推荐的)
  5. 完成设置

第三步:HP 打印机——用 hplip 搞定

HP(惠普)是 Linux 下兼容性最好的打印机品牌,因为 HP 官方维护了 hplip(HP Linux Imaging and Printing)工具。

# 安装 hplip
sudo apt install hplip

# 安装图形界面工具(可选,方便管理)
sudo apt install hplip-gui

# 运行 HP 设备管理器(图形界面)
hp-toolbox

如果系统自带的 hplip 版本较旧,可以从 HP 官网下载最新版:

# 查看当前 hplip 版本
dpkg -l hplip

# 运行 HP 设备安装向导
sudo hp-setup

hp-setup 会引导你选择连接方式(USB / 网络)并自动配置,大多数 HP 打印机按这个流程都能成功。

第四步:网络打印机(Wi-Fi/有线)

方案 A:自动发现(支持 AirPrint / IPP 的打印机)

现代网络打印机大多支持 IPP(Internet Printing Protocol),Linux 可以自动发现并添加:

# 安装 avahi(网络设备自动发现服务)
sudo apt install avahi-daemon

# 安装 IPP 支持
sudo apt install ipp-usb printer-driver-gutenprint

# 查看网络上发现的打印机
sudo avahi-browse -a | grep printer

自动发现后,在"设置" → "打印机"里会直接看到网络打印机。

方案 B:手动添加 IP 地址

如果自动发现失败,可以手动填写打印机 IP:

  1. 浏览器打开 http://localhost:631
  2. "Administration" → "Add Printer"
  3. 选择"AppSocket/HP JetDirect"(大多数网络打印机)
  4. 输入 socket://打印机IP:9100(9100 是标准打印端口)
  5. 按提示选择型号和驱动

# 先 ping 一下确认打印机 IP 是否可达
ping 192.168.1.100   # 替换为你的打印机 IP

第五步:兄弟(Brother)/ 佳能(Canon)/ 爱普生(Epson)

这三个品牌在 Linux 下有官方支持,但需要手动下载驱动:

Brother(兄弟)

Brother 提供了 Linux deb 安装包:

  1. 访问 Brother 官网:https://support.brother.com
  2. 搜索你的打印机型号
  3. 选择 Linux → Debian/Ubuntu → 下载 LPR driver 和 CUPS wrapper driver

# 安装两个包(先装 LPR,再装 CUPS wrapper)
sudo dpkg -i brother-XXX-lpr-X.X.X-X.i386.deb
sudo dpkg -i brother-XXX-cupswrapper-X.X.X-X.i386.deb

# 如果提示依赖问题
sudo apt install -f

Brother 还提供了一键安装脚本(linux-brprinter-installer),在官网下载后直接运行:

sudo bash linux-brprinter-installer-X.X.X-X 你的型号

Canon(佳能)

  1. 访问 Canon 官网 → 找到 Linux 驱动(通常是 cnijfilter2 包)
  2. 下载 deb 安装包

sudo dpkg -i cnijfilter2-X.XX-X-debian.tar.gz  # 解压后安装
# 或者
sudo apt install cnijfilter2_5.90-1_amd64.deb

Epson(爱普生)

Epson 提供了 epson-inkjet-printer-escpr 驱动,很多型号已在 Ubuntu 软件源里:

# 先试软件源
sudo apt install epson-inkjet-printer-escpr

# 或访问爱普生官网下载 deb 包
# https://download.ebz.epson.net/dsc/search/01/search/?OSC=LX

第六步:扫描仪安装——SANE 框架

Linux 的扫描仪支持由 SANE(Scanner Access Now Easy)框架提供。

# 安装 SANE 核心工具
sudo apt install sane sane-utils

# 安装图形界面扫描工具
sudo apt install simple-scan    # GNOME 推荐,简洁好用
# 或者
sudo apt install skanlite       # KDE 推荐

# 检测扫描仪是否被识别
sudo sane-find-scanner

# 测试扫描
scanimage --list-devices

如果 scanimage --list-devices 能列出你的扫描仪,说明已识别成功,打开 simple-scan 就能直接扫描了。

HP 多功能一体机扫描

HP 一体机的扫描功能也在 hplip 里:

# HP 扫描工具
hp-scan

# 或者直接用 simple-scan,hp 设备通常自动支持

Brother 多功能一体机扫描

Brother 扫描驱动需要额外下载(brscan4 或 brscan5):

  1. Brother 官网搜索你的型号 → 下载 Linux 扫描驱动(Scanner Driver)

# 安装扫描驱动
sudo dpkg -i brscan4-X.X.X-X.amd64.deb

# 添加打印机到 SANE(替换为你的型号和 IP)
sudo brsaneconfig4 -a name=Brother model=MFC-L2750DW ip=192.168.1.100

打印机常见问题速查

问题
可能原因
解决方法
插上 USB 没反应
驱动未安装
检查品牌,安装对应驱动
打印任务卡住不动
CUPS 队列堵塞
sudo cancel -a
 清空队列,重启 CUPS
网络打印机找不到
防火墙或网络问题
确认打印机 IP,手动添加
打印出乱码
PPD 驱动不对
换其他驱动试试(CUPS 里可以改)
打印中文显示方块
缺少字体
安装 fonts-wqy-zenhei 等中文字体
扫描仪识别不了
SANE 版本旧或缺少后端
sudo apt install libsane-extras
HP 设备无法打印
hplip 版本过旧
从官网下载新版 hplip 重新安装

# 重启 CUPS 服务(出问题先试这个)
sudo systemctl restart cups

# 清空打印队列
sudo cancel -a

# 查看打印错误日志
sudotail -f /var/log/cups/error_log

测试打印是否成功

安装完驱动后,做一次完整测试:

# 1. 查看已安装的打印机列表
lpstat -p -d

# 2. 设置默认打印机(替换为你的打印机名称)
lpoptions -d 打印机名称

# 3. 打印测试页(CUPS Web界面也可以)
sudo lp -d 打印机名称 /usr/share/cups/data/testprint

# 4. 查看打印任务状态
lpq

实战练习

# 1. 检查 CUPS 状态
systemctl status cups

# 2. 查看本机已识别的打印机
lpstat -p -d 2>/dev/null || echo"暂无打印机"

# 3. 扫描仪检测
sudo sane-find-scanner 2>/dev/null || echo"未检测到扫描仪"

# 4. 查看已安装的打印相关软件
dpkg -l | grep -E "cups|hplip|sane|printer"

# 5. 检查 USB 设备(确认打印机是否被系统识别)
lsusb

# 6. 查看 CUPS 错误日志(如遇打印问题)
sudotail -20 /var/log/cups/error_log

总结:打印机安装路线选择

品牌
推荐安装方式
成功率参考
HP(惠普)
安装 hplip,运行 hp-setup
⭐⭐⭐⭐⭐
爱普生
软件源安装 epson-inkjet-printer-escpr
⭐⭐⭐⭐
兄弟(Brother)
官网下载 LPR + CUPS wrapper 驱动
⭐⭐⭐⭐
佳能
官网下载 cnijfilter2
⭐⭐⭐
支持 AirPrint 的网络打印机
安装 ipp-usb,自动识别
⭐⭐⭐⭐
杂牌激光打印机
查 OpenPrinting 数据库,可能无驱动
⭐⭐

💡 提示: 如果你在公司用的是网络打印机,先问一下 IT 打印机品牌型号,提前查好 Linux 支持情况,能省不少麻烦。

下一篇预告:《Linux游戏安装攻略(上)——Steam与Proton基础》,聊聊在 Linux 下玩游戏这件事,有多少 Windows 游戏其实可以直接跑。

最新文章

随机文章