从此处的Brother网站下载并安装了linux驱动程序。
但是仍然无法识别扫描仪。
您可以在这里看到驱动程序已成功安装:
$ dpkg -l | grep Brother
ii brother-cups-wrapper-common 1.0.0-10-0ubuntu6 amd64 Common files for Brother cups wrapper packages
ii brother-udev-rule-type1 1.0.0-1 all Brother udev rule type 1
ii brscan-skey 0.2.4-1 amd64 Brother Linux scanner S-KEY tool
ii brscan2 0.2.5-1 amd64 Brother Scanner Driver
ii printer-driver-brlaser 3-5~ubuntu1 amd64 printer driver for (some) Brother laser printers
ii printer-driver-ptouch 1.4-1 amd64 printer driver Brother P-touch label printers
在这里,您可以看到已安装的驱动程序认为它没有被“注册”:
$ brscan-skey -l
DCP-350C : brother2:bus3;dev1 : USB Not registered
当我打开简单扫描时,它告诉我我有一个Brother扫描仪,但是我需要安装驱动程序。
$ lsusb
Bus 003 Device 002: ID 04f9:01d0 Brother Industries, Ltd DCP-350C
$ sudo dpkg -l | grep Brother
ii brother-cups-wrapper-common 1.0.0-10-0ubuntu6 amd64 Common files for Brother cups wrapper packages
ii brother-udev-rule-type1 1.0.0-1 all Brother udev rule type 1
ii brscan-skey 0.2.4-1 amd64 Brother Linux scanner S-KEY tool
ii brscan2 0.2.5-1 amd64 Brother Scanner Driver
ii printer-driver-brlaser 3-5~ubuntu1 amd64 printer driver for (some) Brother laser printers
ii printer-driver-ptouch 1.4-1 amd64 printer driver Brother P-touch label printers
Brother似乎已从其支持页面(即此处和此处)中删除了linux o / s config指令,这是此处和此处给出的针对此问题的较早解决方案的来源。“ 常见问题解答和故障排除”部分中的“操作系统支持信息” 页面仅指Windows和Macintosh。如果您在其他地方查看,则会找到有关Linux信息的页面。它说:“默认情况下,Brother Linux扫描仪驱动程序仅适用于超级用户”。它指向一个页面它说的是让扫描程序适用于非sudo用户的方法-也许就是SimpleScan。该页面包含适用于多种操作系统的修复程序下载,但不晚于Ubuntu 13.10。完全下载并安装该文件不会使扫描仪正常工作。如果您闲逛了足够长的时间,您会发现毕竟有一个Linux故障排除常见问题解答-只是不在您希望找到它的地方。使此Brother扫描仪正常工作就像在风洞中穿针一样。linux FAQ的第一项是“我正在使用Ubuntu 16.10。我无法从我的Brother机器扫描”。那已经足够接近了。它说 '安装libusb-0.1-4'。(Brother驱动程序具有依赖关系,但没有麻烦检查它们)。
较早的解决方案之一(对于另一台Brother扫描仪-此解决方案的Brother支持页面已消失)非常有帮助。它说要在'/lib/udev/rules.d/40-libsane.rules'中添加一行,尽管实际上,至少在我的16.04上它应该是/lib/udev/rules.d/60-libsane。规则。它要求您添加的行包括对其他Brother扫描仪的产品ID的引用。在健全的网站上查找DCP-350C产品ID(不是DCP-350C,这太容易了,较早的解决方案是DCP-7030,产品ID为“ 01ea”) ...那我们在哪里?...在健全的网站上寻找DCP-350C产品ID。理智的页面对于Brother扫描仪,没有DCP-350C的条目。它说如果您的设备不存在,则不支持该设备。它说页面的最后更新时间是2003年10月5日。这是14年半以前的事了。我相信350C会在几年后的2007年问世。
因此,DCP-7030的旧解决方案表示要添加编辑合理的配置,因此:
sudo gedit /lib/udev/rules.d/40-libsane.rules
并添加它(在正确的位置):
# Brother scanners
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="01ea", ENV{libsane_matched}="yes"
由于我的配置似乎位于60-libsane.rules中,并且没有产品代码,因此我编辑了配置:
sudo gedit /lib/udev/rules.d/60-libsane.rules
并添加:
# Brother scanners
ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"
并重启机器。这没有用。
我也动了一些文件的兄弟intsall程序似乎放错了地方-至少,据报道在其他地方,如在这里。
这涉及将Brother文件从cp / usr / lib64 /复制到/ usr / lib。(我已经下载并安装了Brother驱动程序的64位版本)。
这样做的指示似乎过时了。由于Brother网站表示必须将其Brscan2驱动程序与DCP-350C配合使用,因此文件名可能会有所不同。我这样复制了我的:
sudo cp /usr/lib64/libbrscandec2.so /usr/lib
sudo cp /usr/lib64/libbrscandec2.so.1 /usr/lib
sudo cp /usr/lib64/libbrscandec2.so.1.0.0 /lib/lib
sudo cp /usr/lib64/sane/libsane-brother2.so /usr/lib/sane
sudo cp /usr/lib64/sane/libsane-brother2.so.1 /usr/lib/sane
sudo cp /usr/lib64/sane/libsane-brother2.so.1.0.7 /usr/lib/sane
sudo cp /usr/lib64/libbrcolm2.so /usr/lib
sudo cp /usr/lib64/libbrcolm2.so.1 /usr/lib
sudo cp /usr/lib64/libbrcolm2.so.1.0.1 /usr/lib
兄弟本人建议这个盲目的胡同。(对于“ Ubuntu 11.10或更高版本”)说,这是DCP-350C 的Linux 常见问题解答(如果可以找到的话):
Copy the following files under /usr/lib64/ to /usr/lib/.
另一个技巧是,只需在命令行中输入brscan-skey,即可实际运行随驱动程序下载提供的brscan-skey文件。
在某些时候,某些事情一定已经解决了,因为Brother驱动程序现在告诉我设备已被识别:
$ brscan-skey -l
DCP-350C : brother2:bus3;dev1 : USB Not registered
但是,SimpleScan仍然说没有设备被识别。
此外,Brother表示,brscan-skey允许使用其“扫描到文件”和“扫描到图像”选项从扫描仪自己的控制台执行扫描。当我这样做时,扫描仪会显示“正在连接到PC”,但是什么也没有发生。
我可以从名为VueScan的商业linux扫描工具的试用版中调用350C进行扫描。但是试用版在扫描的图像上留下水印,这对我来说毫无用处。此外,完整版价格昂贵,需要每年订阅。而且,我只是在尝试寻找一种使SimpleScan正常工作的方法时遇到了它-甚至实际上是任何开源扫描软件。
关键是VueScan可以正常工作。(但是这样做会使扫描仪无法使用其他工具)。它证明了扫描仪可以与Ubuntu上的开源工具一起使用。问题是如何。
# Brother scanners
代码段添加到后/lib/udev/rules.d/60-libsane.rules
,简单扫描仍无法识别该设备。在花了几个小时将我的头撞在墙上之后,我发现在“简单扫描”的“首选项”中,“扫描源”下拉菜单中有两个名称相似的条目;切换到第二个后,我起身扫描!不知道是否发生了类似的事情,但是我想我会把它放在这里……