Servidor Debian multi-serveis
Servidor d'escaneig - SANE (Scanner Access Now Easy)
SANE "Scanner Access Now Easy" és una interfície de programació d'aplicacions (API) que proporciona un accés estandarditzat a qualsevol dispositiu escànner d'imatges de trama (escànner pla, digitalització de vídeo, ... ). L'API de SANE és de domini públic i la seua discussió i desenvolupament està oberta a tothom. El codi font actual està escrit per a UNIX (incloent GNU/Linux) i està disponible sota la Llicència GNU. SANE és una interfície d'escànner universal. El valor d'aquest tipus d'interfície universal és que permet escriure un sol conductor per dispositiu d'adquisició d'imatges en lloc d'un controlador per a cada dispositiu i l'aplicació.
SANE està dirigida principalment a un entorn UNIX, la norma han estat dissenyades per fer possible l'aplicació de l'API en pràcticament qualsevol maquinari o sistema operatiu. En concret, SANE ha de ser prou ampli per a donar cabuda a dispositius com ara escànners, càmeres digitals fixes i de vídeo, així com dispositius virtuals com filtres d'arxius d'imatge.
NOTA ... Al meu cas tinc un dispositiu d'HP All-in-One (Tot-en-Un). Per aconseguir que el nostre escànner estiga a punt necessitem hplip. (Aquesta acció és sols pels dispositius multi-funció (All-in-One) d'HP) ...~# apt-get install hplip (amb açò hauria de ser suficient, no obstat he de dir que jo he instal·lat alguns paquets més, per instal·lar totes les dependències feu clic AQUÌ).Una vegada més arrenquem el nostre servidor, ens identifiquem com a súper usuari (root) i comencem per instal·lar el paquet (sane) teclejant el següent ...
~# apt-get install sane sane-utils
Ara intentarem detectar els escànners connectats amb ...
~# sane-find-scanner
root@Multi-Serveis:~# sane-find-scanner# sane-find-scanner will now attempt to detect your scanner. If the# result is different from what you expected, first make sure your# scanner is powered up and properly connected to your computer.
# No SCSI scanners found. If you expected something different, make sure that# you have loaded a kernel SCSI driver for your SCSI adapter.
found USB scanner (vendor=0x03f0 [HP], product=0x2e12 [Officejet 4500 G510n-z]) at libusb:002:002 # Your USB scanner was (probably) detected. It may or may not be supported by # SANE. Try scanimage -L and read the backend's manpage.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports# can't be detected by this program.root@Multi-Serveis:~#
Com podeu veure al paràgraf en negreta de dalt em diu ...
trobat USB scanner (vendor=0x03f0 [HP], producte=0x2e12 [Officejet 4500 G510n-z]) en libusb:002:002
# El seu escàner USB va ser (probablement) detectat. Pot o no pot estar avalat per
# SANE. Intenta scanimage -L i llegir el manual del backend.
Doncs bé, per veure si l'escànner és avalat per sane executem...
~# scanimage -L
root@Multi-Serveis:~# scanimage -L
device `hpaio:/usb/Officejet_4500_G510n-z?serial=CN154H341605HR' is a Hewlett-Packard Officejet_4500_G510n-z all-in-one
root@Multi-Serveis:~#
doncs sembla que tot va bé de moment.
si volem per assegurar nos que funciona, podem provar l'escanejat amb ...
~# scanimage -d 'dispositiu' > imagen.tiff
al meu cas seria ...
~# scanimage -d 'hpaio:/usb/Officejet_4500_G510n-z?serial=CN154H341605HR' > imagen.tiff
Configuració
Esta configuració no és necessària si anem a utilitzar tan sol un fronted del tipus Web com és phpSane, però sí que és necessària per als frontend gràfics com són XSane o SaneTwain.
Configuració al Servidor
Hem d'instal·lar el servei xinetd o inetd, en aquest cas utilitzarem xinetd ...
xinetd és un substitut segur per inetd. El dimoni xinetd és un super servei Wrapped TCP que controla l'accés a un subconjunt de serveis de xarxa populars incloent FTP, IMAP i Telnet. També proporciona opcions de configuració específiques al servei per al control d'accés, registre millorat, redreçament i control d'utilització de recursos ...
~# apt-get install xinetd
Si no ho hem fet ja, instal·larem l'aplicació sane, les seues llibreries i utilitats amb (com que no escanejarem directament des del servidor, no serà necessari instal·lar els paquets xsane i xsane-common, al servidor) ...
~# apt-get install sane xsane
~# apt-get install libsane sane-utils xsane-common
S'ha de verificar que en l'arxiu /etc/sane.d/dll.conf estiga habilitada la línia corresponent al controlador per escanejar a través de la xarxa, és a dir "net"...
~# nano /etc/sane.d/dll.conf
# /etc/sane.d/dll.conf - Configuration file for the SANE dynamic backend loader## Backends can also be enabled by configuration snippets under# /etc/sane.d/dll.d directory -- packages providing backends should drop# a config file similar to dll.conf in this directory, named after the package.## The next line enables the network backend; comment it out if you don't need# to use a remote SANE scanner over the network - see sane-net(5) and saned(8)net
Després a l'arxiu /etc/default/saned, li indiquem que s'inicie el Saned i a més com a l'usuari saned...
~# nano /etc/default/saned
# Defaults for the saned initscript, from sane-utils# Set to yes to start sanedRUN=yes
# Set to the user saned should run asRUN_AS_USER=saned
A l'arxiu /etc/services verifiquem que la següent línia és habilitada o des-comentada ...
~# nano /etc/services
sane-port 6566/tcp sane saned # SANE network scanner daemon6566/tcp - és el port i protocol (assignat al nostre router), per on accedirem a l'escànner en la xarxa.
A continuació es configura el dimoni xinetd, per escoltar al port del servei sane i la càrrega de saned, quan reba una sol·licitud d'un client. Mitjançant l'edició de l'arxiu "/etc/xinetd.conf" i deixant-lo exactament així:
~# nano /etc/xinetd.conf
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/
defaults
{
# Please note that you need a log_type line to be able to use log_on_success
# and log_on_failure. The default is the following :
# log_type = SYSLOG daemon info
sane-port stream tcp nowait saned.saned /usr/sbin/saned saned
}
includedir /etc/xinetd.d
A continuació creem i editem l'arxiu de configuració del sane per a xinetd, amb el següent contingut (com que no es recomanable fer us de root, com a user i group utilitzaré saned) si ho prefereixen, poden crear, 'nano /etc/xinetd.d/sane-port' en lloc del 'nano /etc/xinetd.d/saned', amb el mateix contingut ...
~# nano /etc/xinetd.d/saned
# Creat pel roig, per establir la configuració del sane per al servei xinetd,service sane-port
{
port = 6566
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = saned
group = saned
wait = no
disable = no
}
Assegureu-vos que el servei saned s'està. Des del servidor d'escaneig executeu l'ordre següent:
~# service saned status
Afegim l'usuari saned al grup lp, l'usuari saned al grup root i l'usuari root al grup saned, amb ...
~# adduser saned lp
~# adduser saned root
~# adduser root saned
A continuació afegeixin en l'arxiu /etc/sane.d/saned.conf la llista d'adreces IP que tindran permès connectar-se al servei saned per escanejar en la xarxa ...
~# nano /etc/sane.d/saned.conf
Cerquem les línies ...
#scan-client.somedomain.firm#192.168.0.1#192.168.0.1/29#[2001:7a8:185e::42:12]#[2001:7a8:185e::42:12]/64I afegim les IPs dels clients, o com en aquest cas el rang d'IP, sense aquesta dada els altres ordinadors que tinguem a la xarxa no podran veure l'escànner ...
#scan-client.somedomain.firm#192.168.0.1#192.168.0.1/29#[2001:7a8:185e::42:12]#[2001:7a8:185e::42:12]/64192.168.1.0/24 #El /24 significa compartir amb tothom entre xxx.xxx.xxx.0 a 255.Una vegada fets els canvis sortim i guardem el fitxer de configuració prement la tecla (F2) i seguidament (S) i finalment (intro).
Ara només queda reiniciar el servei xinetd i el saned amb ...
~# /etc/init.d/xinetd restart
~# /etc/init.d/saned restart
~# service saned restart
Per sabre si tot anat bé, es pot comprovar el funcionament del Servei amb un telnet cap al port 6566 amb ...
~$ telnet localhost 6566
Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.Per sortir sol escriviu exit o quit i premeu la tecla de intro.
SANE - frontends (Aplicacions)
phpSANE
phpSANE és una interfície basada en la web per a SANE, escrit en HTML/PHP perquè pugui escanejar amb el teu navegador web. També és compatible amb OCR.
Requisits
* SANE* netpbm* Apache web-server with PHP-support* gocr (opcional)Com que ja tenim el Servidor apache corrent així com el Sane que l'hem instal·lat en aquest mateix post, tan sols mos faltara instal·lar les dependències netpbm i gorc.
~# apt-get install netpbm gocr
Instal·lar phpSANE
Per a més detalls i per baixar l'arxiu visite el lloc del projecte SourceForge projects (phpSANE). El podeu baixar des de inforoig phpSANE-0.8.0.zip i/o phpSANE-0.7.2.zip
Una volta baixat, només has de descomprimir i copiar el directori phpSANE al directori arrel de l'apache, al meu cas /var/www. A continuació una volta publicat al servidor apache li assignarem permisos d'ús des de línia d'ordres amb ...
~# chown -R www-data:www-data /directori_on_tenim_el_/phpSANE
~# chown -R www-data:www-data /var/www/escanner
Crearem l'enllaç simbòlic HTML (amb açò evitem el haaver d'escriure l'adreça completa per iniciar el phpSANE), per poder accedir des de la xarxa ...
~# ln -s /var/www/phpSANE/escanner/phpSANE-0.8.0/phpsane.php /var/www/index.php
NOTA ... En joc crear aquest enllaç, el que jo he fet és posar el phpSANE a /var/www/escanner/phpSANE-0.7.2, després he creat un arxiu index.html al directori escanner (que re-adreçarà la connexió cap a /var/www/escanner/phpSANE-0.7.2/phpsane.php i em permetrà accedir a l'escànner teclejant al navegador http://ip_del_servidor/escanner).
Crear l'arxiu index.html ...
~# nano /var/www/escanner/index.html
al aquest cas ...
<html>
<head>
<meta http-equiv="Refresh" content="0;url=phpSANE-0.7.2/phpsane.php">
</head>
</html>
A partir d'aquí ja podem utilitzar-lo accedint a la URL ...
http://IP_servidor/escanner
http://192.168.1.3/escanner
Si com al meu cas, l'escànner funciona localment però el phpSANE no el troba, és probablement una qüestió de permisos prove amb chmod +s (per activar el mode suid, i així fer que l'usuari que vol fer ús de l'escànner puga utilitzar els arxius com si fos el que els va crear ...
~# chmod +s /usr/bin/scanimage
i pel directori /tmp ...
~# chmod 775 /directori_on_tenim_el_/tmp
~# chmod 775 /var/www/escanner/phpSANE-0.7.2/tmp
XSANE
XSane és una interfície gràfica per a l'exploració de SANE (Scanner Access Now Easy). Utilitza la biblioteca SANE-per parlar amb escànners. Xsane està dissenyat per a imatges amb escànners.
Instal·lació i Configuració als clients Linux (Debian i Ubuntu)
Instal·lem, sane i xsane amb (com que ja tenim el sane instal·lat al servidor, per connectar-mos al seu escàner, no deuria de ser necessari instal·lar el paquet sane) ...
~# apt-get install sane xsane
Per comprovar el funcionament del Servei cap al port 6566 ...
~$ telnet IP_fixa_del_sevidor 6566
~$ telnet 192.168.1.3 6566
Trying 192.168.1.3 ...Connected to 192.168.1.3.Escape character is '^]'.Per sortir sol escriviu exit o quit i premeu la tecla de intro.
Per detectar els escànners connectats ...
~$ sane-find-scanner
roig@Debian-escriptori:~$ sane-find-scanner# sane-find-scanner will now attempt to detect your scanner. If the
# result is different from what you expected, first make sure your
# scanner is powered up and properly connected to your computer.
# No SCSI scanners found. If you expected something different, make sure that
# you have loaded a kernel SCSI driver for your SCSI adapter.
found USB scanner (vendor=0x0cf3, product=0x3000) at libusb:006:004
# Your USB scanner was (probably) detected. It may or may not be supported by
# SANE. Try scanimage -L and read the backend's manpage.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports
# can't be detected by this program.
# You may want to run this program as root to find all devices. Once you
# found the scanner devices, be sure to adjust access permissions as
# necessary.
NOTA ... Al meu cas tinc un dispositiu d'HP All-in-One (Tot-en-Un). Per aconseguir que el nostre escànner estiga a punt necessitem hplip. (Aquesta acció és sols pels dispositius multi-funció (All-in-One) d'HP) ...~# apt-get install hplip hpijs-ppds (amb açò hauria de ser suficient, no obstat he de dir que jo he instal·lat alguns paquets més, per instal·lar totes les dependències feu clic AQUÍ). Podem revisar el nostre hp amb l'ordre hp-check, també podem instal·lar, modificar i configurar la nostra hp amb l'ordre hp-setup (gràficament) o amb hp-setup -i (des del Terminal).
Doncs bé, com en vist l'escànner es detectat, però per veure si és avalat per sane executem ...
~$ scanimage -L
roig@Debian-escriptori:~$ scanimage -Ldevice `net:192.168.1.4:hpaio:/usb/Officejet_4500_G510n-z?serial=CN154H341605HR' is a Hewlett-Packard Officejet_4500_G510n-z all-in-one
Si tot anat bé tan sols ens queda d'editar l'arxiu /etc/sane.d/net.conf i especificar a l'adreça IP del servidor recentment configurat ...
~# nano /etc/sane.d/net.conf
~# nano /etc/sane.d/net.conf# This is the net backend config file.## net backend options# Timeout for the initial connection to saned. This will prevent the backend# from blocking for several minutes trying to connect to an unresponsive# saned host (network outage, host down, ...). Value in seconds.# connect_timeout = 60
## saned hosts# Each line names a host to attach to.# If you list "localhost" then your backends can be accessed either# directly or through the net backend. Going through the net backend# may be necessary to access devices that need special privileges.# localhost192.168.1.3 # Ip fixa del servidor
Instal·lació i Configuració als client windows (windows 7)
Baixem l'arxiu xsane-win32 des d'ací, o bussejant al google, descomprimim i movem la carpeta sane a carpeta sane a C:\ (quedant així: c:\sane, només funcionara si el deixem aquí).
Tan sols ens queda d'editar l'arxiu c:\sane\etc\sane.d\net.conf i especificar a l'adreça IP fixa del servidor d'escaneig.
# This is the net config file. Each line names a host to attach to.# If you list "localhost" then your backends can be accessed either# directly or through the net backend. Going through the net backend# may be necessary to access devices that need special privileges.# localhost#192.168.0.7192.168.1.3# Ip fixa del servidorL'executable per iniciar l'aplicació es troba a c:\sane\bin\xsane.exe
SaneTwain
SaneTwain és una interfície gràfica per a windows per a l'exploració de SANE (Scanner Access Now Easy).
Instal·lació i Configuració als client windows (windows 7)
L'última versió de SaneTwain està disponible en un fitxer ZIP. Després de descarregar el SaneTwain, descomprimim els arxius a qualsevol lloc que desitgem, allí trobarem un arxiu anomenat SaneTwain.ds i altre anomenat ScanImage.exe.
- L'arxiu SaneTwain.ds el movem a la carpeta twain_32 de la carpeta del sistema de Windows. al meu cas c:\Windows\twain_32\
- L'arxiu ScanImage.exe es l'executable per iniciar l'aplicació.
La primera vegada que s'inicia el programa, es mostra una finestra de propietats on indicarem l'adreça IP fixa del servidor d'escaneig. Aquesta finestra es pot recuperar posteriorment utilitzant el botó de propietats (botó Properties). Tots els ajustos en aquesta finestra es guarden al fitxer sanetwain.ini, que s'emmagatzema en el seu perfil d'usuari.
Referències ...SANE (Servidor d'escaneig).... http://www.sane-project.org/phpSANE (interfície basada en la web per a SANE).... http://sourceforge.net/projects/phpsane/
Rebin una cordial salutació.

Salut i gaudeixin de GNU/Linux 
el roig


Torna a la portada