SANE (Español)
zh-CN:Sane Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary end Sane proporciona una biblioteca y una herramienta en línea de órdenes para utilizar los escáneres bajo GNU/Linux. Aquí se puede comprobar si sane es compatible con su escáner.
Contents
Instalación
sane
está disponible en los repositorios [extra]
:
# pacman -S sane
Configuración
Ahora puede comprobar si sane reconoce el escáner:
$ scanimage -L
Si esto no funciona, compruebe que el escáner está conectado al ordenador. También podría ser necesario tener que desconectar/conectar el escáner para que la regla /etc/udev/rules.d/sane.rules
reconozca su escáner.
Ahora puede ver si funciona realmente:
$ scanimage --format=tiff > test.tiff
Para hardware HP
Para el hardware de HP es posible que tenga que instalar hplip desde los repositorios oficiales y/o hpojAUR desde AUR.
- No se olvide descomentar
hpaio
en el archivo/etc/sane.d/dll.conf
. - Ejecutar
hp-setup
, como root, puede ayudarle a agregar el dispositivo. -
hp-plugin
es el 'Plugin HPLIP para Descargar e Instalar Utility'. -
hp-scan
es el 'Utilidad HPLIP de Escaneado'.
Para impresoras Hewlett-Packard OfficeJet, PSC, LaserJet, y PhotoSmart y periféricos multifunción, ejecute ptal-init setup
como usuario root y siga las instrucciones. A continuación ejecute el demonio ptal-init start.
Para hardware Brother
Con el fin de instalar un Escáner Brother o una Impresora/Escáner Combo se necesita el controlador adecuado (que se puede encontrar en AUR). Solo hay cuatro controladores a elegir (brscan1-4). Con el fin de encontrar el más adecuado debe buscar su modelo en la página brother linux scanner.
Después de instalar el controlador necesita ejecutar:
# /usr/local/Brother/sane/setupSaneScan1 -i
para que los controladores/escáner sean reconocidos por sane.
Para escáneres de red, Brother ofrece una herramienta de configuración:
# brsaneconfig2 -a name=<ScannerName> model=<ScannerModel> ip=<ScannerIP>
Ejemplo:
# brsaneconfig2 -a name=SCANNER_DCP770CW model=DCP-770CW ip=192.168.0.110
Para hardware Epson
Para instalar escáneres epson via Wi-Fi y/o red, puede usar «Image Scan para Linux».
Instale iscanAUR y iscan-plugin-networkAUR desde AUR, actualizando /etc/sane.d/epkowa.conf
con la adición de la línea:
net {IP_OF_SCANNER}
Para hardware Samsung
En algunas impresoras Samsung MFP puede que tenga que modificar el archivo /etc/sane.d/xerox_mfp.conf
.
Ejemplo de entrada:
#Samsung SCX-3200 usb 0x04e8 0x3441
Cambie el modelo de impresora según su caso. Puede obtener el código ipVendor y idProduct con lsusb
. Consulte este hilo.
Para escáneres Plustek
Algunos escáneres plustek (especialmente los Canoscan), requieren un directorio de bloqueo. Asegúrese de que el directorio /var/lock/sane existe, que los permisos son 660, y que es propiedad de <user>:scanner. Si los permisos del directorio son distintos, solo será capaz de utilizar el escáner como usuario root. Parece que (al menos en x86-64) algunos programas que utilizan libusb (sobretodo xsane y kooka) el grupo scanner también necesita permisos rw para acceder a /proc/bus/usb y poder funcionar con un usuario normal.
Firmware
Los firmware suelen tener el extensión .bin
.
En primer lugar, se necesita poner el firmware en algún lugar seguro, se recomienda ponerlo en el subdirectorio /usr/share/sane
.
Luego hay que decirle a sane cuál es el firmware:
- Busque el nombre del backend para el escáner en la lista de dispositivos compatibles con sane.
- Abra el archivo
/etc/sane.d/<nombre-del-backend>.conf
. - Asegúrese de que la entrada del firmware está descomentada y ponga en la fila de puntos la ruta donde se encuentra el archivo de firmware para su escáner. Asegúrese de que los miembros del grupo
scanner
pueden tener acceso al archivo/etc/sane.d/<nombre-del-backend>.conf
.
Si el backend de su escáner no es parte del paquete sane (como, por ejemplo, hpaio.conf que forma parte de hplip), es necesario comentar la entrada correspondiente en /etc/sane.d/dll.d/hplip.
Instalar un frontend
XSane proporciona una interfaz basada en GTK para Sane. Puede instalarlo con el paquete xsane, disponible en los repositorios oficiales.
Existen otras interfaces, que puede encontrarlas como sigue:
- Use
pacman -Ss
para buscar palabras clave como «sane» o «scanner». - Consulte la lista de frontends en la página web del proyecto sane.
Escanear en red
Compartir el escáner en una red
Puede compartir el escáner con otros hosts de la red que usan sane , xsane o Gimp con xsane habilitado. Para configurar el servidor, en primer lugar indique que los hosts de la red tienen permitido el acceso al escáner.
Modifique el archivo /etc/sane.d/saned.conf
según su caso, por ejemplo:
# requerido localhost # permitir subred local 192.168.0.0/24
Instale xinetd desde los repositorios oficiales.
A continuación, asegúrese que el archivo llamado /etc/xinetd.d/sane existe y ajuste la opción deshabilitada («disable») a no:
service sane-port { port = 6566 socket_type = stream wait = no user = root group = scanner server = /usr/sbin/saned disable = no }
Agregue la línea siguiente a /etc/services:
sane-port 6566/tcp
Inicie xinetd.
Ahora el escáner puede ser utilizado por otras estaciones de trabajo, a través de su red de área local.
Para iniciar xinetd en el arranque, véase Daemons.
Acceder al escáner desde una Workstation remota
Puede acceder al escáner de red habilitada desde una estación de trabajo remota de Arch Linux.
Para configurar la estación de trabajo, comience instalando xsane:
# pacman -S xsane
A continuación, especifique el nombre del servidor host o la dirección IP en el archivo /etc/sane.d/net.conf:
# dirección IP estática 192.168.0.1 # o nombre de host stratus
Ahora pruebe la conexión de su estación de trabajo, a partir de un inicio de sesión de usuario no root:
$ xsane
o
$ scanimage -L
Después de un breve tiempo, xsane ha debido encontrar el escáner remoto y le presentará las ventanas habituales, listos para el escaneado en red.
Para una impresora HP todo-en-uno (impresora/escáner/fax) la red necesitará configurarla a través de:
$ hp-setup <ip de la impresora>
Solución de problemas
Invalid argument
Si se recibe el mensaje de error «Invalid argument» con xsane u otro front-end de sane, podría ser causado por una de las siguientes razones:
Falta el archivo firmware
No existe el archivo de firmware proveido para el escáner utilizado (vea más arriba).
Permisos de archivos erróneos para el firmware
Los permisos para el archivo de firmware utilizado son erróneos. Corríjalo utilizando:
# chown root:scanner /usr/share/sane/SCANNER_MODEL/FIRMWARE_FILE # chmod ug+r /usr/share/sane/SCANNER_MODEL/FIRMWARE_FILE
Múltiples backends reclamando el escáner
Puede suceder que múltiples backends apoyen (o pretendan apoyar) al escáner, y sane elija uno que, a la postre, no le proporciona soporte (en ese caso, el escáner no se mostrará al escribir scanimage -L). Esto ha sido reportado sobre todo con escáneres Epson y los backends epson2
resp. epson
. En este supuesto, la solución es comentar el backend no deseado en el archivo /etc/sane.d/dll.conf
. En el caso de Epson, sería cambiar:
epson2 #epson
a
#epson2 epson
Inicio lento
Si se encuentra con problemas de inicio lento (por ejemplo, xsane o scanimage -L tarda mucho en encontrar el escáner) es posible que exista más de un controlador disponible.
Eche un vistazo al archivo /etc/sane.d/dll.conf y pruebe comentando una de las entradas (por ejemplo, si tiene epson, epson2 y epkowa activados al mismo tiempo, trate de dejar solo epson o epkowa sin comentarios).
Problemas de permisos
Si se muestra el escáner solo cuando se hace sudo lsusb
, podría hacerlo funcionar como usuario normal añadiendo su usuario al grupo scanne
y/o lp
.
# gpasswd -a username scanner # gpasswd -a username lp
Esta solución se reportó para hacer funcionar una HP modelos todo-en-uno (por ejemplo, PSC 1315 y PSC 2355).
También se puede probar a cambiar el permiso del dispositivo usb, pero esto no es recomendable; una mejor solución es corregir las reglas udev para que el escáner sea reconocido.
Ejemplo:
En primer lugar, acceda como root y compruebe los dispositivos USB conectados con la orden 'lsusb'
#[root@archlinux ~]# lsusb #Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub #Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub #Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub #Bus 003 Device 003: ID 04d9:1603 Holtek Semiconductor, Inc. #Bus 003 Device 002: ID 04fc:0538 Sunplus Technology Co., Ltd #Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub #Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub #Bus 001 Device 006: ID 03f0:2504 Hewlett-Packard #Bus 001 Device 002: ID 046d:0802 Logitech, Inc. Webcam C200 #Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub #[root@archlinux ~]#
En nuestro ejemplo, vemos el escáner - 'Bus 001 Device 006: ID 03f0:2504 Hewlett-Packard'
Ahora, edite el archivo vi /lib/udev/rules.d/53-sane.rules y busque la primera parte del ID encontrado anteriormente y compruebe también si hay una línea que informe de la segunda parte del número (número del modelo), en este ejemplo 2504. Si no se encuentra, cambie y copie la línea de abajo y escriba el idVendor y el idProduct de su escáner, en este ejemplo sería:
# Hewlett-Packard ScanJet 4100C ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="2504", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"
Guarde el archivo, desconecte y conecte de nuevo el scanner, y los permisos del archivo deberían estar en orden.
Otro consejo sería agregar su dispositivo (escáner) en el archivo backend:
En el ejemplo seguido, añadimos la cadena 'usb 0x03f0 0x2504' en el archivo '/etc/sane.d/hp4200.conf'
Ahora el archivo se vería así:
#[root@archlinux ~]# cat /etc/sane.d/hp4200.conf # # Configuration file for the hp4200 backend # # # HP4200 #usb 0x03f0 0x0105 usb 0x03f0 0x2504 [root@archlinux ~]#
Problemas con DBus
Si obtiene el siguiente problema:
arguments to dbus_connection_send() were incorrect, assertion "connection != NULL" failed in file dbus-connection.c
Asegúrese de que el usuario dbus
se encuentra en los grupos lp
y scanner
:
$ groups dbus dbus # gpasswd -a dbus lp # gpasswd -a dbus scanner
(Tenga en cuenta que debe detener e iniciar dbus para que los cambios de grupo surtan efecto.)
Confirme que dbus está en marcha. Consulte Daemon (Español)#Obtener información del estado.
Si no lo está inícielo. Es posible que desee iniciarlos al tiempo de arrancar.
Parece ser insuficiente una sola sesión de dbus para que el escáner funcione.
Epson Perfection 1270
Para Epson Perfection 1270, también necesita un firmware llamado esfw3e.bin, que se puede obtener desde... (¿alguien puede dar una localización desde el que se pueda descargar?), o puede configurarlo usted mismo siguiendo las referencias de este artículo. Se consigue instalar el controlador en windows.
Modifique el archivo de configuración de backend snapscan:
vi /etc/sane.d/snapscan.conf
Cambie la ruta del firmware por la suya:
# Change to the fully qualified filename of your firmware file, if # firmware upload is needed by the scanner firmware /mnt/mydata/Backups/firmware/esfw3e.bin
Y añada la siguiente línea al final o cualquier otro lugar:
# Epson Perfection 1270 usb 0x04b8 0x0120
Puede obtener información de dicho código (usb 0x04b8 0x0120) con la orden «sane-find-scanner».
También agregue estas líneas en el archivo libsane.usermap para configurar sus privilegios, de este modo:
vi /etc/hotplug/usb/libsane.usermap #Epson Perfection 1270 libusbscanner 0x0003 0x04b8 0x0120 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
Vuelva a reconectar el escáner y ahora debería funcionar su Epson Perfection 1270.
NOTA: Se puede escanear la imagen si se definen los valores de X e Y, pero se obtiene el error: "scanimage: sane_start: Error during device I/O", si alguien tiene una solución, por favor, complete la sección.