Задача: установить сканер в Linux и настроить его.
Решение: для работы со сканнерами в Linux нужно установить SANE [?] и связанные с ним утилиты.
Установка сканера
Всё очень и очень просто: для установки сканера в линукс нужно поставить подсистему SANE [?]. Для того, чтобы сканировать в консоли (или скриптами), нам нужен только пакет sane, а если хочется ещё и в графических программах сканировать, то ставим ещё и xsane. Итак, ставим:
Сканировать может только root?
Есть такая неприятность: по умолчанию только root имеет доступ к сканеру, но это легко исправить. Для этого нужно внести пользователя, под которым хочется сканировать, в группу scanner. Делается это (с рутовыми привилегиями) так:
имя_пользователя на логин пользователя. Для того, чтобы изменения вступили в силу, нужно перелогиниться. После этого в консольке (от имени того пользователя, которому хочется сканировать) для проверки пишем:
Махмуд, зажигай!
Теперь можно легко и просто сканировать в Gimp. Идём в меню Файл - Захватить - Xsane и видим простой интерфейс сканирования.
Можно так же запустить его отдельно, просто набрав в консольке (или добавив в меню своей графической оболочки) xsane. Полупрозрачным показано первое окно выбора устройства, а дальше появляется окно с параметрами сканирования. В нём масса интересных и нужных настроек. Например, если вы вместо режима "Просмотр" выберете "Файл", то можно сканировать в файлы с постоянно меняющимися названиями: например, file0001.tif, file0002.tif и так далее. Можно прибавлять или отнимать по 1 или 2. И ничего при этом не надо делать руками.
Так же особо обратите внимание на меню "Окна" в XSANE. Там можно вызывать или убирать окна предварительного сканирования, задавать параметры пакетного сканирования, дополнительные настройки (битность изображения, права доступа на сканируемые файлы и прочее).
Примечание:
Некоторые сканеры по умолчанию выставляют размер сканируемой области равной 0, в частности, Umax Astra 2200U. Поэтому бывает полезно посмотреть доступные параметры сканирования их значения по умолчанию для конкретного сканера (например, --resolution, -x, -y, --gray, --lamp-off ) командой
Ссылки:
Про то, как дать возможность сканировать в Linux другим пользователям (кроме рута), сказано здесь и здесь. Поддержка моделей сканеров в Linux постоянно улучшается, и статус поддержки сканеров можно узнать на официальной странице проекта SANE.
Решение: для работы со сканнерами в Linux нужно установить SANE [?] и связанные с ним утилиты.
Установка сканера
Всё очень и очень просто: для установки сканера в линукс нужно поставить подсистему SANE [?]. Для того, чтобы сканировать в консоли (или скриптами), нам нужен только пакет sane, а если хочется ещё и в графических программах сканировать, то ставим ещё и xsane. Итак, ставим:
aptitude install sane xsaneВсё должно поставиться и настроиться - теперь можно поискать сканер. Включаем его в сеть и в соответствующий порт, после чего от рута пишем:
# sane-find-scannerЭта утилита должна выдать что-то вроде:
# sane-find-scanner will now attempt to detect your scanner. If theПолужирным выделено искомое - наш сканер опознан, нашёлся и готов радовать нас отличными изображениями. Если сканер не нашёлся, то о статусе его поддержки можно узнать на официальной странице проекта SANE.
# result is different from what you expected, first make sure your
# scanner is powered up and properly connected to your computer.
# No SCSI scanners found. If you expected something different, make sure that
# you have loaded a SCSI driver for your SCSI adapter.
found USB scanner (vendor=0x04b8 [EPSON], product=0x011b [EPSON Scanner]) at libusb:001:089
# 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.
Сканировать может только root?
Есть такая неприятность: по умолчанию только root имеет доступ к сканеру, но это легко исправить. Для этого нужно внести пользователя, под которым хочется сканировать, в группу scanner. Делается это (с рутовыми привилегиями) так:
# gpasswd -a имя_пользователязаменяяscanner
$ groupsПри этом будет выдан список всех групп, в которых пользователь состоит. Например, вот что пишет эта утилита для меня
penta4 dialout cdrom floppy audio video plugdev scannerПоследняя строчка говорит о том, что пользователь penta4 имет право сканировать. Всё, теперь можно запускать GiMP или любую другую программу и сканировать там.
Махмуд, зажигай!
Теперь можно легко и просто сканировать в Gimp. Идём в меню Файл - Захватить - Xsane и видим простой интерфейс сканирования.
Можно так же запустить его отдельно, просто набрав в консольке (или добавив в меню своей графической оболочки) xsane. Полупрозрачным показано первое окно выбора устройства, а дальше появляется окно с параметрами сканирования. В нём масса интересных и нужных настроек. Например, если вы вместо режима "Просмотр" выберете "Файл", то можно сканировать в файлы с постоянно меняющимися названиями: например, file0001.tif, file0002.tif и так далее. Можно прибавлять или отнимать по 1 или 2. И ничего при этом не надо делать руками.
Так же особо обратите внимание на меню "Окна" в XSANE. Там можно вызывать или убирать окна предварительного сканирования, задавать параметры пакетного сканирования, дополнительные настройки (битность изображения, права доступа на сканируемые файлы и прочее).
Примечание:
Некоторые сканеры по умолчанию выставляют размер сканируемой области равной 0, в частности, Umax Astra 2200U. Поэтому бывает полезно посмотреть доступные параметры сканирования их значения по умолчанию для конкретного сканера (например, --resolution, -x, -y, --gray, --lamp-off ) командой
scanimage --help -d DEVICEгде DEVICE - название сканера, или группы сканеров, поддерживаемых sane. Найти подходящий DEVICE (e.g. umax1220u) можно в разделе BACKENDS FOR SCANNERS руководства $ man sane.
Ссылки:
Про то, как дать возможность сканировать в Linux другим пользователям (кроме рута), сказано здесь и здесь. Поддержка моделей сканеров в Linux постоянно улучшается, и статус поддержки сканеров можно узнать на официальной странице проекта SANE.
Помню, что в старых дистрибутивах проблема была с подключением сканера (хотплаг, что-то типа libusb, libsane, уже сейчас и не вспомню), теперь (когда хотплаг и колдплаг умерли) всё с этим в порядке, udev справляется.
ОтветитьУдалитьНа www.sane-project.org много полезной информации по сканерам. Также бывает полезно читать конфигурационные файлы прошивок (где-то в /etc/sane.d/ или что-то такое).
Ещё не надо пугаться, что сканер долго запрягает :), у меня он разогревается где-то минуты три, поэтому около года я считал, что он у меня не работает =)))
Поправка:
Access вместо Acess
2 igor:
ОтветитьУдалитьНа www.sane-project.org много полезной информации по сканерам.
Но изложена очень уж коряво. Вцедить оттуда что-то полезное - требуется умение и много времени. Куда-то задевали доку по разрешению сканировать всем остальным...
Ещё не надо пугаться, что сканер долго запрягает :),
У меня Epson Perfection 2400, разогревается за 5-10 секунд. SANE его поддерживает превосходно.
Кстати, в статье надо будет потом про backends написать. Кстати, как это слово переводится на русский?
Поправка: Access вместо Acess Спасибо, багфикс учтён :-)
Кстати, в статье надо будет потом про backends написать. Кстати, как это слово переводится на русский?
ОтветитьУдалитьМожет быть, кому-то прийдет более удачная мысль. Мой вариант: Подсистема (или программный модуль) взаимодействия с пользователем или оборудованием, или (нужное вписать).
В sane "backend" получается "модуль взаимодействия со сканером". Слово "драйвер" можно применить, наверное.
"Куда-то задевали доку по разрешению сканировать всем остальным..."
ОтветитьУдалитьИМХО правильно, это задача исключительно дистрибутивозависима.
А у меня Epson 1260 :)
2 Zubok
ОтветитьУдалитьВ sane "backend" получается "модуль взаимодействия со сканером". Слово "драйвер" можно применить, наверное.
Да, наверное что-то из этого. Типа "дополнительный драйвер". А то ко мне на блог повадились ходить Анонимусы - большие и ярые поборники чистоты и красоты переводов. Бдят, так сказать. Закидают тухлыми помидорами при любом удобном случае :-)
2 Igor
ИМХО правильно, это задача исключительно дистрибутивозависима.
Добавление пользователя в группу сканера!? В Слаке, Генту и Дебиане во всяком случае всё именно так. Ну ладно, может где не так...
Ну теперь группа сканирующих зависит просто не от sane, а от udev. На сайте www.sane-project.org в разделе Документация нашёл FAQ, но он, кажется, устарел.
ОтветитьУдалитьАналогия со звуком: в большинстве современных дистрибутивов надо добавить пользователя в группу audio (или sound), но это задача дистрибутива, написать это сообщение при установке соответствующего пакета. Так и здесь. В ArchLinux при установке sane пишется, что нужно добавить пользователя в соответствующую группу.
Да, наверное что-то из этого. Типа "дополнительный драйвер".
ОтветитьУдалитьВ голову пришел еще вариант. Обычно, когда говорят о backend, разумеются еще frontend. То есть речь идет о двух уровнях: высоком и низком. то есть "модуль низкого уровня", "модуль высокого уровня". Что-то в этом роде.
Спасибо за статью!
ОтветитьУдалитьПопробовал настроить свой сканер, все доступно изложено. Вот только у меня почему-то не заработало.
Установил xsane, включил пользователя в группу scanner. Но вот при запуске xsane выдает "нет доступных устройств". sane-find-scanner мой сканер находит HP ScanJet 4370. Может это вин-сканер? Такие бывают? Вот принтер у меня так и не заработал, сказали менять...
2 paveless
ОтветитьУдалитьСпасибо за статью!
Попробовал настроить свой сканер, все доступно изложено.
Пожалуйста. Рад, что она помогла хоть в чём-то.
sane-find-scanner мой сканер находит HP ScanJet 4370.
Нужно скачать backend. В гугле он должен быть, а ещё на сайте проекта SANE хорошо посмотреть, есть ли поддержка (хотя должна быть, HP сканеры поддерживаются нормально).
Вот принтер у меня так и не заработал, сказали менять...
Пиши в личку, если смогу - помогу. Название сканера, принтера, дистрибутив и своё железо.
Проблема возникла со сканером Epson Perfection 4180. Выполняя выши инструкции и почитав мануалы не удалось поднять сканер. Хотя sane-find-scanner находит found USB scanner (vendor=0x04b8 [EPSON], product=0x0118 [EPSON Scanner]) at libusb:003:00.
ОтветитьУдалитьМожет у вас есть какие нибудь мысли по этому поводу !!!
Advanced: kernel - 2.6.17-2-k7
motherboard asus A7N8X-E Deluxe
cvat, твоего сканера даже нет в списке sane. Не знаю как он, но мой Perfection 1270 требует, чтобы в него загружалась прошивка (её нужно выдрать из виндового драйвера и немного подправить конфиг)
ОтветитьУдалить> Проблема возникла со сканером Epson Perfection 4180.
ОтветитьУдалитьРешена ли проблема и есть ли папка /dev/scanner и нужна ли она в принципе, если нет то как восоздать:). Много вопросов:)
Список поддерживаемых сканеров смотрим здесь: http://www.sane-project.org/sane-mfgs.html
ОтветитьУдалитьЯ, например, своего там не нашёл. Отправил багрепорт. Через пару дней со мной связался разработчик одного из backend'ов, попросил доп. сведения. Обещает альфа-версию драйвера через несколько дней сделать. Мож и правда, получится? :)
DimkaS
2 Акув комментирует...
ОтветитьУдалитьРешена ли проблема и есть ли папка /dev/scanner и нужна ли она в принципе, если нет то как восоздать:)
Это не папка, а файл устройства. И было это, насколько я помню, давно, при devfs. Сейчас такого устройства быть не должно.
2 Dimka комментирует...
Отправил багрепорт. Через пару дней со мной связался разработчик одного из backend'ов, попросил доп. сведения. Обещает альфа-версию драйвера через несколько дней сделать. Мож и правда, получится? :)
А почему бы и нет!? Ведь разработчики - как правило сами пользуются либо таким же устройством, либо близким по марке, либо просто энтузиасты и любители поломать всякие железяки. Так что если уж разработчик откликнулся - снабжайте его таким количеством полезных сведений о своей железяке, как только сможете.
Очень может быть, что, вопреки жлобу-производителю, вам удастся воспользоваться возможностями устройства.
USB Сканер Acer 3300U
ОтветитьУдалитьв мандриве работает нормально
в debian etch даже lsusb его не показывает
подскажите куда ткнуться.
Сикока не долбился- от обычного юсера не запускается sane стабильной ветки.Segmentation fault и до свидания. Победить удалось только скачкой и компиляцией последних sane-xsane
ОтветитьУдалитьUSB Epson perfection 660
ОтветитьУдалитьНастраивал как указано выше, не поднялся.
Была проблема
#scanimage > image.pnm
[snapscan] Cannot open firmware file /usr/share/sane/snapscan/your-firmwarefile.bin.
[snapscan] Edit the firmware file entry in snapscan.conf.
scanimage: open of device snapscan:libusb:001:002 failed: Invalid argument
Порыскал на форумах
http://www.mepis.org/node/9595
нашел лечение.
Есть список сканеров которым нужен bin фаил из win драйверов
http://snapscan.sourceforge.net/
Из списка скачал нужный фаил в
usr/share/sane/snapscan/your-firmwarefile.bin
настроил ссылку на bin фаил в
etc/sane.d/snapscan.conf
народ скажите решилась ли проблема со сканером HP scanjet 4370 если да то как?
ОтветитьУдалитьУважаемый Михаил, ввожу команду aptitude install sane xsane, терминал "шуршит" и выдаёт предупреждение о том, что энное количество пакетов не используется и будет стёрто. Не приведи Бог согласиться! А если ставить пакеты sane и xsane из Synaptik-а, то после введения # sane-find-scanner следует что-то типа "comand not found". Так что, до заветного "Махмуд, зажигай!" добраться никак не могу :((
ОтветитьУдалитьУ меня Дебиан и Mustek 1200 UB Plus.
Как "пришить" сканер к моей ОС?
Спасибо. Т.Б.
как настроить так, чтобы сканер сканировал автоматически по нажатию кнопки без всяких запросов? в списке поддерживаемых сканеров моего нету у "A scanner button daemon for Linux".
ОтветитьУдалитьпользую genius sf600. вручную работает через xsane нормально
Уважаемый Михаил.... "Махмуд, зажигай!" - в моем случае тоже не выходит.
ОтветитьУдалитьпишет:
found USB scanner (vendor=0x055f, product=0x021a [USB Scanner], chip=GT-6816) at libusb:001:003
# Your USB scanner was (probably) detected. It may or may not be supported by
# SANE. Try scanimage -L and read the backend's manpage.
Сканер Usb: Mustek 2448 CS Plus.
OC: Debian
+ ко всему.......... когда я вхожу в интерфейс xsane она выдает, что не может открыть устройство с вышеуказанным адресом (((
ОтветитьУдалитьПодскажите, пожалуйста, что делать!
По поводу USB Epson perfection 660,
ОтветитьУдалитьна сайте sane написано что нужен firmware файл tail_058.bin, но в офф дровах лежит tail_061.bin, что вызвало некоторую панику на некоторых форумах.
Этот файл отлично подпихивается и работает, ищущие - не парьтесь X)
Добрый день! У меня сканер Epson 1260, во первых долго готовится к сканированию (минуты 2) во вторых сканирует не всё изображение, а только область в правом верхнем углу.
ОтветитьУдалитьЯ так понимаю что всё это настраивается, для того чтобы задать область сканирования я пишу scanimage -x 215 -y 297 -d тут само устройство > /dev/bus/usb/003/002 в результате ничего не меняется, что делаю не так?
у меня стоит Ubuntu 10.10 и сканер Epson Perfection 4180.
ОтветитьУдалитьне могу добиться чтоб работал. если кто решил проблему отпишите пожалуйста на kos.mik@mail.ru очень нужно.
Здравствуйте! У меня проблема со сканированием. Сканирую объект размером 50 мм, а после сохранения и импорта в графическую программу он получается в 5-6 раз больше. Подскажите в чем проблема? Может у меня настройки неверно стоят? мой адрес abk@inbox.lv
ОтветитьУдалить> у меня стоит Ubuntu 10.10 и сканер Epson Perfection 4180.
ОтветитьУдалить> не могу добиться чтоб работал. если кто решил проблему отпишите
> пожалуйста на kos.mik@mail.ru очень нужно.
у меня дебиан и сканер Epson Perfection 4180.
xsane запускает сканер ток из под root terminal...8-(
как избавиться от фиолетового фона при сканировании,сканер hp scanjet g3010 , дров нигде нет именно на линукс,он распознается,но видимо драйвер не подходит,кто что посоветует. так нихотел покидать эту ось но видимо прийдется,очень нелегко с дровами на линукс!
ОтветитьУдалитьКак изменить каталог для сохранения сканов по умолчанию?
ОтветитьУдалитьДебиан Wheeze видит МФУ Canon MP 235 только в руте, пользователь создан balaban@192-168-0-100:~$ id
ОтветитьУдалитьuid=1000(balaban) gid=1000(balaban) группы=1000(balaban),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),105(scanner),110(bluetooth),111(netdev)
balaban@192-168-0-100:~$
, но без рута вместо сканера определяется веб камера и сканер не находит