当前位置: 首页>>技术教程>>正文


参数无效 – 升级后Brother扫描器无法正常工作(brscan2驱动程序)

, , , ,

问题描述

我最近升级了Ubuntu 13.10(Saucy)。

通过我的MFC-420CN扫描已经在Ubuntu中工作,而Linux Mint通过Olivia和Oneric进行安装。然而,一旦我从这些升级,扫描破了。我安装了一份新的saucy副本,以验证它不仅仅与升级有关。

Brother的网站上注意到,所有brscan1型号都不再支持Ubuntu 11.10的USB扫描,但它似乎不适用于brscan2和brscan3型号。此外,我发现several其他posts似乎表明至少brscan4型号目前正在工作。但是我无法使用brscan2(或brscan4以外的其他潜水员)验证扫描仪,而ubuntu 13.10(实际上是12.10和更高版本)目前正在运行。

对于cross-referencing /帮助其他人解决问题,brscan2扫描仪的完整列表如下:

DCP-110C DCP-115C DCP-117C DCP-120C DCP-130C DCP-135C DCP-150C DCP-153C DCP-155C DCP-310CN DCP-315CN DCP-330C DCP-340CW DCP-350C DCP-353C DCP-357C DCP- 540CN DCP-560CN DCP-7010 DCP-7020 DCP-7025 DCP-750CW DCP-770CW DCP-8060 DCP-8065DN MFC-210C MFC-215C MFC-230C MFC-235C MFC-240C MFC-260C MFC-3240C MFC-3340CN MFC -3360C MFC-410CN MFC-420CN MFC-425CN MFC-440CN MFC-465CN MFC-5440CN MFC-5460CN MFC-5840CN MFC-5860CN MFC-620CN MFC-640CW MFC-660CN MFC-665CW MFC-680CN MFC-685CW MFC-7220 MFC-7225N MFC-7420 MFC-7820N MFC-820CW MFC-845CW MFC-8460N MFC-8660DN MFC-8670DN MFC-885CW MFC-8860DN MFC-8870DW MFC-9420CN

类似的先前提出的问题/问题(但对于brscan3驱动程序硬件):


到目前为止,我已经尝试过:

  • 安装sane-utils

  • 在兄弟网站上关于brscan2安装的重复,包括使用dpkg -f标志

  • 编辑/lib/udev/rules.d/40-libsane.rules包含

码:

# Brother scanners

ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"
  • 将文件从lib复制到lib64:

码:

cd /usr/lib
ln -s ../lib64/libbrscandec2.so.1.0.0 .
ln -s ../lib64/libbrcolm2.so.1.0.1 .
ln -s ../lib64/libbrcolm2.so .
ln -s ../lib64/libbrscandec2.so.1 .
ln -s ../lib64/libbrscandec2.so .
ln -s ../lib64/libbrcolm2.so.1
cd sane
ln -s ../../lib64/sane/libsane-brother2.so.1.0.7 .
ln -s ../../lib64/sane/libsane-brother2.so.1 .
ln -s ../../lib64/sane/libsane-brother2.so .
  • 安装ia32-libs并重复安装sane-utils

  • 删除64位brscan2驱动程序并将其替换为32位驱动程序,但扫描图像与32位驱动程序set-up for usb或网络模式的结果不太有希望:

码:

# scanimage -L

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).
  • 使用WINE eumlating Win2000或XP的32位Windows驱动程序 – 它几乎在2000年完成。


调试64位驱动程序:

安装了brscan2后,我可以打开simple-scan找到扫描仪;而且scanimage输出表明一切正常:

# scanimage -L
device `brother2:bus5;dev2' is a Brother DCP-350C USB scanner

但扫描(即使是root用户)仍然无法正常工作。

> sudo scanimage >image.pnm
scanimage: open of device brother2:bus2;dev4 failed: Invalid argument

xsane产生类似的错误:

 Failed to start scanner: Invalid argument

sane-find-scanner产生一个管道错误,显示在这里:http://pastebin.com/tTNMyD1m,但这似乎与兄弟提供驱动程序,而不是理智的事实有关。

我非常坚持这一点,任何帮助将不胜感激。

最佳解决方案

更新到13.10后,我在扫描时遇到了同样的错误。这里有两个问题。

  1. 错误Invalid参数不是参数问题,而是写访问问题。

  2. 另一个问题是扫描图像错误导致总线和开发号码错误。

如何找到并解决问题?

从兄弟网站安装brscan4驱动程序

sudo dpkg -i brscan4-0.4.2-1.amd64.deb

检查它是否有效

sudo brsaneconfig4 -d

测试是否安装了扫描仪(扫描仪需要打开电源)。并以root用户身份运行

$ scanimage -L
device `brother4:bus5;dev1' is a Brother ADS-2000 USB scanner
$ scanimage --test
scanimage: open of device brother4:bus5;dev1 failed:
Invalid argument

要么

$ scanimage
scanimage: open of device brother4:bus5;dev1 failed:
Invalid argument

您可以使用以下脚本更新扫描程序的权限。

lsusb | grep -i brother | sed 's/://' | awk '{printf "/dev/bus/usb/%s/%s", $2,$4}' | xargs -i -t sudo chmod 666 "{}"

lsusb列出了usb设备

grep -i brother会找到兄弟设备(我假设你一次只有一个兄弟设备连接到USB)

sed 's/://' | awk '{printf "/dev/bus/usb/%s/%s", $2,$4}'将找到公交车和公交车。设备编号

xargs -i -t sudo chmod 666 "{}"将为扫描程序添加写入权限

以下是有关我们为何完成上述操作的详细信息

要找出兄弟扫描仪在总线上的位置,请使用lsusb。这是scanimage中的一个问题。总线为003,设备为002而不是总线5,根据扫描图像设置为1

$ lsusb
Bus 003 Device 002: ID 04f9:60a0 Brother Industries, Ltd**  
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
...

要解决此问题,您需要在lsusb命令中使用基于兄弟扫描程序位置的路径。在我的例子中,它是bus 003device 002。请注意,如果拔下USB电缆连接到扫描仪并将其重新插入设备,您将获得一个新号码和/或总线。 (重启PC时,该号码返回2)

例子:

sudo cd /dev/bus/usb/003
sudo chmod 666 002

要不就:

sudo chmod 666 /dev/bus/usb/003/002

Scanimage无法访问扫描器以获得正确的总线和开发号时,需要修复该消息,并告诉用户该问题是写访问问题。

Brother需要更新驱动程序代码,以便全局用户可以写入扫描仪,即chmod 666到扫描仪驱动程序位置

次佳解决方案

只需将您的用户添加到lp组…

usermod -a -G lp username

像这样,您将拥有扫描仪的写入权限。

经测试:

  • 14.04 LTS 64位up-to-date

  • 兄弟DCP-J315W

  • 从Brother支持中心下载linux-brprinter-installer-2.0.0-1

/dev /bus /usb /001上打印机/扫描仪的权限是:

crw-rw-r-- 1 root lp

为此,将您的用户名添加到lp组是一个解决方案。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/3057.html,未经允许,请勿转载。