- web gui для sane: phpSANE, sanewi, linux_scan_server.
- сетевой демон saned.
(см. также другие способы сканирования при помощи sane)
Исходные данные:
- USB сканер - МФУ HP LaserJet 3030
- сервер - Ubuntu 8.04.4 LTS i386
- sudo apt-get install sane
- Убедиться, что сканер доступен из под пользователя root и функционирует:
- $ sudo scanimage -L
покажет список подключенных сканеров. В моем случае результат был следующим:
device `hpaio:/usb/hp_LaserJet_3030?serial=00CNBF041264' is a Hewlett-Packard hp_LaserJet_3030 all-in-one - $ sudo scanimage --resolution 100 --format=pnm > test_im.pnm
в результате в test_im.pnm должна быть сканированная картинка - Убедиться, что сканер доступен из под пользователя saned и функционирует. Метод тот же, что и для пользователя root. Если сканер не определяется (у меня так и было), то нужно добавить пользователя saned в группу scanner.
- Добавить в конец /etc/inetd.conf строку:
sane-port stream tcp nowait saned.saned /usr/sbin/saned saned
ВАЖНО: нужно проверить, что sane-port определен в /etc/services и, что saned действительно находится по пути /usr/sbin/saned (grep sane-port /etc/services; which saned). - Перезапускаем inet.d
sudo kill -HUP `ps ax|awk '/inetd/ {print $1}'` - Проверяем, что saned слушает соответствующий порт:
telnet localhost 6566
Если подключиться удалось, что можно продолжать дальше. Возможно придется внести соответствующие изменения в правила iptables. - Настраиваем клиентскую машину. Устанавливаем xsane. Добавляем адрес сервера отдельной строкой в файл /etc/sane.d/net.conf
- Проверяем, что сканер доступен с клиентской машины:
scanimage -L
Если все хорошо, то результат должен быть примерно таким
device `net:192.168.0.1:hpaio:/usb/hp_LaserJet_3030?serial=00CNBF041264' is a Hewlett-Packard hp_LaserJet_3030 all-in-one - Сканер готов к работе.
data_portrange = min_port - max_port Specify the port range to use for the data connection. Pick a port range between 1024 and 65535; don't pick a too large port range, as it may have performance issues. Use this option if your saned server is sitting behind a firewall. If that firewall is a Linux machine, we strongly recommend using the Netfilter nf_conntrack_sane module instead.
У меня на сервере стоит старое ядро 2.6.24-27, в котором нет модуля nf_conntrack_sane и старая убунта, со старой версией пакета sane, в которой нет этой версии. Ну и iptables настроен жестко, поэтому описанная мной схема у меня не сразу заработала :) Мне дополнительно пришлось скачать и собрать новую версию sane
- git clone git://git.debian.org/sane/sane-backends.git
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
- make
- make install
или, если вы чтите ubuntu policy
checkinstall --pkgname=sane --pkgversion=1.0.21-trunk --backup=no --default -D
Комментариев нет:
Отправить комментарий