未检测到扫描仪 - 参数无效

未检测到扫描仪 - 参数无效

每当我想扫描图像时,似乎都无法检测到我的 Brother MFC-9120-CN。但是打印机工作正常。该设备直接连接到我的本地网络。

➜  ~  scanimage -L
device `brother3:net1;dev0' is a Brother MFC-9120CN SCANNER_BROTHER
➜  ~  scanimage --test
scanimage: open of device brother3:net1;dev0 failed: Invalid argument
➜  ~  scanimage           
scanimage: open of device brother3:net1;dev0 failed: Invalid argument

与简单扫描的结果相同。

我应该怎么办?

答案1

我也遇到了同样的问题,刚刚偶然发现了这个解决方案https://bugs.launchpad.net/ubuntu/+source/simple-scan/+bug/848575/comments/3

Brother 提供了包含必要驱动程序的软件包brscanbrscan2brscan3、 ...。遗憾的是,共享库(驱动程序)存储在/usr/lib64和下面,但 scanimage 会尝试从和/usr/lib64/sane加载它们。/usr/lib/usr/lib/sane

因此,解决方案是将这些文件复制或链接到正确的目录

ln -s /usr/lib64/sane/libsane-brother* /usr/lib/sane
ln -s /usr/lib64/libbrscandec* /usr/lib
ln -s /usr/lib64/libbrcolm* /usr/lib

32 位版本没有这个问题,因为共享对象存储在正确的位置。

答案2

Olaf Dietsche 的答案需要针对 Mint 19.1 和 Ubuntu 18.04 进行一些修改。可以使用

strace -e openat scanimage > /dev/null

找到它要查找的库的位置。在本例中,它会libbrscandec3.so/lib/x86_64-linux-gnu/usr/lib/x86_64-linux-gnu/lib和中查找/usr/lib

因此,以 root 身份运行以下命令:

cd /usr/lib/x86_64-linux-gnu
ln -vs /usr/lib64/libbrscandec*.so* .
cd /usr/lib/x86_64-linux-gnu/sane
ln -vs /usr/lib64/sane/libsane-brother*.so* .

这应该适用于基于 brscan3 的扫描仪。其他 brscan 版本可能具有略有不同的库文件名;对于 brscan4,请检查

dpkg -L brscan4 | grep \\.so

查看安装了哪些库文件并需要链接。对于 brscan4,libbrscandec不需要这些文件;对于 brscan2,libbrcolm2除了 之外还需要libbrscandec

答案3

要查看结果,您应该在终端中输入以下内容:

scanimage -d brother3:net1:dev0 --resolution 150 --mode Color --format=tiff > /tmp/test.tif

PS 别忘了把一些纸放进扫描仪进行扫描。然后你就可以在 /tmp/test.tif 文件中看到扫描结果了。

相关内容