一、准备工作
usbcore、usb-uhci/usb-ohci/ehci-hcd)和SCSI(scsi_mod、sg)模块。可通过lsmod | grep -E 'usb|scsi'命令检查模块是否加载,未加载则用sudo modprobe <模块名>手动加载(如sudo modprobe usb-uhci)。二、安装SANE后端及工具 SANE(Scanner Access Now Easy)是Linux下标准的扫描仪接口框架,需先安装其核心组件及实用工具:
# 使用yum/dnf安装(CentOS 7/8/Stream)
sudo yum install sane sane-utils xsane
# 或CentOS 8及以上使用dnf
sudo dnf install sane sane-utils xsane
安装完成后,sane-find-scanner(检测设备)、scanimage(命令行扫描)、xsane(图形界面)等工具将可用。
三、检测扫描仪设备
sudo sane-find-scanner
若扫描仪连接正常,将输出类似以下信息(示例为USB设备):found USB scanner (vendor=0x04a9 [Canon], product=0x1905 [LiDE 25]) at libusb:001:002
记录设备路径(如libusb:001:002),后续配置需用到。scanimage -L
若配置正确,将显示扫描仪型号(如device 'canoscan:libusb:001:002' is a CANON CanoScan LiDE 25),表示系统已识别设备。四、安装特定型号驱动(若需)
scanimage -L未识别,可尝试更新SANE版本:sudo yum update sane sane-utils
cns5500、惠普hp4600),并按照以下步骤编译安装:# 解压驱动包(以佳能为例)
tar zxvf cns5500.tar.gz
cd cns5500
# 编译安装
./configure
make
sudo make install
# 配置设备文件(根据驱动文档修改,如修改/etc/sane.d/cns5500.conf)
驱动文档通常会说明具体配置项(如设备路径、固件路径)。五、配置设备权限(解决权限问题) 若普通用户无法访问扫描仪,需调整设备文件权限:
sudo chmod 666 /dev/bus/usb/001/002 # 替换为实际设备路径
sudo vi /etc/udev/rules.d/99-scanner.rules
添加以下内容(根据设备VID/PID修改,可通过lsusb获取):SUBSYSTEM=="usb", ATTR{idVendor}=="04a9", ATTR{idProduct}=="1905", MODE="0666"
保存后重启udev服务:sudo systemctl restart udev
此时普通用户即可直接使用扫描仪。六、测试扫描功能
scanimage > test.pnm # 扫描并保存为PNM格式
若成功,将生成test.pnm文件(可用display命令查看,需安装imagemagick)。xsane(图形化扫描工具):xsane
在界面中选择设备(如Canon LiDE 25),调整参数(分辨率、颜色模式)后点击“扫描”即可。常见问题排查
lsmod | grep usb)、SANE版本是否过旧(sane-find-scanner -v)。ls -l /dev/bus/usb/001/002,应显示rw-rw-rw-)。www.sane-project.org)查询扫描仪型号是否在“Supported Devices”列表中。