la scansione funziona solo con "sudo" (Ubuntu)


16

Quando provo a scansionare, usando simple-scan, l'interfaccia utente dice Failed to scan -- Unable to connect to scanner. Quando lo eseguo dalla riga di comando ottengo:

joel@home:/usr/bin$ simple-scan -d
** (simple-scan:6554): DEBUG: Starting Simple Scan 2.32.0.1, PID=6554
** (simple-scan:6554): DEBUG: Restoring window to 600x400 pixels
** (simple-scan:6554): DEBUG: sane_init () -> SANE_STATUS_GOOD
** (simple-scan:6554): DEBUG: SANE version 1.0.22
** (simple-scan:6554): DEBUG: Requesting redetection of scan devices
** (simple-scan:6554): DEBUG: Processing request
** (simple-scan:6554): DEBUG: Requesting scan at 300 dpi from device '(null)'
** (simple-scan:6554): DEBUG: scanner_scan ("(null)", 300, SCAN_SINGLE)
** (simple-scan:6554): DEBUG: sane_get_devices () -> SANE_STATUS_GOOD
** (simple-scan:6554): DEBUG: Device: name="brother2:bus4;dev1" vendor="Brother" model="MFC-210C" type="USB scanner"
** (simple-scan:6554): DEBUG: Processing request
** (simple-scan:6554): DEBUG: sane_open ("brother2:bus4;dev1") -> SANE_STATUS_IO_ERROR

** (simple-scan:6554): WARNING **: Unable to get open device: Error during device I/O

Cordiali saluti, ho già fatto:

joel@home:~$ sudo chmod a+rwx /dev/bus/usb
joel@home:~$ sudo chmod a+rwx /dev/bus/usb/*

Se corro sotto sudo:

joel@home:~$ sudo simple-scan

Funziona.

Come posso far funzionare simple-scan senza sudo?

Risposte:


7

È probabile che sanednon pensi che ti sia consentito collegarti ad esso. Per i dettagli, consultare la sezione Problemi relativi alle autorizzazioni della procedura di scansione di Ubuntu.


2
Sembra che tutti gli account utente non vengano aggiunti al gruppo scanner. Ho usato sudo adduser username scannere quindi è necessario disconnettersi e riconnettersi affinché l'appartenenza al gruppo venga notata dal sistema operativo.
KayEss,

Non ha funzionato per me. Mi sembra di ricordare che l'unico modo per farlo era usare sudo e una versione testuale non semplice scansione. Continuerò a cercare
Dennis il

Il suggerimento di KayEss ("sudo adduser username scanner") ha funzionato per la mia installazione di Raspbian.
smashuu,

5

Ho avuto un problema simile (Ubuntu 11.04 - Natty Narwhal): la scansione come root funziona bene, la scansione come utente - no go. scanimage -Le ha sane-find-scannertrovato e identificato correttamente lo scanner, anche quando eseguito come utente normale. `simple-scan -d sia come utente normale che root non ha mostrato nulla di utile in termini di diritto di gruppo mancante, file o driver mancanti.

Alla fine questo link ha funzionato per me .

La soluzione stava modificando questi file:

  • /lib/udev/rules.d/40-libsane.rules
  • /etc/udev/rules.d/55-libsane.rules

Non sono sicuro che sia necessario modificarli entrambi, ho applicato tutte le modifiche come descritto. Molto importante: riavvia dopo la modifica.


2

Ho risolto aggiungendo questa riga a /etc/rc.local(prima exit 0):

chmod -R a+w /dev/bus/usb

e modificando / creando i seguenti 2 file:

/etc/xinetd.d/saned:

service saned 
{
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = root
group = root
wait = no
disable = no
}

/etc/default/saned:

# Defaults for the saned initscript, from sane-utils

# Set to yes to start saned
RUN=yes

# Set to the user saned should run as
RUN_AS_USER=root

quindi riavviare.

Funziona, ma vorrei ancora un modo più sicuro di risolverlo.


2

Modifica quanto segue:

/etc/default/saned

E cambia il:

RUN_AS_USER=saned

per

RUN_AS_USER=root

Riavvia e prova di nuovo: dovrebbe funzionare.


2
Qualcosa mi dice che questa non è una soluzione desiderabile dal punto di vista della sicurezza.
Kazark,

2

sudo adduser YOURNONROOTUSERNAME lp

per assicurarsi che lo scanner appartenga al gruppo lp :

sudo sane-find-scanner

trovato scanner USB (fornitore = 0x04f9, prodotto = 0x02a5) su libusb: 001: 002

ls -al / dev / bus / usb / 001/002

crw-rw-r-- 1 root lp 189, 1 nov 24 12:43 / dev / bus / usb / 001/002


0

Ho avuto lo stesso identico problema e questo lavoro per me ed è così semplice. In realtà ho copiato dal sito Web Brother che ha risolto i miei problemi con lo scanner:

  1. Apri il /lib/udev/rules.d/40-libsane.rulesfile

  2. Aggiungi le seguenti due righe alla fine dell'elenco dei dispositivi. (Prima della riga # The following rule will disable ...):

    # Brother scanners

    ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"


0

Devi aggiungere il tuo nome utente al gruppo lp e quindi riavviare (o sudo ldconfig). Tutto dovrebbe funzionare.

Questo ha funzionato per me perché se corri lsusba prendere il numero del bus USB della tua stampante / scanner (il mio era 005) e ll /dev/bus/usb/005vedrai che root è il proprietario e lp è il gruppo, entrambi hanno i permessi di lettura e scrittura.


come si fa add your username to the lp group ?

0

Ho anche avuto lo stesso problema con il mio Epson EcoTank 2500. Sono entrato nel terminale e ho trovato l'ID del prodotto lsusb. Per EcoTank 2500 sono 1105.

Poi

Open /lib/udev/rules.d/40-libsane.rules file.

Ho quindi cercato quell'ID prodotto con gedit e non sono riuscito a trovarlo. Quindi ho aggiunto sul fondo (lasciando uno spazio e scrivendolo in MAIUSCOLO, quindi so che sono stato io a cambiarlo!)

# MY EPSON ECOTANK ET-2500

ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="1105", ENV{libsane_matched}="yes"

Poi ho fatto lo stesso in 40-iscan.rules (è nella stessa cartella) Finalmente ho riavviato. Ehi presto .... ahhhh! Il mio lavoro qui è finito.

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.