sto cercando di condividere lo scanner usb con tutti i pc collegati alla rete interna di casa (montano tutti Slackware 13.37 32 bit). Lo scanner è un Canon CanoScan N670U ed è collegato ad un server che monta CentOS 6.3 x64.
Sul server lo scanner viene correttamente riconosciuto, sia da root che da utente (per quest'ultimo ho dovuto modificare una regola in un file di configurazione di udev per poi creare il gruppo scanner che non c'era e, infine, ho aggiunto l'utente al gruppo in /etc/group). Da utente, sempre sul server, lanciando xsane, riesco tranquillamente ad effettuare una scansione.
Il problema si presenta, invece, quando mi ritrovo a cercare di condividere lo scanner con gli altri pc. In sostanza, lanciando xsane dal portatile il programma rileva il dispositivo e si apre solo se in fondo al file di configurazione /etc/sane.d/saned.conf del server ci metto:
Codice: Seleziona tutto
localhost
192.168.1.100
Dove 192.168.1.100 è l'IP assegnatomi dal router all'avvio di Slackware (NON è statico, al contrario dell'IP del server).
Se invece scrivo:
Codice: Seleziona tutto
localhost
192.168.0.0/24
cioè per consentire l'accesso allo scanner a tutti, lo scanner, dal portatile non viene più rilevato.
A parte questo, però, nonostante nel primo caso venga rilevato da Slackware, quando tento di fare una scansione con xsane lo scanner parte e poco dopo la luce del neon si pianta in un punto e non va a fine corsa (e anche xsane si incanta).
Oltre a leggere la documentazione su sane-project.org, ho seguito questa guida: https://wiki.archlinux.org/index.php/USB_Scanner_Support
Vi posto qualche configurazione, sperando possa essere utile.
Il file /etc/xinetd.conf sul server:
Codice: Seleziona tutto
#
# This is the master xinetd configuration file. Settings in the
# default section will be inherited by all service configurations
# unless explicitly overridden in the service configuration. See
# xinetd.conf in the man pages for a more detailed explanation of
# these attributes.
defaults
{
# The next two items are intended to be a quick access place to
# temporarily enable or disable services.
#
# enabled =
# disabled =
# Define general logging characteristics.
log_type = SYSLOG daemon info
log_on_failure = HOST
log_on_success = PID HOST DURATION EXIT
# Define access restriction defaults
#
# no_access =
# only_from =
# max_load = 0
cps = 50 10
instances = 50
per_source = 10
# Address and networking defaults
#
# bind =
# mdns = yes
v6only = no
# setup environmental attributes
#
# passenv =
groups = yes
umask = 002
# Generally, banners are not used. This sets up their global defaults
#
# banner =
# banner_fail =
# banner_success =
}
includedir /etc/xinetd.d
service sane-port
{
port = 6566
socket_type = stream
wait = no
user = root
group = scanner
server = /usr/sbin/saned
disable = no
}
Le porte 6566/tcp e 6567/tcp del server sono state aperte utilizzando system-config-firewall-tui.
La riga
Codice: Seleziona tutto
sane-port 6566/tcp # SANE network scanner daemon
era già presente di default all'interno del file /etc/services e xinetd sembra partire regolarmente all'avvio.
Però una cosa che mi puzza è che quando sul server stoppo xinetd (con il comando service xinetd stop) e poi, da utente, do il comando saned -d, ottengo questo output:
Codice: Seleziona tutto
[saned] main: starting debug mode (level 2)
[saned] saned (AF-indep+IPv6) from sane-backends 1.0.21 starting up
[saned] do_bindings: [0] bind failed: Address already in use
Spero di aver scritto tutto. Ringrazio in anticipo chiunque sia disposto a darmi qualche consiglio.
EDIT: Dimenticavo di dire che su Slackware, ho aggiunto l'hostname del server all'interno del file /etc/sane.d/net.conf e, a tale nome, ho associato l'IP statico del server all'interno del file /etc/hosts.