Condivisione in rete dello scanner con Linux
Questa guida illustra come configurare SANE e il suo demone di rete, SANEd, per condividere gli scanner collegati ad una macchina siano condivise con tutte le altre postazioni della rete locale. La prima parte parla della configurazione del server vero e proprio mentre la seconda parte illustra come configurare client Linux, Windows e Mac OS X.
Prerequisiti
D'ora in avanti si suppone che SANE e lo scanner siano installati e configurati correttamente sul sistema server. Per avere una conferma aprite una console e lanciate il comando *scanimage -L* e otterrete una lista di tutti gli scanner collegati al computer.
utente@server:~$ scanimage -L device `snapscan:libusb:001:005' is a Acer FlatbedScanner25 flatbed scanner
Come prova finale potete lanciare una scansione di prova con scanimage --format=tiff > Scansione.tiff. Controllate che all'interno dell'immagine non ci siano imperfezioni e procedete.
Configurazione del server
Permessi
Per sicurezza il server SANEd viene sempre lanciato tramite un utente dai permessi limitati di nome saned quindi per prima cosa è importante assicurarsi che questo sia autorizzato ad accedere agli scanner. Prima di tutto aprite una nuova console e digitate il comando su -s /bin/sh - saned per diventare l'utente saned. Ora che avete le stessi permessi del demone digitate il comando groups per ottenere una lista dei gruppi a cui appartiene l'utente e otterrete qualcosa di simile a questo.
saned@server:/$ groups saned
Tutti gli utenti che vogliono poter accedere agli scanner devono appartenere al gruppo speciale scanner ma come è possibile vedere qui sopra saned in questo momento appartiene al solo gruppo saned. Digitate quindi il comando sudo adduser saned scanner per aggiungere il nuovo gruppo. Se provate a dare immediatamente il comando groups per controllare se scanner è stato aggiunto questo non comparirà immediatamente nella lista. Perché il sistema si accorda del nuovo gruppo dovrete fare un logout dall'utente saned e poi rientrare.
Configurazione inetd
Il prossimo passo da fare è configurare inetd perché il demone saned sia lanciato ogni volta che viene intercettata una richiesta dalla rete. Prima di toccare i file di configurazione di inetd è bene controllare anche se il sistema già conosce il numero di porta su cui sane invia le richieste. Aprite quindi il file /etc/services e controllate che la seguente riga sia presente al suo interno e se non la trovate aggiungetela alla fine del file.
sane-port 6566/tcp sane saned # SANE network scanner daemon
Anche la modifica del file di configurazione di inetd è piuttosto banale. Non dovrete far altro che aprire il file /etc/inetd.conf con un editor di testi, aggiungere la seguente riga infondo al file e salvare.
sane-port stream tcp nowait saned.saned /usr/sbin/saned saned
Alcune distribuzioni non usano inetd ma una versione chiamata xinetd che ha un file di configurazione con una struttura diversa configurarlo è comunque molto semplice. Aprite il file /etc/xinetd.conf e aggiungete le seguenti righe in fondo al file.
service sane-port
{
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = saned
group = saned
wait = no
disable = no
}
Entrambi i server vanno riavviati perché le modifiche vengano caricate. Su sistemi basati su Debian come Ubuntu il comando giusto da dare è sudo /etc/init.d/openbsd-inetd restart.
Configurazione SANEd
Di default il demone saned rifiuta tutte le connessioni a meno che gli ip da cui provengono non siano all'interno della lista presente nel suo file di configurazione. Dovete quindi aprire il file /etc/sane.d/saned.conf e aggiungere i singoli ip, uno per riga, infondo al file. Se avete molte postazioni da gestire potete risparmiare tempo aggiungendo un intera sottorete usando la notazione CIDR. Ad esempio per aggiungere tutti gli ip compresi tra 192.168.0.1 e 192.168.0.254 si può scrivere questo
192.168.0.0/24
Controllo finale
A questo punto il server è configurato e pronto a ricevere connessioni. Per controllare potete usare tranquillamente il comando telnet ip.de.server.saned 6566 da una qualsiasi delle macchine della rete e avere la conferma della avvenuta connessione se ottenete un output simile.
utente@client:~$ telnet 192.168.0.4 6566 Trying 192.168.0.4... Connected to 192.168.0.4. Escape character is '^]'.
Configurazione dei client
Linux
Configurare lo scanner di rete su sistemi Linux è molto semplice. Prima di tutto dovete installare SANE sulla macchina tramite il gestore di pacchetti della vostra distribuzione. Su sistemi basati su Debian basta cercare il pacchetto sane ed installarlo tramite Synaptic o Aptitude. Una volta installato dovrete aprire con editor di testo il file /etc/sane.d/net.conf e aggiunger l'ip della macchina server a cui è collegato fisicamente lo scanner. Una volta salvato potete dare il comando scanimage -L e controllare se lo scanner remoto viene rilevato come nel seguente esempio.
utente@client:~$ scanimage -L device `net:192.168.0.4:snapscan:libusb:001:005' is a Acer FlatbedScanner25 flatbed scanner
Per gestire più comodamente lo scanner è utile installare su tutte le macchine client dei programmi con interfaccia grafica come xsane che hanno la possibilità di integrarsi anche con GIMP.
Mac OS X
Anche su sistemi Apple è possibile installare SANE quindi configurare lo scanner è molto semplice ma non avendo un gestore di pacchetti simile a quello di Debian l'installazione è un po' più macchinosa. Prima di tutto scaricate i primi quattro binari per la vostra versione di OS X dal sito http://www.ellert.se/twain-sane/. Una volta completato il download installateli nel seguente ordine:
- libusb
- SANE backends
- TWAIN SANE Interface
- SANE Preference Pane
Su alcuni vecchi sistemi è necessario scaricare anche gettext ed installarlo prima di libusb ma su Leopard e Tiger questo non è necessario.
Per configurare aprite Preferenze di Sistema in Accessori cliccate sul pulsante SANE. Vi si presenterà davanti una lista di driver abilitati. Quello che vi interessa è il primo che ha nome net. Cliccate sul primo bottone sulla destro, quello nella colonna Configure. Si aprirà una finestra al cui interno è riportato il contenuto del file net.conf. Come per Linux aggiungete infondo al file l'indirizzo ip del server e cliccate su OK. Per sicurezza vi verrà chiesta la vostra password, quindi inseritela e continuate.
Il modo più veloce di provare lo scanner è aprire il programma Acquisizione Immagine e lanciare una scansione. Appena avviato il programma vi accoglierà con una schermata in cui vi dice che non c'è alcun dispositivo connesso al computer. Ignoratela e cliccate il menu Dispositivi e poi su Ricerca dispositivi. Ora si aprirà una schermata in cui vedrete una lista di dispositivi di acquisizione disponibili. Quello che vi interessa è chiamato SANE sotto Sorgenti di dati TWAIN. Cliccate quindi sul pulsante Utilizza TWAIN UI per aprire la finestra di scansione vera e propria.
Essendo integrato col sistema da questo momento in avanti potrete usare lo scanner anche da altri programmi come PhotoShop.
Windows
Su Windows dovete installare il programma SaneTWAIN che trovate su http://sanetwain.ozuzo.net/. Potete scaricare il file compresso e seguire le istruzioni presenti sul sito. Io però preferisco scaricare il programma di installazione e lasciare fare tutto a lui. Quando avviato per la prima volta il programma vi chiede l'indirizzo ip del server, inseritelo e cliccate su OK. La finestra di scansione è molto semplice da usare, controllate che nella lista dei dispositivi appaia il vostro scanner di rete e poi cominciate una scansione di anteprima per testare la connessione.
Anche su windows viene installata una interfaccia TWAIN nel sistema quindi è possibile usare lo scanner dalla maggior parte dei programmi di grafica, da Paint a PhotoShop.