SANE
Information
For more information on SANE have a look at the SANE project website
Supported scanners
For a list of supported scanners have a look at this page.
Server
This is the installation of the server part, you will also need to install drivers on your clients as described in the Client section.
Installation
Installing required packages
To install SANE and xinetd (required for running it unattended) login to the SME Server shell as root and issue the following command:
yum install sane-backends xinetd
After succesfull of the required packages issue the following commands:
signal-event post-upgrade signal-event reboot
Testing the installation
Finding your scanner
After installation and reboot you should be able to find your scanner with the following command:
sane-find-scanner
The output should look like this:
# No SCSI scanners found. If you expected something different, make sure that # you have loaded a SCSI driver for your SCSI adapter. # Also you need support for SCSI Generic (sg) in your operating system. # If using Linux, try "modprobe sg". found USB scanner (vendor=0x04b8 [EPSON], product=0x010f [EPSON Scanner 010F], chip=LM9832/3) at libusb:001: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.
Determining assigned driver
To see which hardware location is assigned to the scanner issue the following command:
scanimage -L
The output should look something like this:
device `plustek:libusb:001:002' is a Epson Perfection 1250/Photo USB flatbed scanner
Aquisition
To make a test scan you can issue the following command specifying the driver you determined in Determining assigned driver.
scanimage -d drivername --format tiff -l 0 -t 0 -x 215 -y 297 > outfile.tiff
Replace drivername with the driver determined in Determining assigned driver, e.g.:
scanimage -d plustek:libusb:001:002 --format tiff -l 0 -t 0 -x 215 -y 297 > outfile.tiff
Configuring xinetd to run SANE unattended
After succesfull installation and testing it is time to configure xinetd so SANE will run as a service on your server.
- Create a group using the server-manager of your SME Server to hold the users that will be allowed to use the scanner application. In this instruction it is assumed that the group will be called saneusers.
- One of the first steps we need to do is to add a entry to the internal configuration database to hold the configuration parameters of the saned service daemon with the following commands:
db configuration set saned service db configuration setprop saned TCPPort 6566 db configuration setprop saned status enabled
- Create a custom template fragment by issuing the following commands:
mkdir -p /etc/e-smith/templates-custom/etc/xinetd.conf/
nano /etc/e-smith/templates-custom/etc/xinetd.conf/30sane
Copy the following section in this file:
{ $OUT = <<HERE; service sane { port = 6566 socket_type = stream protocol = tcp user = root group = saned wait = no server = /usr/sbin/saned } HERE }
Expand the configuration file:
expand-template /etc/xinetd.conf
- We also allow all systems on the network to be able to access the service, this is done by adding another template, with the following commands:
mkdir -p /etc/e-smith/templates-custom/etc/hosts.allow nano /etc/e-smith/templates-custom/etc/hosts.allow/sane
Copy the following section into the file:
{ $DB->hosts_allow_spec('saned'); }
Expand the configuration file:
expand-template /etc/hosts.allow
-
Now we need to configure the service using the following commands:
mkdir -p /etc/e-smith/templates-custom/etc/services/ nano /etc/e-smith/templates-custom/etc/services/saned
Add the following line to the file:
sane { ${'saned'}{TCPPort} }/tcp # SANE network scanner daemon
Expand the configuration file:
expand-template /etc/xinetd.conf
- Make a link to allow xinetd to start during the server startup:
ln -s /etc/init.d/xinetd /etc/rc.d/rc7.d/S50xinetd
- Now we can start the server with the following command:
/etc/init.d/xinetd restart
Uninstall
You can remove SANE from your SME Server with the following command
yum remove sane-backends
Client
Windows
In download section, take the ZIPfile (sanetwain127.zip or Windowsinstaller (setup127.exe)
make :
setup127.exe
Configuration
- index connection Hostname => address ip server Port => 6566 Username => user’s name
I made : Get list of devices on startup
- index printer I made : Show printer setup dialog before print (I have several printers!)
- index Startup I made : Acquire preview on program start Use as interface language => fr
Usage
SANE TWAIN drivers have many possibilities. SANE TWAIN drivers can be used alone or called from another application (photoshop, acrobat, ...) like a classical usb scanner.
Testing
Start a terminal on your server (with putty for example). make :
saned -d128
example
# saned -d128 [saned] main: starting debug mode (level 128) [saned] main: trying to get port for service `sane-port' (getaddrinfo) [saned] main: "sane-port" service unknown on your host; you should add [saned] main: sane-port 6566/tcp saned # SANE network scanner daemon [saned] main: to your /etc/services file (or equivalent). Proceeding anyway. [saned] main: [0] socket () using IPv4 [saned] main: [0] setsockopt () [saned] main: [0] bind () to port 6566 [saned] main: [0] listen () [saned] main: [1] socket () using IPv6 [saned] main: [1] socket failed: Address family not supported by protocol [saned] main: waiting for control connection
If you have “waiting for control connection “, all sounds good. Now on your windows computer, open Scanimage (name of gui software for sanetwain)
The scanner should start and lines should appear in the terminal (putty)
On the first connection, it often takes a long time and a message like this can appear: Time out reading word from socket Close Scanimage... saned must close up under putty (else ctrl+C to close saned and to come back to the prompt)
Restart ' saned - d128 ' on the terminal and open Scanimage one more time, it should scan! Lines are displayed on the terminal with putty. (type -d for debug mode)
The first time, I didn’t succeed to use the scanner on my windows computer when using sanetwain
=> outdated delay of wait..
I resolved problem by changing the file /etc/sane.d/dll.conf
I put in comment (# in front of the line) all lines which did not correspond to my driver.
MacOS X
SANE can also be installed on MacOS X, for more information have a look at http://www.ellert.se/twain-sane/.
If you get things working on MacOS X please provide installation instructions here.
Linux
To use SANE on your linux PC you need to install the xsane package.
It’s enough to configure xsane so that it knows where to find the server with the scanner attached by adding the line with the IP address of your server to /etc/sane.d/net.conf on your client PC
You can use xsane or make the acquisition from other software for instance OpenOffice or GIMP.