вторник, 9 апреля 2013 г.

Сканируем документы по сети. Или как расшарить сканер в Ubuntu?

Задача:
Организовать возможность сканировать документы по локальной сети.

Имеем:
Копутеры в разных подсетях (192.168.1.0/24, 192.168.2.0/24, 192.168.10.0/24) и МФУ Canon MF4010, подключенный по USB к 192.168.1.6

Обозначения:
scanserver - компьютер, к которому подключен сканер;
scanclient - компьютер, к которого необходимо сканировать по сети;


На scanserver:

Ставим недостающие пакеты:
$sudo apt-get install sane-utils

Правим конфиги:

$sudo mcedit /etc/sane.d/saned.conf

в самый конец файла добавляем IP-адрес scanclient 
(Если клиентов несколько, то можно указать диапозон IP-адресов (например, 192.168.1.1-192.168.1.4)
 или всю подсеть (например, 192.168.1.0/24))

192.168.1.0/24
192.168.2.0/24
192.168.10.0/24

$sudo mcedit /etc/inetd.conf

добавляем в него строку:
sane-port stream tcp nowait saned:saned /usr/sbin/saned saned

(если такая строка есть, но закомментирована - соответственно раскомментировать ее)


Рестартуем openbsd-inetd:
$sudo service openbsd-inetd restart


Если в системе еще нет группы scanner - создаем ее, и добавляем себя и пользователя saned в эту группу:
$sudo groupadd scanner
$sudo usermod -aG scanner user
$sudo usermod -aG scanner saned

Правим конфиг 40-libsane.rules:
$sudo mcedit /lib/udev/rules.d/40-libsane.rules

ищем свой сканер, должно быть что то типа:

# Canon imageCLASS MF4010 | Canon imageCLASS MF4018
ATTRS{idVendor}=="04a9", ATTRS{idProduct}=="26b4", ENV{libsane_matched}="yes"

приводим строку к такому виду:

# Canon imageCLASS MF4010 | Canon imageCLASS MF4018
ATTRS{idVendor}=="04a9", ATTRS{idProduct}=="26b4", ENV{libsane_matched}="yes", MODE="664", GROUP="scanner"


Если вашего сканера нет в файле, его можно добавить вручную по idVendor и idProduct, которые можно получить командой на scanserver:
$sane-find-scanner

в ответ должно быть что тот типа:
found USB scanner (vendor=0x04a9 [Canon Inc.], product=0x26b4 [MF4010]) at libusb:001:003

Теперь правим /etc/default/saned:
$sudo mcedit /etc/default/saned

устанавливаем RUN=yes

Рестартуем saned:
$sudo service saned restart

На этом настройка scanserver-a завершена...


На scanclient:

Ставим недостающие пакеты:
$sudo apt-get install sane-utils

Правим конфиг:

$sudo mcedit /etc/sane.d/net.conf

в самый конец файла добавляем IP-адрес scanserver
192.168.1.6 

Проверяем доступность сканера:
$sudo scanimage -Lq

В ответ должны получить что-то вроде:
device `net:192.168.1.6:pixma:04A926B4_SD3008250258Q' is a CANON Canon imageCLASS MF4010 multi-function peripheral

В конфиге /etc/sane.d/dll.conf проверяем наличие строки (раскаментируем/добовляем):
net


Если в системе еще нет группы scanner - создаем ее, и добавляем себя и пользователя saned в эту группу:
$sudo groupadd scanner
$sudo usermod -aG scanner user
$sudo usermod -aG scanner saned

На этом ВСЕ!!! Можно пробовать сканировать с помощью XSane или другой подходящей программой, используя расшаренный сканер.


ЗАМЕЧАНИЕ!!!
Если после настройки есть ругань на ограничение правах использования сканера, то на scanserver в конфиге /etc/inetd.conf следует заменить строку параметров:

sane-port stream tcp nowait saned:saned /usr/sbin/saned saned
заменить на:
sane-port stream tcp nowait root /usr/sbin/saned saned

Комментариев нет:

Отправить комментарий