The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Настраиваем USB принтер под Linux (print linux usb)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: print, linux, usb,  (найти похожие документы)
From: Юрий Лушня <stranger@sivash.net> Subject: Настраиваем USB принтер под Linux Настраиваем USB принтер под Linux Автор: Юрий Лушня [stranger@sivash.net] Оригинал: http://www.linuxrsp.ru/artic/ Ни для кого не секрет (а может и секрет), что 2.2.х ядра имеют встроенную поддержку USB. Если кто-то сталкивался с этой вот поддержкой, то, наверное, не очень был рад этому (может и до сих пор вспоминает с ужасом). Все дело в том, что в этой поддержке имеется куча ошибок. 2.3.х и 2.4.х имеют более улучшенную и доработанную USB поддержку, но не каждый захочет копаться с настройкой нового ядра, переустанавливать его, компилировать и т.д. К счастью, поддержка USB в 2.3.х ядрах пропатчена и может работать с ядрами 2.2.х. Для этого нужно загрузить и поставить [2]этот патч. Процедура "Патчинга" Сначала набираем uname -r. Система выводит версию ядра. Если версия вашего ядра выше чем 2.2.14, то его можно и не патчить. Вам просто потребуется перекомпилировать ядро (об этом мы поговорим ниже) и поставить поддержку USB (я использую Linux-Mandrake 7.0, версия ядра - 2.2.14-2.2.15mdk). Инструкция по компиляции ядра находится [3]здесь, а если проблемы с доступом в INTERNET, то данную инструкцию можно просмотреть в /usr/doc/kernel-HOWTO (по-моему). Сейчас, практически, в каждом релизе Linux есть русские man'ы, поэтому с компиляцией ядра, я думаю, у вас проблем не возникнет. Если же у вас ядро "младше" версии 2.2.14, тогда придется его пропатчить. Для этого идем [4]сюда и закачиваем патч, написанный [5]Vojtech Pavlik Если с этим адресом проблемы, то можно зайти на [6]этот сайт и по поиску найти нужный патч (usb-2.4.0-test2-pre2-for-2.2.16-v3.diff.gz) или ссылку на другой сайт с нужной информацией (в данном случае - патчем). После получения данного патча, с помощью команды cd заходим в директорию, в которую скопирован патч и набираем [patch file name]. Одним словом, мы распаковываем этот gz. файл и устанавливаем его. На стадии распаковки данного файла возможны проблемы. Так, gunzip может "ругаться", что этот файл не с расширением .gz. Дело в том, что некоторые программы (в том числе и Mozilla) автоматически распаковывают получаемые файлы. Так что на gunzip можете не обращать внимания (если только он ругается из-за вышеописанной проблемы, а не почему-то еще :). Дальше заходим root'ом и набираем cd /usr/src/linux. Потом patch -p1 [path для вашего patch файла] Если ваш патч находится в файле /usr/downloads/usb-2.4.0-test2-pre2-for-2.2.16-v3.diff, тогда набираем patch -p1 /usr/downloads/usb-2.4.0-test2-pre2-for-2.2.16-v3.diff. Теперь набираем make menuconfig (или make xconfig если вы работаете в Х'ах). Выбираем USB Support (USB поддержку) и нажимаем ENTER. Потом выбираем: Support for USB (поддержку USB) Preliminary USB Device Filesystem A USB Controller suited to your system (USB контроллер, поддерживаемый вашей системой. С этим, я думаю, у вас проблем не возникнет, так как help в этом вопросе просто чудесный). USB Printer Support (поддержка USB принтера) Any other USB devices that you have (другие USB устройства, которые вы имеете) Проверяем настройки, сохраняем и выходим. Компилируем ядро и вносим изменения в LILO. Перезагружаемся. Если вы все нормально настроили, то при загрузке будет присутствовать сообщение о поддержке USB (support USB). После входа в систему набираем: mount -t usbdevfs usbdevfs /proc/bus/usb для монтирования USB filesystem (USB-файловой системы). Если вы хотите, чтобы эта файловая система автоматически монтировалась при запуске, то следует добавить следующую строку в /etc/fstab: usbdevfs /proc/bus/usb usbdevfs defaults 0 0. Теперь мы имеем полную поддержку USB в ядре. Переходим к следующему пункту (к непосредственной теме данной статьи) - конфигурированию USB принтера Я очень надеюсь, что вы имеете RedHat Printtool. Это чудесная программа с прекрасным интерфейсом для изменения файла /etc/printcap (здесь находятся данные вашего принтера). Эта программа также поможет вам распечатать тестовые страницы (хотя, я думаю, что при распечатке тестовых страниц могут возникнуть проблемы). Дело в том, что мне пришлось перезапускать свой lpd демон каждый раз после печати каждой тестовой страницы :(. Пакет Printtool поставляется вместе с RedHat и инсталлируется как часть контрольной панели. Для пользователей Debian этот пакет известен как .deb файл. Самая последняя версия (если не выпустили новее, пока я пишу эту статью) - 3.41-4. Пользователи Debian могут закачать ее по [7]этому адресу, а пользователи RedHat по [8]этому. После всех "закачек" и установок двигаемся дальше. Набираем cd /dev. Если ваша USB директория находится здесь, то набираем ls и находим файл под именем lp0. Если этот файл присутствует, тогда вам остается только сконфигурировать свой принтер с помощью пакета Printtool. А вот если этого файла нет, тогда придется его создать: mknod /dev/usb/lp0 c 180 0 Теперь вы имеете lp0, с его помощью вы сможете печатать на свой USB принтер. Если же у вас возникнут какие-нибудь проблемы с конфигурацией (конфигурированием) принтера, то рекомендую вам почитать [9]USB HOWTO Дальше. Запускаем Х'ы (как правило, startx) и конфигурируем принтер. Открываем XTerm (или другой терминал-эмулятор по выбору) и набираем printtool. "Кликаем" на кнопке Add, выбираем "Local Printer" и нажимаем ОК. Теперь переходим в текстовое окно секции "Printer Device" и набираем /dev/usb/lp0. Дальше с помощью кнопки выбора (select) выбираем "рабочий" драйвер вашего принтера. За более полной информацией обращайтесь к [10]Printing HOWTO. После выбора драйвера "кликаем" на ОК. Дальше выходим в главное окно (там должен появится ваш принтер) и печатаем ASCII и Postscript тестовые страницы. Приложение "А". Компиляция ядра Выше я привел примеры настройки USB принтера для 2.2.х ядер. Теперь я попробую ввести в тот же курс обладателей 2.3.х ядер (в том случае, если вы отказались ставить вышеуказанный патч на свою машину, даже если у вас ядро "старше" 2.2.14). Этот курс, главным образом, будет состоять из примера компиляции ядра для USB Support. Владельцам 2.2.х ядер это тоже может пригодиться. После включения всех необходимых пунктов в "USB Support" (при компиляции ядра - это описано выше) для нормальной работы USB принтера, набираем следующее (по порядку): make dep make clean make bzImage make modules make modules_install Если в процессе работы "полезут" какие-нибудь ошибки, я вам рекомендую вернуться назад к окну компиляции, а еще лучше перед этим почитать [11]Kernel-HOWTO. и попробовать сконфигурировать еще раз свое ядро. Теперь нам нужно скопировать наше новосозданное ядро в /boot директорию, чтобы LILO мог найти и новое и старое ядро при загрузке. Делаем это так: cp arch/i386/boot/bzImage /boot/vmlinuz-usb. Теперь вашим любимым редактором (Pico или Vim - не угадал?) открываем файл lilo.conf (cd /etc/lilo.conf). Находим строку (она мне очень нравится :) default=Linux. Эта строка говорит о том, что по умолчанию на вашем компьютере грузится Linux OS. Опускаемся ниже и находим строки image=/boot/vmlinuz label=Linux read-only. Меняем строку label=Linux на label=old. Этот "old" нам понадобится в том случае, если наше новое ядро с поддержкой USB не запустится (всякое бывает). Если новое ядро не запускается, тогда в LILO набираем "old" (без кавычек) и пробуем скомпилировать старое ядро ПРАВИЛЬНО (читайте Kernel-HOWTO). Теперь вводим еще одну секцию в lilo.conf (желательно выше той секции, где мы ввели label=old): image=/boot/vmlinuz-usb label=Linux read-only Как вы поняли, эта секция вводит в LILO информацию о том, что у нас появилось новое ядро (с поддержкой USB). Теперь оно будет грузиться по умолчанию. Сохраняем введенную информацию и выходим из editor'а. Набираем в консоли lilo. Если нет никаких ошибок, то остается только набрать shutdown -r now (для перезагрузки системы). После перезагрузки, LILO будет ждать от вас дальнейших "указаний". Вы можете набрать old (для загрузки старого ядра - в том случае, если новое ядро сконфигурировано неправильно и выдает ошибки), linux (для загрузки нового ядра с поддержкой USB) или нажать TAB для вывода всех присутствующих операционных систем на вашем ПК. УДАЧИ При написании данной статьи были использованы следующие материалы: сайт [12]Linux-USB.org (на этом сайте находится куча документации, в том числе и USB-HOWTO, а также link'и на различные сайты, где упоминается слово Linux. Одним словом, не проходите мимо) [13]Linuxdoc.org (документации - видимо-невидимо. Больше документации я видел только на русских сайтах, например, [14]здесь :) References 2. http://www.suse.cz/development/usb-backport/usb-2.4.0-test2-pre2-for-2.2.16-v3.diff.gz 3. http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html 4. http://www.suse.cz/development/usb-backport/usb-2.4.0-test2-pre2-for-2.2.16-v3.diff.gz 5. mailto:vojtech@suze.cz 6. http://www.linux.org/ 7. http://www.debian.org/Packages/frozen/admin/printtool.html 8. http://w3.linux.tucows.com/x11html/preview/019-001-006-005C.html 9. http://www.linux-usb.org/USB-guide/book1.html 10. http://www.linuxdoc.org/HOWTO/Printing-HOWTO/index.html 11. http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html 12. http://www.linux-usb.org/ 13. http://www.linuxdoc.org/ 14. http://www.linuxrsp.ru/

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру