МФУ HP LaserJet M1120 (Снова вопрос про сканер)
Модератор: Модераторы разделов
-
- Сообщения: 666
- ОС: Suse 11
МФУ HP LaserJet M1120
В общем, непонятки какие-то со сканером. Определился корректно, принтер печатает, а вот сканер... В общем, Sane определил его, программы гоняют лампу, но вот до картинки на экране так и не доходит, принтер подвисает в состоянии "Передача данных на ПК". Бьюсь уже несколько часов, а рузльтатов так и нет :-(
-
- Сообщения: 666
- ОС: Suse 11
Re: МФУ HP LaserJet M1120
Кажется все заработало путем сноса всего что было и установки заново по минимум. Подозреваю, что причиной бага было то, что стояли 2 одинаковых пакета от разных сборщиков.
-
- Ведущий рубрики
- Сообщения: 4333
- Статус: ⚝⚠⚒⚑⚖☭☞☣☤&
Re: МФУ HP LaserJet M1120
Автор, опишите, плиз, поподробнее процедуру установки.
С указанием версии пакета и точного названия драйвера.
Форумчане будут Вам весьма признательны.
-
- Ведущий рубрики
- Сообщения: 4333
- Статус: ⚝⚠⚒⚑⚖☭☞☣☤&
Re: МФУ HP LaserJet M1120
Кстати, вот интересное по теме сабжа:
http://forum.merlin.com.ua//index.php?showtopic=21000
http://forum.merlin.com.ua//index.php?showtopic=21000
Прежде всего, будем считать, что библиотека libusb у нас уже установлена. Кажется, на сегодняшний день ее может не быть разве что в каком-нибудь очень особом варианте установки очень специального дистрибутива.
Сканер. Со сканером все оказалось довольно просто — в последней на данный момент версии пакета sane-bakends (1.0.19) есть бэкенд для МФУ HP LaserJet M1005 MFP — hpljm1005. Так вот, он же поддерживает и модель M1120. В файлике правил для udev (libsane.rules) наш девайс уже прописан:
Код: Выделить всё
SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="5617", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"
Устройство 03f0:5617 — это как раз LaserJet M1120 MFP, если кто не верит — может посмотреть вывод lsusb. Собственно, libsane.rules должен устанавливаться вместе с sane-backends, но если в каком-нибудь дистрибутиве мантейнеры зачем-то покоцают sane-backends, то теперь мы знаем, куда полезть и что дописать :) . Перегружаем правила (udevcontrol reload_rules), включаем устройство, и... все, сканер работает.
Можем проверить, если установлен xsane или какой другой фронтенд, или хотя-бы просто убедиться в наличии сканера:
Код: Выделить всё
[lexa@~]$ sane-find-scanner # sane-find-scanner will now attempt to detect your scanner. If the # 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 kernel SCSI driver for your SCSI adapter. found USB scanner (vendor=0x03f0, product=0x5617) at libusb:001:009 found USB scanner (vendor=0x03f0, product=0x5617) at libusb:1:9 # 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. # You may want to run this program as root to find all devices. Once you # found the scanner devices, be sure to adjust access permissions as # necessary. [lexa@~]$ scanimage -L device `hpljm1005:libusb:1:9' is a Hewlett-Packard LaserJet M1120 multi-function peripheral device `hpljm1005:libusb:001:009' is a Hewlett-Packard LaserJet M1120 multi-function peripheral
Кстати, права доступа (MODE="0664" в libsane.rules) лучше сразу поменять на 0666, это нам пригодится совсем скоро. Ну, и в /etc/sane.d/dll.conf оставить только одну строку — hpljm1005. Это не обязательно, просто из соображений строгого минимализма :) .
Теперь принтер. Здесь телодвижений больше. Разумеется, пакеты cups, foomatic-db, foomatic-db-engine, foomatic-filters, ghostscript у нас уже установлены, мы их установили еще до того, как пошли в магазин за принтером. Если же вдруг нет — устанавливаем.
Дальше устанавливаем hplip (hplip.sourceforge.net), опять-таки, чем свежее — тем лучше, но не меньше, чем 2.8.4. Собирать hplip рекомендую с ключиком —disable-fax-build, (по умолчанию поддержка факса включена), т.к. факса в этом устройстве нет, а лишний код с лишней функциональностью нам не нужен.
После того, как hplip установлен, руки чешутся запустить утилиту настройки hp-setup (или hp-toolbox, если мы хотим графическую конфигурилку и PyQt у нас установлен), но... рано. Дело в том, что хоть поддержка нашей модели и заявлена в hplip с версии 2.8.4, одного только hplip'а нам не хватит. Качаем c http://foo2xqx.rkkda.com/ файлик foo2zjs.tar.gz — это фильтр, конвертирующий подготовленный к печати Postscript в команды протокола XQX, с которым работает наш принтер. Разворачиваем, компилим, устанавливаем... И вот теперь запускаем hp-setup или hp-toolbox, находим принтер, соглашаемся с проприетарной лицензией, укачиваем с сайта HP firmware, без которой принтер работать не будет, подсовываем PPD-файл /usr/share/cups/model/HP-LaserJet_M1120_MFP.ppd.gz - все, готово... Перезапускаем CUPS (/etc/rc.d/cups restart), можно печатать. Можно?.. Ну, если страницей выше, при установке сканера, мы в правилах для udev прописали права 0666 — то да, можно. Дело в том, что процесс, который при печати обращается непосредственно к устройству, выполняется под учетной записью daemon. Так вот, для того, чтобы задания не только накапливались в очереди печати, но и доходили-таки до принтера, надо либо дать прочим пользователям права на запись в устройство, либо (это идеологически правильнее) включить daemon'а в группу scanner. Все, готово, можно подавать на стол :) .
Указанные действия производились под официальным CRUX 2.4 i686 и «домашней» 64-битной сборкой CRUX 2.3 — и привели к успеху.