Tutoriel Linux

¿Escáner no detectado en Ubuntu? Diagnostique primero SANE

Débutant8 min de lecture

Conectas el escáner, abres el Escáner de documentos, pero el dispositivo no aparece. Antes de instalar un controlador encontrado al azar, es necesario localizar el corte: ¿Ubuntu ve el dispositivo, SANE lo reconoce, o la aplicación simplemente no recibe la lista de escáneres?

El diagnóstico a continuación sigue estas capas en el orden. Cada comando sirve para elegir el siguiente, tanto con un escáner USB como con un modelo de red en Ubuntu 22.04 o 24.04.

Escáner USB abierto y cable controlado frente a un terminal Linux durante un diagnóstico SANE en Ubuntu
El diagnóstico comienza separando la detección USB, SANE y la aplicación.

Separar el problema de hardware del problema SANE

Comienza con un escáner USB. El comando lsusb interroga directamente el bus USB. Permite verificar si el sistema ve un dispositivo a nivel de hardware. Si necesitas identificar más precisamente los dispositivos y los puertos USB, puedes consultar nuestra guía para listar los puertos USB en Linux.

lsusb

Una línea correspondiente al fabricante o al modelo del escáner indica que la conexión USB es visible para el núcleo. Si nada cambia cuando conectas el dispositivo, prueba otro puerto, retira un posible hub USB y controla el cable. En este punto, el Escáner de documentos y SANE todavía no están en causa.

A continuación, verifica la detección por la herramienta SANE:

sane-find-scanner

sane-find-scanner busca escáneres SCSI y USB así como sus archivos de dispositivo. Una detección aquí confirma que el dispositivo es accesible a nivel de hardware. Sin embargo, no garantiza la presencia de un backend SANE compatible. La documentación de Ubuntu sobre sane-find-scanner señala que un dispositivo puede ser encontrado incluso sin un backend utilizable.

La tercera verificación interroga la capa SANE que será utilizada por las aplicaciones:

scanimage -L
Resultado Lectura Acción a tomar
lsusb no ve nada El problema se sitúa antes de SANE: cable, puerto, alimentación o dispositivo USB. Corregir la conexión y relanzar los comandos.
lsusb y sane-find-scanner ven el dispositivo, pero scanimage -L sigue vacío El hardware responde, pero SANE probablemente no tiene el backend adecuado, o el acceso al dispositivo está bloqueado. Pasar al diagnóstico del backend y los permisos.
scanimage -L muestra un escáner SANE proporciona un dispositivo utilizable a las aplicaciones. Probar el backend con scanimage -T, luego abrir el Escáner de documentos.

Para un escáner de red, lsusb no ofrece nada. El escáner debe estar encendido, conectado a la misma red local que la computadora y accesible sin aislamiento entre clientes Wi-Fi.

Instalar y verificar las herramientas de Ubuntu

En una instalación mínima, los comandos de diagnóstico o la aplicación pueden faltar. Instala los paquetes de Ubuntu previstos para esta capa:

sudo apt update
sudo apt install sane-utils simple-scan

sane-utils proporciona principalmente scanimage y sane-find-scanner. simple-scan instala el Escáner de documentos. La instalación de estos paquetes no proporciona un controlador universal para todos los escáneres. Prepara la herramienta de diagnóstico, pero la compatibilidad depende luego del backend SANE y del modelo utilizado.

Controla las versiones de paquetes ofrecidas por los repositorios activos:

apt policy sane-utils simple-scan

La salida muestra las versiones Installed y Candidate. Una versión candidata sin versión instalada significa que el paquete está disponible pero ausente. Una candidata vacía indica más bien un problema de repositorios o de configuración APT. En este caso, revisa las fuentes de Ubuntu antes de buscar un paquete de terceros.

Si sane-utils está instalado, relanza scanimage -L. Si el dispositivo aparece, la base de software está en su lugar. Entonces podrás concentrarte en el Escáner de documentos en lugar de modificar innecesariamente el sistema.

Cuando sane-find-scanner ve el dispositivo pero scanimage no

Esta diferencia indica que la detección USB funciona, pero que SANE aún no sabe usar el escáner. Comienza por probar directamente el backend:

scanimage -T

scanimage -T realiza una prueba del backend SANE. Si la prueba tiene éxito, la capa SANE responde correctamente. Si scanimage -L sigue vacío a pesar de ello, la lista devuelta por el backend puede estar incompleta, especialmente para los dispositivos de red. La página de manual de scanimage describe la diferencia entre la lista de dispositivos y la prueba del backend.

Puedes aumentar temporalmente los mensajes del cargador de bibliotecas SANE:

SANE_DEBUG_DLL=3 scanimage -L

El comando muestra entonces información adicional sobre la carga de los backends. Busca un error de biblioteca ausente, de archivo de configuración inaccesible o de backend ignorado. Este nivel de registro sirve para el diagnóstico puntual. No corrige nada y no debe permanecer definido permanentemente en tu sesión.

Si el registro muestra un backend ausente, primero identifica el modelo exacto y su compatibilidad con SANE. Algunos fabricantes distribuyen un paquete oficial, pero es necesario verificar su procedencia, su versión de Ubuntu y su arquitectura antes de cualquier instalación. No agregues un repositorio desconocido simplemente porque un resultado de búsqueda ofrece un archivo DEB.

Si el backend está cargado pero el dispositivo sigue ausente, pasa a los permisos. Un dispositivo visible por lsusb puede seguir siendo inutilizable por tu sesión de usuario.

Corregir una permiso USB correctamente

Observa los archivos de dispositivo USB sin modificar sus derechos:

ls -l /dev/bus/usb/*/*

Las entradas mostradas corresponden a los dispositivos del bus. El propietario, el grupo y los bits de permiso permiten ver si tu sesión puede acceder a ellos. Un error de permiso en scanimage o en el registro SANE confirma esta pista, pero la ausencia del escáner en la lista no es suficiente por sí sola.

Desconecta el escáner, espera unos segundos y luego conéctalo directamente a la computadora. Luego relanza:

lsusb
sane-find-scanner
scanimage -L

Esta reconexión fuerza la recreación del archivo en /dev/bus/usb y permite verificar la regla udev aplicada al dispositivo. Si el acceso solo funciona después de una reconexión o solo en una sesión particular, revisa tu identidad y los grupos realmente asociados a la sesión:

id
groups

Una modificación de grupo solo se toma en cuenta después de una nueva apertura de sesión, pero agregar a ciegas al usuario a un grupo llamado scanner no es un método confiable. Este grupo puede no existir, no ser utilizado por la regla del dispositivo o no corresponder al backend. Nunca otorgues derechos globales con chmod 666 a un dispositivo USB.

Para ir más allá, compara las reglas udev proporcionadas por Ubuntu o por el fabricante con los permisos realmente presentes. Los principios de control de las permisos de Linux se aplican aquí: corrige la regla seleccionada, luego abre una nueva sesión y prueba el acceso con tu usuario normal.

Escáner de red: SANE, AirScan y descubrimiento mDNS

Un escáner de red puede funcionar sin aparecer en lsusb. Ubuntu debe descubrir un servicio eSCL/AirScan o WSD en la red local. Instala el backend AirScan y el servicio Avahi:

sudo apt update
sudo apt install sane-airscan avahi-daemon

Verifica que el servicio de descubrimiento mDNS esté activo:

systemctl is-active avahi-daemon

La respuesta esperada es active. Una respuesta inactive, failed o la ausencia del servicio indica un paso a corregir antes de probar la detección en red.

A continuación, interroga los dispositivos AirScan detectables:

airscan-discover

El comando puede mostrar los servicios encontrados con su tipo y su dirección. Una lista vacía no prueba que el escáner sea incompatible. Puede señalar una red de invitados, un aislamiento Wi-Fi, un cortafuegos, Avahi inactivo o un escáner ubicado en otro VLAN.

Verifica el perfil de red utilizado por Ubuntu y asegúrate de que la computadora no esté conectada a una red de invitados:

nmcli connection show --active
nmcli device status

Nuestra guía sobre la modificación de un perfil de red con nmcli ayuda a verificar la conexión activa. El escáner y el puesto deben poder comunicarse en la misma LAN. El descubrimiento mDNS utiliza anuncios de red que no siempre cruzan los VLAN o ciertas configuraciones de punto de acceso.

Después de esta verificación, relanza:

scanimage -L

Si el escáner de red aparece, SANE ha encontrado el backend y el servicio de descubrimiento. El proyecto sane-airscan admite escáneres de red eSCL/AirScan y WSD, con descubrimiento automático o configuración manual. Si el descubrimiento automático falla mientras que la dirección IP del escáner es conocida, consulta su documentación para la configuración manual del backend, sin inventar un nombre de dispositivo o una URL.

Validar en el Escáner de documentos

Cuando scanimage -L lista el escáner, lanza la aplicación:

simple-scan

La lista visible en el Escáner de documentos debe corresponder al dispositivo proporcionado por SANE. Inicia una exploración simple y verifica que la vista previa se cargue, que el documento sea legible y que el registro funcione en el formato elegido.

  • USB ausente en lsusb: corrige primero el cable, el puerto o la alimentación.
  • USB visible, pero ausente de scanimage -L: controla el backend, los registros SANE y los permisos.
  • Escáner de red ausente de airscan-discover: verifica Avahi, la misma LAN y el aislamiento Wi-Fi.
  • Escáner listado, pero aplicación en error: prueba scanimage -T, luego relanza el Escáner de documentos en tu sesión de usuario.

La validación se completa cuando scanimage -L lista el escáner y simple-scan realiza una exploración completa sin privilegios de administrador. Lanza entonces un último escaneo con el documento realmente utilizado y verifica el archivo guardado.