从 16.04 升级到 18.04 后,Epson GT-S50 扫描仪无法工作

从 16.04 升级到 18.04 后,Epson GT-S50 扫描仪无法工作

自升级以来,我的 Epson 扫描仪 GT-S50(Epkowa 驱动程序)。dmesg插入时会被检测到():

[ 3755.680091] usb 3-4.4.1: new high-speed USB device number 8 using ehci-pci
[ 3755.789893] usb 3-4.4.1: New USB device found, idVendor=04b8, idProduct=0137
[ 3755.789895] usb 3-4.4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 3755.789896] usb 3-4.4.1: Product: EPSON Scanner
[ 3755.789897] usb 3-4.4.1: Manufacturer: EPSON

但是当启动“图像扫描!”或“简单扫描”时,无法检测到扫描仪。

图像扫描!错误

它仍然以某种方式被 Sane 检测到,因为在运行 sane-find-scanner 时,它“看到”了它:

...
found USB scanner (vendor=0x04b8 [Language Error], product=0x0137 [Language Error]) at libusb:003:008
...

但是,scanimage -L检测不到!

未识别任何扫描仪。如果您期望得到不同的结果,请检查扫描仪是否已插入、已打开并且被 sane-find-scanner 工具检测到(如果适用)。请阅读此软件附带的文档(README、FAQ、手册页)。

如果我找不到解决方案,我会考虑降级回 16.04。

经过一些额外调查后,我得到了额外的信息:升级到 Ubuntu 18.04 似乎破坏了 Sane 设置中的某些功能。iscan由于系统日志中出现以下错误,呼叫或其他与 sane 相关的应用程序都无法发现我的扫描仪:

iscan: io/hpmud/pp.c 627: unable to read device-id ret=-1

对合理实用程序的其他调用由于同样的原因而失败:

colord-sane: io/hpmud/pp.c 627: unable to read device-id ret=-1
scanimage: io/hpmud/pp.c 627: unable to read device-id ret=-1
xsane: io/hpmud/pp.c 627: unable to read device-id ret=-1

编辑2:好的,找到并解决了消息的来源io/hpmud/pp.c 627: unable to read device-id ret=-1;它是由 hplip(libsane)的 hpio 模块引起的。我已将其禁用(= 在文件中注释掉/etc/sane.d/dll.d/hplip),现在该消息已消失。

此外,我尝试通过添加文件来指定我的扫描仪为usb 0x04b8 0x0137正常/etc/sane.d/epkowa.conf状态/etc/udev/rules.d/在文件中添加了以下 UDEV 规则55-libsane.rules

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE=="0666"
SUBSYSTEM=="usb_device", MODE=="0666"
ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0137", MODE="0666", 
GROUP="scanner", ENV{libsane_matched}="yes"

但是,到目前为止仍然无济于事......扫描仪顽固地未被发现:'(

附注:不知道这是否重要,但是断开扫描仪时,我看到以下消息出现/var/log/syslog

May 16 09:37:40 hades kernel: [22174.197243] usb 3-4.4.1: USB disconnect, device number 7
May 16 09:37:40 hades upowerd[1809]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:1c.5/0000:05:00.0/0000:06:00.2/usb3/3-4/3-4.4/3-4.4.1
May 16 09:37:40 hades colord-sane[7678]: failed to receive list of devices: Failed to connect to missing device /org/freedesktop/ColorManager/devices/sysfs_EPSON_EPSON_Scanner

答案1

我在评论中找到了这样一个词:Ubuntu 的 sane-backends 错误 #1728012。我把它记录为评论在错误报告上。

问题似乎在于/usr/lib/x86_64-linux-gnu/sane(或更一般地说/usr/lib/$(uname -m)-linux-gnu/sane)文件夹中缺少指向 epkowa(SEIKO EPSON)库的符号链接。

因此我做了以下事情:

  1. sudo ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane

  2. 删除了usb 0x04b8 0x0137我添加的条目/etc/sane.d/epkowa.conf

  3. 添加了一个包含以下文本的55-epson-libsane.rules文件:/etc/udev/rules.d/

    SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE=="0666"
    SUBSYSTEM=="usb_device", MODE=="0666"
    
    ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="*", MODE="0666"
    
    ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0137", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"
    
  4. 最后我拔下/插入扫描仪并尝试

    scanimage -L
    

    并得到了这个令人鼓舞的答案:

    device `epkowa:interpreter:003:011' is a Epson GT-S50 flatbed scanner
    
  5. 然后我开始iscan(图像扫描!),它立即检测到我的扫描仪。然后我可以成功扫描一页。耶!:-)

更新:(Ubuntu 20.04) 升级到 Ubuntu 20.04 后,我突然又遇到了这个问题。我搜索了好一会儿,因为我的配置似乎没有任何变化……突然间,我注意到我的/etc/sane.d/epkowa.conf文件权限不知何故被更改了,而且该文件只有 root 才能读取!

将其改回“世界”可读(chmod +r /etc/sane.d/epkowa.conf)后,一切都恢复正常,iscan 和 scanimage 都可以再次正确检测扫描仪,而无需使用“sudo”进行调用。

相关内容