Linux в вечерней школе: настройка принтера HP LaserJet 1005 и сканера BENQ 5000U в Xubuntu Linux 7.10

Сразу после рассылки письма по всем школам города о проведении Mandriva Install Party 2007 в Краснодаре при помощи городского научно-методического центра, нам позвонили из вечерней школы и попросили прийти поставить Linux, т.к. привезти компьютеры возможности нет, а очень нужно. На месте выяснилось, что в школе нелицензионный софт и всякие органы пишут письма -- закупить лицензию или перейти на Линукс. И потом, как сказал зам. директора, он слышал что там "вирусов нет" и хотел бы попробовать. В вечерней школе нет компьютерного класса и всего два слабеньких компьютера. Как мы долго ставили Xubuntu Alternate на Celeron 700 c 98Мб памяти лучше не рассказывать, в общем в итоге из оборудования трудности были только с принтером HP LaserJet 1005 LPT и сканером BENQ 5000U USB. Сегодня все настроили и я записал последовательность действий.

С принтером проблема в необходимости скачивания и установки Firmware от Windows-драйвера, который вшивается компьютером в принтер при каждой перезагрузке девайса. По соображениям лицензионности Firmware этот не входит в бесплатный Linux и его надо докачивать и устанавливать, для чего написан штатный скрипт getweb. Он к сожалению содержит ошибку, еще с версии Ubuntu 7.04 качает не с того хоста и поэтому HP LaserJet 1000/1005/1018/1020 настраиваются с бубном. Буквально неделю назад багу пофиксили и даже решили доставание этих прошивок встроить в менеджер проприетарных драйверов. В общем можно и вручную поправить адреса в скрипте getweb или обновить из репозитариев пакеты foo2zjs и hplip и дальше выполнить:

getweb 1005
(или другую модель принтера, скачается и распакуется фирмвара)
sudo arm2hpdl sihp1005.img > sihp1005.dl
(это какое-то хитрое шаманство)
sudo cp sihp1005.dl /usr/share/foo2zjs/firmware/sihp1005.dl
(копируем где он должен быть)

Для USB-принтера HP LJ 1018 этого было достаточно. А LPT-принтер надо правильно добавить. Делается это и в Ubuntu и в Xubuntu одинаково через программу настройки принтеров. В ней нужно добавить модель принтера, что для 1005 по крайней мере можно сделать двумя путями, причем самый очевидный не работает :) Если добавить драйвер HP так что строка адреса принтера будет выглядеть hp:/par/hp_LaserJet_1005_series?device=/dev/parport0 или hp:/par/hp_LaserJet_1005_series?device=/dev/lp0, то просто не печатает. Нужно на первом экране визарда выбрать просто LPT#, а потом уже HP, тогда строка адреса принтера будет типа /dev/lp0 или /dev/parport0. А как узнать какое именно устройство соответствует порту? Ну не знаю, я скомандовал sudo cat /usr/share/foo2zjs/firmware/sihp1005.dl > /dev/parport0, мне ответили что-то невнятное, потом сказал sudo cat /usr/share/foo2zjs/firmware/sihp1005.dl > /dev/lp0, мне ответили что нет прав, сказал sudo chmod 777 /dev/lp0 и повторил sudo cat /usr/share/foo2zjs/firmware/sihp1005.dl > /dev/lp0 -- принтер радостно захрюкал!

В процессе еще выяснилось что в логе CUPS пишется такое:

[11/Dec/2007:19:35:55 +0300] CUPS-Delete-Printer: Unauthorized
[11/Dec/2007:19:36:24 +0300] [cups-driverd] Unable to open PPD directory "/opt/share/ppd": No such file or directory
[11/Dec/2007:19:40:11 +0300] cupsdAuthorize: Local authentication certificate not found!
[11/Dec/2007:19:40:11 +0300] cupsdAuthorize: Local authentication certificate not found!
[11/Dec/2007:19:41:10 +0300] cupsdAuthorize: Local authentication certificate not found!
[11/Dec/2007:19:41:11 +0300] cupsdAuthorize: Local authentication certificate not found!
[11/Dec/2007:19:41:20 +0300] cupsdAuthorize: Local authentication certificate not found!
[11/Dec/2007:19:41:29 +0300] [cups-driverd] Unable to open PPD directory "/opt/share/ppd": No such file or directory
[11/Dec/2007:19:42:25 +0300] cupsdAuthorize: Local authentication certificate not found!
[11/Dec/2007:19:42:25 +0300] CUPS-Add-Modify-Printer: Unauthorized

Когда это было я не помню, кажется при настройке через драйвер HP, может потому он и не заработал.

Что же до сканера, ему тоже нужно положить куда-нибудь фирмварь от Windows-драйвера и прописать её в /etc/sane.d/snapscan.conf так:

firmware /usr/share/sane/snapscan/u96v121.bin

Причем заработало не с первого раза, а только с фирмварой 20FCV112.bin которая для этого сканера указана на http://snapscan.sourceforge.net/ и находится в драйвере конкретной версии 6.2.5000U на сайте BENQ (распаковать, найти в каталоге Bin и скопировать в /usr/share/sane/snapscan). При запуске xsane из консоли выяснилось, что в процессе сканирования вылет происходит из за невозможности калибровки:

[snapscan] calibrate: reading calibration data (2 lines)
[snapscan] usb_read Only 0 bytes read
[snapscan] read_calibration_data: snapscan_cmd command failed: Error during device I/O
[snapscan] calibrate: read_calibration_data command failed: Error during device I/O
[snapscan] sane_snapscan_start: calibration failed.

Нашел соответствующую багу, где люди пишут что в ранних (1.0.17) версиях sane это работало, а теперь поломалось. Чтобы даунгрейдиться надо снести всю систему печати, которую я только что настроил, по причине зависимости кучи пакетов печати от libsane (с чего бы?). Под Debian люди собирают libsane 1.0.17 из сорсов. Решение простое -- в опциях сканирования выбрать черно-белый вариант. При отсутствии цвета калибровка не происходит и все сканится. Сканер в школе используется вместо ксерокса, так что этого оказалось достаточно.

Ну что, сложно? Я лично считаю, что ни одна нормальная информатичка, зам. директора или тем более секретарша не в состоянии завести такой принтер в последней Ubuntu Linux. Так что проекту Linux в школах работы хватит, хотя сомневаюсь что у них руки дойдут до допиливания визардов настройки периферии. При отсутствии более-менее опытного линуксоида, внедрение Linux в школе обречено на провал, о чем мы недавно говорили с учителем информатики эксперементальной школы N25 г. Краснодара, где, как выяснилось, вся школа уже год как переведена под Ubuntu Linux. Но об этом попозже.

Из нерешенных проблем в этой школе осталась программа ведения базы учеников, сохраняющая все в mdb-файл MS Access и звонящая прямо по модему в гороно (замечу, в школе есть интернет, еще и модем стоит для конекта с гороно!) и отправляющая файл. Эта программа вроде бы во всех школах города стоит, так что мы с ней не раз встретимся еще. Все контакты авторов я записал. Будем спрашивать с них кроссплатформную версию.

P.S. В школе есть Интернет и мы его настроили на обоих компьютерах под Linux при помощи Антона из NCLUG (он знает на память адреса DNS-серверов городских провайдеров :). Настраивая принтер сегодня, я прямо из школы в блог скидывал что в консоли набирал, чтобы потом не забыть, и случайно опубликовал кусок с командами и логами. Прошу прощения что все его заагрегировали :) GiNeR тут же, заметив сообщение об ошибке в команде:

sudo arm2hpdl sihp1005.img > /usr/share/foo2zjs/firmware/sihp1005.dl
bash: /usr/share/foo2zjs/firmware/sihp1005.dl: Permission denied

предложил вариант без копирования, перенаправлением ввода-вывода под sudo :)

arm2hpdl sihp1005.img | sudo tee /usr/share/foo2zjs/firmware/sihp1005.dl

Поправочка: arm2hpdl sihp1005.img | sudo tee /usr/share/foo2zjs/firmware/sihp1005.dl > /dev/null

ну и получилось у кого-то это повторить?

На Fedora 8 таким образом установился 1018. Все нормуль! Автору респект!

Ну, наконец-то, нашел как настроить сканер BENQ 5000U под Линух. Долго икал, автору респект.

Post new comment

The content of this field is kept private and will not be shown publicly.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Copy the characters (all lower case) from the image.