Escaners en Linux




 1.- Configurar el Kernel.

El primer paso que debemos llevar a cabo es compilar el Kernel para dar soporte al dispositivo que utiliza nuestro escaner.
En caso de que no sepas como configurar y compilar el Kernel, te recomiendo que leas el documento Configurar y Compilar el Kernel de esta misma web.

# cd /usr/src/linux

# make menuconfig


  1.1.- Escaners paralelos.

Parallel port support
<M> Parallel port support
<M>   PC-style hardware
.
.
.
[*]     Use FIFO/DMA if available (EXPERIMENTAL)
.
.
.

Character devices
.
.
.
<M> Support for user-space parallel port device drivers
.
.
.

Cómo todo lo añadido lo hemos hecho en forma de módulos, no necesitamos recompilar la imagen del kernel.

# make dep && make clean && make modules && make modules_install

Los módulos que hemos compilado son, parport.o, parport_pc.o y ppdev.o.

# modprobe parport && modprobe parport_pc && modprobe ppdev

Recordad, si lo deseáis, auto-cargar estos módulos al inicio.


  1.2.- Escaners USB.

USB support
.
.
.
<M> Support for USB
.
[*]   Preliminary USB device filesystem .
.
< >   EHCI HCD (USB 2.0) support (EXPERIMENTAL)
< >   UHCI (Intel PIIX4, VIA, ...) support
< >   UHCI Alternate Driver (JE) support
< >   OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support
.
.
.
<M>   USB Scanner support
.
.
.

Como podéis observar, no hemos seleccionado ningún controlador USB, esto es porque cada individuo ha de elegir el que le corresponda, para saber cual debemos elegir basta con lo siguiente.

# cat /proc/pci | grep USB

Esto nos dará como resultado:

USB Controller: CHIPSET UTILIZADO

# make dep && make clean && make modules && make modules_install

Los módulos compilados son, usbcore.o, scanner.o y el controlador que hayáis elegido, por ejemplo usb-uhci.

# modprobe usb-uhci && modprobe usbcore && modprobe scanner.o

Finalmente añadimos la siguiente linea al fichero /etc/fstab.
/etc/fstab

.
.
.
none      /proc/bus/usb      usbdevfs      auto,user
.
.
.


  1.3.- Escaners SCSI.

SCSI support
.
.
.
<M> SCSI generic support
.
.
.
SCSI low-level drivers --->

En la sub-sección SCSI low-level drivers hay una lista con todas las controladoras SCSI soportada, elegid la vuestra es preferible que la integréis en el kernel.

# make dep && make clean && make bzImage && make modules && make modules_install

Configurad el Grub o el LILO con la nueva imagen y reiniciad
No olvidéis cargar el módulo sg.o al inicio.

 2.- Buscar el driver para nuestro escaner.

Nosotros usaremos SANE, ya que es el que más escaners soporta, para comprobar que nuestro escaner está soportado por sane, consultad la lista de dispositivos soportados.
En caso de que el escaner no esté soportado siempre podemos buscar drivers compatibles "a la desesperada" antes de tomar medidas drásticas.
Veamos a ver si está el nuestro, un HP 3200C paralelo.

Model Interface Status Comment Backend Manpage
Scanjet 3200C Parport (EPP) beta works (relabelled 1220P and 2000P) umax_pp
(v1)
sane-umax_pp


 3.- Sane.

   3.1.- Instalar Sane.

Puesto que nuestro escaner está en la lista instalamos el sane.

Si usamos Gentoo:

# emerge sane-backends
En Debian:

# apt-get install sane

En distribuciones que usen rpm:

# rpm -i sane-VERSION.rpm

* Nota: Sane depende de jpeg y libieee1284.


   3.2.- Configurar sane.

En la lista de dispositivos soportados por sane, pudimos ver que a nuestro escaner le correspondía un driver, basta con añadir el nombre de nuestro driver al fichero /etc/sane.d/dll.conf.
En nuestro caso:
# echo umax_pp >> /etc/sane.d/dll.conf

Finalmente en el fichero /etc/sane.d/saned.conf incluid las IP's o hosts de las máquinas a las que queráis darle acceso a utilizar el escaner, en nuestro caso sólo permitiremos al ordenador donde está conectado el escaner.

# echo 192.168.0.3 >> /etc/sane.d/saned.conf

No olvidéis echar un vistazo al fichero de configuración de vuestro driver, ya que en caso de que tengáis un escaner paralelo, debéis especificar el puerto, normalmente /dev/parport0.


   3.3.- Cargar sane como servicio.

Para cargar el servicio sane, usaremos Xinetd.
La configuración de xinetd para el servicio sane es tan facil como esto:

# vim /etc/xinetd.conf
/etc/xinetd.conf
defaults
{
     only_from = localhost
     instances = 60
     log_type = SYSLOG authpriv info
     log_on_success = HOST PID
     log_on_failure = HOST
     cps = 25 30
}

includedir /etc/xinetd.d
.


# vim /etc/xinetd.d/sane

/etc/xinetd.d/sane
service sane
{
     port = 6566
     socket_type = stream
     wait = no
     user = saned
     group = saned
     server = /usr/sbin/saned
}


   4.- Escanear.

Ahora probaremos si funciona, para ello instalaremos el XSane.
En Gentoo:

# emerge xsane

En Debian:

# apt-get install xsane

En distribuciones que utilicen rpm:

# rpm -i xsane-VERSION

* Nota: XSane depende de sane y gtk.

Si usáis Gimp, al iniciarlo cargará el plug-in del XSane, de este modo tras escanear algo la imagen la podremos tratar directamente con él.
Iniciamos el Gimp, -> Fich. -> Adquirir -> XSane: Ventana de diálogo de dispositivo.
Nos saldrá una ventana con el nombre XSane, en la que pondrá "Escaneando dispositivos". Al cabo de unos segundos nuestro escaner se activará y saldrá el XSane.
Listo para escanear.



By zayer (Federico Moro del Álamo).
Frikis.org
e-mail address: zayer@frikis.org.


frikis.org
http://www.frikis.org/staticpages/index.php/escaners