Argomento non valido - Scanner Brother non funzionante dopo l'aggiornamento (driver brscan2)


31

Di recente ho aggiornato Ubuntu 13.10 (Saucy).

La scansione tramite il mio MFC-420CN aveva funzionato nelle installazioni di Ubuntu e Linux Mint anche se Olivia e Oneric. Tuttavia, una volta aggiornato da questi, la scansione si è interrotta. Ho installato una nuova copia di impertinente per verificare che non fosse solo qualcosa a che fare con l'aggiornamento.

Il sito Web di Brother ha notato che tutti i modelli brscan1 non supportano più la scansione USB a partire da Ubuntu 11.10, ma non sembra applicarsi ai modelli brscan2 e brscan3. Inoltre ho trovato molti altri post che sembrano indicare che almeno i modelli brscan4 stanno funzionando. Tuttavia non sono stato in grado di verificare gli scanner che utilizzano brscan2 (o altri subacquei diversi da brscan4) e Ubuntu 13.10 (in realtà 12.10 e versioni successive) funzionano attualmente.

Per riferimenti incrociati / per aiutare gli altri a risolvere il problema, l'elenco completo degli scanner brscan2 è il seguente:

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-680C MFC-7225N MFC-7420 MFC-7820N MFC-820CW MFC-845CW MFC-8460N MFC-8660DN MFC-8670DN MFC-885CW MFC-8860DN MFC-8870DW MFC-9420CN

Domande / problemi precedenti simili (ma per l'hardware del driver brscan3):


Finora ho provato:

  • Installazione di sane-utils

  • sul sito Web di Brother, le iniezioni relative all'installazione di brscan2, incluso l'utilizzo del flag dpkg -f

  • modificando /lib/udev/rules.d/40-libsane.rules da includere

codice:

# Brother scanners

ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"
  • copiare i file da lib a lib64:

codice:

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 .
  • installare ia32-libs e ripetere l'installazione di sane-utils
  • rimuovere il driver brscan2 a 64 bit e sostituirlo con quello a 32 bit, ma i risultati di scanimage con il driver a 32 bit impostato per la modalità usb o di rete erano meno promettenti:

codice:

# 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).
  • dei driver Windows a 32 bit con WINE eumlating Win2000 o XP - si completa quasi nel 2000.

Debug dei driver a 64 bit:

Con brscan2 installato posso aprire simple-scan e trovare lo scanner; inoltre l'output di scanimage indica che è tutto a posto:

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

Ma la scansione (anche come utente root) continua a non funzionare.

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

xsane produce un errore simile:

 Failed to start scanner: Invalid argument

sane-find-scanner produce un errore di pipe mostrato qui: http://pastebin.com/tTNMyD1m ma ciò sembra correlato al fatto che il fratello sta fornendo il driver, non sano di mente.

Sono piuttosto bloccato a questo punto, qualsiasi aiuto sarebbe apprezzato.


Ho appena trovato questo link che sembra indicare che i risultati di sane-find-scanner possono essere ignorati, e dovrei solo concentrarmi sull'errore argomento non valido: linuxquestions.org/questions/slackware-14/…
virtualxtc

Vedere questo . inoltre è possibile aggiungere brother-lpr-drivers-mfc9420cnebrother-cups-wrapper-mfc9420cn

@DuminduMahawela oltre ai pacchetti * -dev avevo installato tutti quei "driver dello scanner".
virtualxtc

Ho inviato un'email a Brother per assistenza e ho fatto riferimento a questa domanda nel caso in cui ci siano aggiornamenti. Il fratello ha riconosciuto il mio biglietto, ma a parte quello che ho ottenuto è aria morta. Ho acquistato un altro stampante-scanner in base all'elenco di compatibilità sana .
virtualxtc,

La sezione "SOLUZIONE" di questa pagina può essere d'aiuto? bugs.launchpad.net/ubuntu/+source/xsane/+bug/478761
sabik,

Risposte:


23

Dopo l'aggiornamento alla 13.10 ho ricevuto lo stesso errore durante la scansione. Ci sono due problemi qui.

  1. L'errore Argomento non valido non è un problema di argomento, ma è un problema di accesso in scrittura.
  2. L'altro problema è che il numero di bus e dev sono errati dall'errore scanimage.

Come trovare e risolvere il problema?

Installa i driver brscan4 dal sito Web Brother

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

Controlla se funziona

sudo brsaneconfig4 -d

Verificare se lo scanner è installato (lo scanner deve essere acceso). Ed esegui come utente NON 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

o

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

È possibile utilizzare il seguente script per aggiornare le autorizzazioni per lo scanner.

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

lsusb elenca i dispositivi USB

grep -i brother troverà il dispositivo Brother (suppongo di aver fatto che hai un solo dispositivo Brother collegato alla USB)

sed 's/://' | awk '{printf "/dev/bus/usb/%s/%s", $2,$4}' troverà i numeri di bus e dispositivo

xargs -i -t sudo chmod 666 "{}" aggiungerà il permesso di scrittura allo scanner

Ecco informazioni più dettagliate sul perché abbiamo fatto ciò che abbiamo fatto sopra

Per scoprire dove si trova lo scanner Brother sull'autobus, utilizzare lsusb. Questo è uno dei problemi di scanimage. Il bus è 003 e il dispositivo è 002 e non il bus 5, dev 1 come da scanimage

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

Per risolvere il problema, è necessario utilizzare il percorso in base alla posizione dello scanner Brother nel lsusbcomando. Nel mio caso è stato bus 003e device 002. Se si scollega il cavo USB dallo scanner e lo si ricollega al dispositivo, si otterrà un nuovo numero e / o bus. (Il numero torna a 2 quando si riavvia il PC)

Esempi:

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

o semplicemente:

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

Scanimage è necessario correggere il messaggio quando non è possibile accedere allo scanner per avere il bus e il numero dev corretti e inoltre dire all'utente che il problema è un problema di accesso in scrittura.

Brotherdeve aggiornare il codice del driver in modo che l'utente globale possa scrivere sullo scanner, ad esempio chmod 666nella posizione del driver dello scanner


Qualcuno può confermare questa correzione? Per fortuna, ho buttato giù questo scanner dalla mia scrivania un mese dopo aver pubblicato la domanda e ho dovuto acquistare un nuovo scanner (conforme a SANE). Segna / Dan la risposta è ancora un po 'poco chiara a causa di vari problemi di grammatica, per favore risolvili in modo che io possa sentirmi a mio agio nel voto.
virtualxtc

1
Questa risposta sembra davvero promettente in quanto l'uscita da lsusbe scanimage -Lmostra numeri di dev / bus diversi. Ho provato a modificare le autorizzazioni sul /dev/bus/usb/...file senza alcun risultato. C'è un altro modo per far sì che il sistema operativo guardi il numero bus / dev USB corretto per lo scanner?
David Thomas,

Questo ha funzionato. Dopo aver apportato le modifiche alla risposta e l'avvio xsane, la prima volta che ho provato ad acquisire un'anteprima mi avrebbe dato un errore "Impossibile avviare lo scanner". Ma riprovare avrebbe funzionato. Ora posso scansionare! :)
jja,

2
Non mi ha risolto il problema
Natim

1
Questa soluzione ha funzionato per me con Lubuntu 16.04 e Brother DCP-7030. Tuttavia, dopo il riavvio, tutte le autorizzazioni vengono ripristinate. Sembra che sia necessaria una regola udev?
Xavier13

3

Aggiungi il tuo utente al gruppo lp ...

usermod -a -G lp username

In questo modo avrai i permessi di scrittura per il tuo scanner.

Testato con:

  • 14.04 LTS 64 bit aggiornato
  • Brother DCP-J315W
  • linux-brprinter-installer-2.0.0-1 scaricato dal Brother Support Center

Le autorizzazioni per la stampante / scanner su / dev / bus / usb / 001 sono:

crw-rw-r-- 1 root lp

È per questo che aggiungere il tuo nome utente al gruppo lp è una soluzione.


Come indicato da '#', stavo eseguendo il comando come root e continuavo a ricevere l'errore, quindi questa non era sicuramente la soluzione all'errore sopra.
virtualxtc,

1
Hai copiato (o collegato con ln -s) le librerie da / usr / lib64 a / usr / lib come suggerito su support.brother.com/g/s/id/linux/en/… ?
Bellera,

Benvenuto in AskUbuntu - tieni presente che normalmente ti farei da doc -1 per questo: se avessi preso leggi la mia domanda, in particolare ciò che è scritto sotto la parte "finora ho provato", sapresti che la risposta è ' sì'. In futuro, leggi l'intera domanda prima di rispondere.
virtualxtc

2

Prova questo programma chiamato VueScan, stavo cercando il driver mfc-420cn e mi sono imbattuto in questo sito Web: " http://www.hamrick.com/ " Tuttavia non sono stato in grado di testarlo (perché devo ancora trovare il cavo di alimentazione per la mia vecchia stampante che raccoglie polvere.), ma ha detto che avrebbe supportato una vasta gamma di stampanti, quindi ho pensato di pubblicarlo. Spero comunque che questo aiuti.


Grazie, ma per il prezzo di quel software posso acquistare uno scanner compatibile SANE! Poiché questa risposta non è verificata e solo leggermente migliore di "acquista uno scanner migliore", lascerò aperta la domanda.
virtualxtc

1
Nella mia (molto tempo fa) esperienza, VueScan è eccellente; probabilmente di gran lunga superiore alla maggior parte dei driver dello scanner. I suoi vantaggi sono più evidenti per la scansione di fotografie e / o per un controllo accurato della qualità di scansione. Credo che tu possa scaricare e provarlo gratuitamente. Il vantaggio è che non dovrai mai più soffrire delle limitazioni del cattivo driver proprietario del produttore. Sfortunatamente devi pagare una terza parte per continuare a utilizzare lo scanner per cui hai già pagato. Molte persone hanno deciso che il costo è utile, perché VueScan funziona bene su scanner vecchi e nuovi.
Tommy Trussell,

Ho trascorso diverse ore a provare ogni soluzione per questo problema (che può essere trovato nelle prime pagine di Google) e VueScan è l'unica soluzione che ha funzionato finora. Non comprerei uno scanner Brother con Linux.
MRule

1

Ho riscontrato lo stesso problema e, secondo https://wiki.debianforum.de/Brother_Scanner, l'errore "Argomento non valido" può essere causato se la stampante è collegata a una porta USB 3 (controllata da xhci_hcd). Ha iniziato a funzionare per me non appena sono passato a una porta USB 2 (controllata da ehci_hcd).


Non avevo porte USB 3 sul computer su cui avevo riscontrato questo errore.
virtualxtc,

0

Sto usando Ubuntu 13.10 a 32 bit

Uso MFC-7820N e ogni volta che aggiorno il kernel devo reinstallare tutti i driver Brother. Quelli che ho sono: brmfc7840nlpr-2.0.2-1.i386, brscan2-0.2.5-1.i386, cupswrapperMFC7840N-2.0.2-1.i386

Quindi ricontrollo che la regola "ATTRS {idVendor} ==" 04f9 ", ENV {libsane_matched} =" yes "" non è stata modificata o eliminata in /lib/udev/rules.d/40-libsane.rules

Dopo tutto ciò che riavvio.

Infine, darò alla stampante Brother il proprio controller host USB, proprio come misura aggiuntiva per i test.


brmfc7840nlpr-2.0.2-1.i386 e upswrapperMFC7840N-2.0.2-1.i386 sono driver di stampa e non sono rilevanti per questa domanda.
virtualxtc

Potrebbe essere una cosa a 64 bit contro 32 bit, tuttavia, non ho mai avuto problemi con 64 bit prima. Quale kernel stai eseguendo? Qualcun altro può verificare di avere questo funzionamento?
virtualxtc

1
Recentemente ho anche aggiornato a 13.10 su una macchina a 64 bit. Prima che lo scanner / stampante Brother DCP-135C funzionasse, ora non funziona. Inoltre, non riesco a installare i vecchi driver forniti da Brother perché sono in conflitto con brother-lpr-drivers-extra. Se disinstallo brother-lpr-drivers-extra e installo i driver forniti da Brother, non funziona ancora.
Ramiro,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.