Escáner disponible sólo con sudo

Escáner disponible sólo con sudo

Yo tengo unEpson ET-2756impresora. Puedo imprimir fácilmente con él, pero me tomó mucho tiempo entender por qué enDebian 10Mi computadora no pudo detectar la parte del escáner.

Finalmente, descubrí por qué: el scanimagecomando (y luego epsonscan2instalado específicamente para la impresora) solo puede detectar su escáner siempre que se ejecute con un archivo sudo.

Me pregunto por qué... Y sobre todo, me gustaría eliminar este requisito previo.
¿Cómo puedo eliminar la necesidad de sudorealizar un escaneo?


Experiencia sugerida por cas, a continuación:

# I look already registered as a scanner group member
cat /etc/group | grep scanner
scanner:x:117:saned,lebihan

# But this command fails:
scanimage --format=png >/tmp/test.png
scanimage: no SANE devices found

# While this one succeeds:
sudo scanimage --format=png >/tmp/test.png

Respuesta1

Añade tu usuario al scannergrupo. es decir

sudo addgroup yourusername scanner

La próxima vez que inicie sesión, su uid podrá utilizar el escáner.

Alternativamente, el libpam-systemdpaquete puede garantizar que se establezcan los permisos correctos cuando un usuario inicia sesión,siexisten udevreglas apropiadas para hacerlo. Sin embargo, es más fácil agregarse al grupo de escáneres.

Consulte lo siguiente en Debian Wiki:

Respuesta2

Muchos problemas de acceso a dispositivos se pueden resolver mediante cambios de membresía en el grupo.

Puede encontrar el nombre del dispositivo observando sudo journalctl --followmientras conecta su dispositivo. O ls -1 /dev >dev.before, conecte el dispositivo, espere 10 segundos, ls -1 /dev >dev.after;diff dev.{before,after}.O, vuelva a conectar y ls -lrt /dev | tail.

Específicamente, si ls -l muestra que los permisos del grupo (el segundo " rwx" triplete) son " rw" (por ejemplo, " -rw-rw----"), entonces, agregarse al grupo propietario del dispositivo otorgará rwacceso.

Así es cómo:

device="/dev/whatever"
sudo adduser $USER $(stat -c "%G" $device)

Esto le permite ser miembro del grupo que puede controlar rwel dispositivo,pero hay un paso más.

Para que todos sus procesos sean miembros del nuevo grupo, cierre sesión e inicie sesión. Las membresías grupales se configuran en el loginmomento.

Para crear un proceso único en el nuevo grupo (para probar, antes de cerrar sesión/iniciar sesión):

newgrp $(stat -c "%G" $device)  

o simplemente escriba el nombre del grupo. Ver man newgrp.

información relacionada