Fedora Core 4.
Вначале подключался сканер Epson Perfection V100. Вспоминая как пробовал подключить Mustek Bear Paw 2400 TA Pro. (кстати так и не получилось) испытывал огромную тоску. Однако. Попал на страницу
, выяснилось есть драйверы iscan. Нашел, скачал , установил
# rpm -ihv iscan-2.3.0-1.c2.i386.rpm
# iscan-plugin-gt-s600-2.0.0-1.c2.i386.rpm
и все сразу заработало :) да еще и от имени простого пользователя.
$sane-find-scaner
сработал
$scanimage -L
сработал
$xsane
сработал
в gimp идем в
Расш. - Acquire Image — Scanning (iscan)...
тоже заработало сразу. Вобщем сказка а не установка сканера.
Далее подключался сканер Epson Perfection V100 в Debian.
1. download from http://www.avasys.jp/english/linux_e/dl_scan.html
iscan_2.19.2-1_i386.deb
iscan-plugin-gt-s600_2.1.0-2_i386.deb
fix-udev-rules.sh
2. #./fix-udev-rules.sh
#iscan_2.19.2-1_i386.deb
#iscan-plugin-gt-s600_2.1.0-2_i386.deb
3. $addgroup $USER scanner
4. logout/login
5. #apt-get install sane
#apt-get install sane-utils
#apt-get install xsane
#apt-get install gimp2.0-quiteinsane
6. gimp - file - create - QuiteInsane
or
gimp - file - xsane
Вообще при подключении сканера нужно чтобы успешно выполнились следующие этапы:
USB сканер
#cat /proc/bus/usb/devices
в списке должно присутствовать устройство класса USB Scanner
SCSI сканер
#lspci
в списке устройств должен быть scsi контроллер к которому сканер подсоединен, также в /proc/scsi/scsi должен присутствовать название сканера
#sane-find-scanner
#scanimage -L
#xsane (можно риснуть от рута но необязательно)
а потом тоже самое от имени простого пользователя.
Далее был сканер Umax Astra 2100S в Fedora Core.
Это scsi сканер. В комплекте со сканером был scsi pci контроллер через который сканер подсоединялся к компу.
Выполнил
#/sbin/lspci
сканера в списке нет но есть scsi контроллер
В Linux scsi контроллер опрелелялся как
00:0a.0 SCSI storage
controller: Advanced System Products, Inc ABP940-U / ABP960-U (rev
03)
далее выяснилось что в /proc/scsi/scsi должна быть инфо о сканере подсоединенном к контроллеру. Но такого каталога не было вообще. Дальше выяснилось что нужна команда
#modprobe sg
SCSI sussystem initialized
появился /proc/scsi/scsi
потом выяснилось что нужна еще команда
#modprobe advansys
теперь
#cat /proc/scsi/scsi
выдал
Attached devices:
Host:
scsi0 Channel: 00 Id: 05 Lun: 00
Vendor: UMAX Model: Astra 2100S
Rev: V1.0
Type: Scanner ANSI SCSI revision: 02
далее
#sane-find-scaner
found SCSI scanner "UMAX
Astra 2100S V1.0" at /dev/sg0
# Your SCSI scanner was
detected. It may or may not be supported by SANE. Try
# scanimage
-L and read the backend's manpage.
Далее
#scanimage -L
device `umax:/dev/sg0'
is a UMAX Astra 2100S flatbed scanner
далее пробуем от имени
простого пользователя
$sane-find-scanner
сканер не обнаружен
но это естественно, теперь лезем в /dev/ и меняем права на /dev/sdg0
#chmod 666 ./dev/sdg0
(эт не совсем хорошо, но на скорую руку пойдет)
повторяем
$sane-find-scanner
found SCSI scanner "UMAX
Astra 2100S V1.0" at /dev/sg0
# Your SCSI scanner was
detected. It may or may not be supported by SANE. Try
# scanimage
-L and read the backend's manpage.
Порядок.
$scanimage -L
device `umax:/dev/sg0' is a UMAX Astra 2100S flatbed scanner
порядок
$xsane
нажимаем на сканировать сканер дергается моргает и на этом все.. ок. оставляем его пока. Кстати заставить работать этот сканер под windows тоже непросто.
Далее был сканер Mustek BearPaw 2448 PlusII в Fedora Core.
$cat /proc/bus/usb/devices
T: Bus=01 Lev=01 Prnt=01
Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc
) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=055f ProdID=021a Rev=
1.00
S: Product=USB Scanner
C:* #Ifs= 1 Cfg#= 1 Atr=a0
MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff
Driver=(none)
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E:
Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
$
sane-find-scanner
found USB scanner (vendor=0x055f,
product=0x021a [USB Scanner], chip=GT-6816) at libusb:001:002
#
Your USB scanner was (probably) detected.
$ scanimage -L
device
`gt68xx:libusb:001:002' is a Mustek BearPaw 2448 TA Plus flatbed
scanner
$xsane
вначале не сработало. Потом смотрю в консоли откуда запускался xsane надпись
мол не могу найти прошивку в
/usr/share/sane/gt68xx/a2nwf.usb или
/usr/share/sane/gt68xx/A2NFw.usb
скачал драйвер для windows для Mustek BearPaw 2448 Plus так как для Mustek BearPaw 2448 Plus II не было. Опробовал в windows. Работает. (где то встречал если не ту прошивку подсунуть сканеру то можно выкидывать будет). Прошивка лежала в C:\Windows\Temp\Winxp\ A2NFw.usb
скопировал ее в /usr/share/sane/gt68xx.
#chmod 644 ./A2NFw.usb
но xsane опять написал что не может найти прошивку. Переименовал файл в a2nwf.usb и заработало.
сканирование заработало, только вначале после нажатия сканирования был затык как у предыдущего. Нажимаем сканировать в xsane лампочка моргает в сканере и пауза. А потом в консоли откуда xsane запускал смотрю надпись "прогрев лампы". После паузы прогрева сканирование прошло успешно :).
а вот scsi сканер не лампу прогревает а что то другое пока неизвестно.
Далее был сканер Mustek BearPaw 2448 PlusII в Debian.
#apt-get install sane
#apt-get install sane-utils
#apt-get install xsane
устанавливаем плагин для gimp чтобы сканировать прям из него.
#apt-get install gimp2.0-quiteinsane
добавляем пользователя в группу scanner
#addgroup user scanner
не забываем делать логоут/логин чтоб изменение с группами вступило в силу.
Аналогично предыдущему примеру копируем прошивку в /usr/share/sane/gt68xx
это все. Никакого трахое** с хотплаг в дебиан нет. Пакета Hotplug вообше нет в squeeze.
Лирическое отступление про дебиан. Люди человеки бросайте эту федору нах*** и перходите на дебиан. И ужас обновления того или иного приложения уйдет как страшный сон. Вся эта хрень с кучей репозитариев 2-3-4-28 core extras update болььше не посетит вас. Не способность разрешить зависимости yum потому что вы какую то ветвь недоподключили и невозможность спокойно обновить систему полностью — вся эта х*** присуая федора больше не посетит вас. Если б я только знал это раньше. Весь этот rpm -hell. В дебиан приложения работают гораздо быстрее и качественеее это видно сразу невооруженным глазом. Хочешь апдейтнуть опенофис-пожалуйса нет проблем. Также например в опенофис что в федора очень проблематично открыаются docx. Он их жует жует всю систему подвешивает а в итогезачастую прложение вываливается и закрывается. В дебиан такой х*** нет . Докиксы открываются просто влет. Наконецто можно рабоатать более менее комфортно в опера и тем более в таком тормозе как файрфокс. Более менее сносно а по сравнению с федора просто супер открывается куча вкладок и при этом не фризится система. В общем дебиан по сравнению с федора с точки зрения простоты обновления приложений употребления оперативной памяти и скорости работы приложений просто божия благодать. Конец лирического отступления.
Кое какие полезные источники.
Управление аппаратными средствами в Linux с помощью udev (udev device driver hardware linux usb scanner)
Sane и devfs (хотя ее у меня нет)
описание опыта работы со сканерами Mustek + Sane
про udev по крайне мере не так бесполезно как обычно бывает в man, а что то можно и понять можно прочитать в /usr/share/doc/udev. там несколько html не связанных файлов (то есть не протыкав во всех подпапках можно и пропустить отдельную интересную статью). вообще в /usr/share/doc гораздо чаще хоть с какойто пользой можно читать чем в man.
=========================================================
далее про преодоление часто возникающей ситуации когда сканер видится и работает только под root. Конечно это г**** воникает только в федора а в debian такой проблемы нет.
причина этого в том что /proc/bus/sys/usb/001/005 или что то подобное имеет permissions root, root, 600 то есть записывать в него может только root а нужно чтоб и пользователь тоже имел право на запись. (файл который появляется после подключения сканера и через который с ним идет связь). можно конечно поменять в рукопашную но так придется делать после каждого включения сканера или перезагрузки да и само число будет меняться постоянно.
чтобы этого не делать вручную на помощь приходит hotplug.
проверяем установлен ли он
# rpm -qa | grep hotplug
hotplug-2004_09_23-7
#
теперь в папку /etc/hotplug/usb нужно кое чего прописать. по идее этого делать вообще то не нужно так как пакет sane-backends-1.0.15-9.i386.rpm устанавливает в /etc/hotplug/usb "необходимые файлы".
-rw-r--r-- 1 root root 48085 Мар 2 2005 /etc/hotplug/usb/libsane.usermap
-rwxr-xr-x 1 root root 1853 Мар 2 2005 /etc/hotplug/usb/libusbscanner
но они реально не работают. заглянув внутрь видим в комментариях что необходимо выполнение кучи условий: pam console, console.lock, добавление пользователя в группу scanner итд .
а вот в пакете iscan*rpm (драйвер для сканеров epson) тоже есть файлики которые прописываются в /etc/hotplug. механизм используемый в них простой ясный и эффективный - меняет пермишнс на /proc/bus/usb/001/005 на 666. и работает для любых сканеров а не только epson .
вот файлы. немного модифицированные (убраны комментарии итп)
-rwxr-xr-x 1 root root 1761 Янв 25 15:14 /etc/hotplug/usb/iscan-device
-rw-r--r-- 1 root root 1591 Янв 25 15:14 /etc/hotplug/usb/iscan.usermap
(1)
#cat /proc/bus/usb/devices | grep --color=auto -A 5 -B 4 -i scanner
T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 7 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ff(vend.) Sub=ff Prot=ff MxPS=64 #Cfgs= 1
P: Vendor=055f ProdID=0400 Rev= 0.00
S: Manufacturer=USB Scanner
S: Product=USB Scanner
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=82(I) Atr=03(Int.) MxPS= 1 Ivl=500us
#
(2)
# lsusb | grep -i mustek
Bus 001 Device 007: ID 055f:0400 Mustek Systems, Inc. BearPaw 2400 TA Pro
#
lsusb входит в пакет usbutils*rpm. чтобы его установвить #yum install usbutils
(3)
# sane-find-scanner
found USB scanner (vendor=0x055f [USB Scanner], product=0x0400 [USB Scanner]) at libusb:001:007
#
в итоге когда сканер подключается то файл отвечающий за сканер /proc/bus/usb/001/007 получает пермишнс 666. то есть в него имеет право читать и записывать пользователь. а значит xsane будет работать с правами пользователя.
далее устанавливался сканер входящий в многофункциональник HP LaserJet 1120 MFP. драйвер для него HPLIP. этот драйвер тоже записывает свои файлы в /etc/hotplug/usb но они тоже замудреные и реально не работают. файлы от iscan выручили и в этот раз.