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

自升级以来,我的爱普生扫描仪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工具检测(如果适用)。 请阅读本软件随附的文档(自述文件,常见问题解答,联机帮助页)。

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

经过一些额外调查后的额外信息:似乎升级到Ubuntu 18.04在Sane设置中破坏了一些东西。 由于syslog出现以下错误,调用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文件中/etc/sane.d/dll.d/hplip ),消息现在消失了。

此外,我试图通过在/etc/sane.d/epkowa.conf文件中添加usb 0x04b8 0x0137来指定我的扫描仪,并在/etc/sane.d/epkowa.conf添加以下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 

我在Ubuntu的sane-backends bug#1728012的评论中找到了一个有效的解决方法。 我将其记录为对错误报告的评论 。

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

因此我做了以下事情:

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

  2. 删除了我添加到/etc/sane.d/epkowa.confusb 0x04b8 0x0137条目

  3. 使用以下文本在/etc/udev/rules.d/添加了55-epson-libsane.rules文件:

     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 (图像扫描!),它立即检测到我的扫描仪。 然后,我可以成功扫描页面。 Yipee! 🙂