無効な引数-アップグレード後にBrotherスキャナーが機能しない(brscan2ドライバー)


31

Ubuntu 13.10(Saucy)を最近アップグレードしました。

私のMFC-420CNを介したスキャンはUbuntuで機能し、Linux MintはOliviaとOnericを介してインストールされていました。しかし、これらからアップグレードすると、スキャンが失敗しました。saucyの新しいコピーをインストールして、それがアップグレードに関連するものではないことを確認しました。

ブラザーのウェブサイトは、すべてのbrscan1モデルがUbuntu 11.10の時点でusbスキャンをサポートしなくなったことを通知していますが、brscan2およびbrscan3モデルには適用されていないようです。さらに、少なくともbrscan4モデルが現在機能していることを示すと思われる他の投稿いくつか見つけました。ただし、brscan2(またはbrscan4以外の他のダイバー)とubuntu 13.10(実際には12.10以降)を使用しているスキャナーが現在機能していることを確認できませんでした。

相互参照/問題を他の人に役立てるために、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のインストール

  • dpkg -fフラグの使用を含む、brscan2のインストールに関する兄弟のWebサイトの修正

  • /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ビットドライバーに置き換えましたが、USBまたはネットワークモード用に32ビットドライバーをセットアップしたscanimageの結果は期待できませんでした。

コード:

# 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をインストールすると、シンプルスキャンを開いてスキャナーを見つけることができます。さらに、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です が、それは兄弟が正気ではなくドライバーを提供しているという事実に関連しているようです。

私はこの時点でかなり立ち往生している、どんな助けもありがたいです。


ただ、無視することができ正気-FIND-スキャナの結果を示しているようだ、このリンクを見つけた、と私は、無効な引数エラーに焦点を当てるべきである:linuxquestions.org/questions/slackware-14/...を
virtualxtc

参照してくださいこれを。additionalyあなたが追加することができますbrother-lpr-drivers-mfc9420cnbrother-cups-wrapper-mfc9420cn

@DuminduMahawela * -devパッケージは別として、これらすべての「スキャナードライバー」をインストールしました。
virtualxtc 14年

私は兄弟に助けを求めてメールを送りましたが、更新がある場合にこの質問を参照しました。ブラザーは私のチケットを認めましたが、それ以外に私が得たのは死んだ空気だけです。正気の互換性リストに基づいて別のプリンタースキャナーを購入しました。
virtualxtc 14

このページの「解決策」セクションが役立ちますか?bugs.launchpad.net/ubuntu/+source/xsane/+bug/478761
sabik

回答:


23

13.10に更新した後、スキャン時に同じエラーが発生しました。ここには2つの問題があります。

  1. エラーInvalid argumentは引数の問題ではありませんが、書き込みアクセスの問題です。
  2. もう1つの問題は、バスとdev番号がscanimageエラーで間違っていることです。

問題を見つけて修正する方法は?

兄弟のWebサイトから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 兄弟デバイスが見つかります(一度に1つの兄弟デバイスしかUSBに接続されていないと仮定します)

sed 's/://' | awk '{printf "/dev/bus/usb/%s/%s", $2,$4}' バスとデバイスの番号を見つけます

xargs -i -t sudo chmod 666 "{}" スキャナーに書き込み許可を追加します

上記の処理を行った理由に関する詳細情報を以下に示します

兄弟スキャナーがバスのどこにあるかを調べるには、を使用しますlsusb。これはscanimageの問題の1つです。バスは003で、デバイスはバス5ではなく002で、スキャンイメージごとにdev 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スキャナードライバーの場所に書き込むことができるように、ドライバーコードを更新する必要があります。


誰でもこの修正を確認できますか?幸いなことに、質問を投稿してから1か月後にこのスキャナーをデスクからノックし、新しい(SANE準拠の)スキャナーを購入する必要がありました。マーク/ダンさまざまな文法の問題のため、答えはまだ少し不明瞭です。投票を快適に感じられるように修正してください。
virtualxtc

1
この答えは、さまざまな開発者/バス番号からの出力として示されlsusbscanimage -Lさまざまな開発者/バス番号を示しています。/dev/bus/usb/...ファイルの権限を無効に変更してみました。OSにスキャナーの正しいUSBバス/開発番号を確認させる別の方法はありますか?
デビッドトーマス14

これはうまくいきました。回答に変更を加えて起動したxsane後、初めてプレビューを取得しようとしたときに、「スキャナーの起動に失敗しました」というエラーが表示されました。しかし、それを再試行すると動作します。これでスキャンできます!:)
jja 14年

2
それは私のためにそれを修正しませんでした
Natim

1
このソリューションはLubuntu 16.04とBrother DCP-7030で機能しました。ただし、再起動後、すべての権限がリセットされます。udevルールが必要なように見えますか?
ザビエル

3

ユーザーをlpグループに追加するだけです...

usermod -a -G lp username

このように、スキャナーの書き込み権限があります。

テスト済み:

  • 14.04 LTS 64ビット最新
  • ブラザーDCP-J315W
  • ブラザーサポートセンターからダウンロードしたlinux-brprinter-installer-2.0.0-1

/ dev / bus / usb / 001でのプリンター/スキャナーの許可は次のとおりです。

crw-rw-r-- 1 root lp

このため、ユーザー名をlpグループに追加するのがソリューションです。


「#」で示されているように、ルートとしてコマンドを実行してもエラーが発生するため、これは間違いなく上記のエラーの解決策ではありませんでした。
virtualxtc

1
support.brother.com/g/s/id/linux/en/…で提案されているように、ライブラリを/ usr / lib64から/ usr / libにコピー(またはln -sとリンク)しましたか?
ベレラ

AskUbuntuへようこそ-通常はdoc -1を行いますのでご注意ください。私の質問、特に「今までに試した」の部分に書かれている内容を読んだ場合、答えは 'はい'。今後、回答する前に質問全体をお読みください。
virtualxtc

2

VueScanと呼ばれるこのプログラムを試してみてください、私はMFC-420cnのドライバを探していたと私は、このウェブサイトに走った:「http://www.hamrick.com/」私はまだ、まだしなければならないので、私は(かかわらず、これをテストすることができていませんほこりを集めている私の古いプリンターへの電源ケーブルを見つけます。とにかく、これが役立つことを願っています。


感謝しますが、そのソフトウェアの価格でSANE準拠のスキャナーを購入できます!この答えは未検証であり、「より良いスキャナーを購入する」よりもほんの少しだけ良いので、質問は未解決のままにします。
virtualxtc 14年

1
私の(長年の)経験では、VueScanは優れています。おそらくほとんどのスキャナードライバーよりもはるかに優れています。その利点は、写真をスキャンしたり、スキャン品質を細かく制御したりする場合に最も顕著です。無料でダウンロードしてお試しいただけると思います。利点は、メーカーの厄介なプロプライエタリドライバーの制限に苦しむ必要がないことです。残念ながら、既に支払ったスキャナーを引き続き使用するには、第三者に支払う必要があります。VueScanは古いスキャナーと新しいスキャナーでうまく機能するため、多くの人々はコストが価値があると判断しました。
トミートラセル14

この問題のすべての修正(Googleの最初の数ページで確認できます)を試すのに数時間費やしましたが、これまでのところ有効なソリューションはVueScanだけです。Linuxを搭載したBrotherスキャナーは購入しません。
MRule

1

私は、同じ問題に遭遇し、そしてに従ってhttps://wiki.debianforum.de/Brother_Scannerプリンタ(xhci_hcdによって制御される)USB 3ポートに接続されている場合、「無効な引数」エラーが発生することができます。USB 2ポート(ehci_hcdで制御)に切り替えるとすぐに動作し始めました。


このエラーが発生しているコンピューターにはUSB 3ポートがありませんでした。
virtualxtc

0

Ubuntu 13.10 32ビットを使用しています

私はMFC-7820Nを使用しており、カーネルをアップグレードするたびに、すべての兄弟ドライバーを再インストールする必要があります。私が持っているものは次のとおりです:brmfc7840nlpr-2.0.2-1.i386、brscan2-0.2.5-1.i386、cupswrapperMFC7840N-2.0.2-1.i386

次に、ルール「ATTRS {idVendor} == "04f9"、ENV {libsane_matched} = "yes"」が/lib/udev/rules.d/40-libsane.rulesで変更または削除されていないことを再確認します。

結局、私はリブートします。

最後に、テストのための特別な手段として、兄弟プリンターに独自のUSBホストコントローラーを提供します。


brmfc7840nlpr-2.0.2-1.i386およびupswrapperMFC7840N-2.0.2-1.i386はプリンタードライバーであり、この質問とは無関係です。
virtualxtc 14

64ビット対32ビットの問題かもしれませんが、以前は64ビットで問題が発生したことはありませんでした。どのカーネルを実行していますか?誰かがこれが機能していることを確認できますか?
virtualxtc 14

1
また、最近64ビットマシンで13.10にアップグレードしました。ブラザーDCP-135Cスキャナー/プリンターが機能する前は、今では機能しません。また、brother-lpr-drivers-extraと競合するため、Brotherが提供する古いドライバーをインストールできません。brother-lpr-drivers-extraをアンインストールし、brotherが提供するドライバーをインストールしても、まだ動作しません。
ラミロ14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.