Настройка Принт-сервера на примере TL-WR842ND и HP LJ 1020 с использованием p910nd
Версия прошивки OpenWrt: OpenWrt Attitude Adjustment 12.09-rc1 / LuCI 0.11 Branch (0.11+svn9425)
Устанавливаем необходимые для работы принт-сервера пакеты и редактор nano, для комфортного редактирования файлов конфигурации
opkg update opkg install kmod-usb-printer usbutils p910nd nano
Многие принтеры от Hewlett Packard для печати требуют особый набор команд (прошивку), которые необходимо загружать до начала печати. Всем известный Олег, выложил некоторые прошивки на своем сайте. Посмотреть названия файлов можно по ссылке http://oleg.wl500g.info/hplj Нам нужен драйвер от HP 1020 - выбираем sihp1020.dl (А для МФУ hp M1005, например нужен sihp1005.dl) Переходим в каталог, где будем хранить прошивку и загружаем ее
cd /usr/lib/ wget http://oleg.wl500g.info/hplj/sihp1020.dl
Для того чтобы загрузка прошивки происходила автоматически, при каждом подключении принтера создадим файл
nano /etc/hotplug.d/usb/20-printer
В который добавим следующую информацию
#!/bin/sh
FIRMWARE="/usr/lib/sihp1020.dl"
DEVICE=/dev/usb/lp0
LOGFILE=/var/log/printer
if [ "$PRODUCT" = "3f0/2b17/100" -a "$ACTION" = "add" ]
then
for i in $(seq 30); do
if [ -c $DEVICE ]; then
echo "$(date) : Sending firmware to printer." > $LOGFILE
cat $FIRMWARE > $DEVICE
echo "$(date) : done." >> $LOGFILE
exit
fi
sleep 1
done
fi
Обратите внимание на запись 3f0/2b17 - это VID и PID принтера HP LJ 1020 (Первые нули удаляются 03f0). У другой модели, они будут другие. Узнать можно например из панели управления в Windows ну или подключив принтер к роутеру и набрав команду:
lsusb -v | grep ID
Откуда и получите эти данные:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 03f0:3b17 Hewlett-Packard LaserJet M1005 MFP
Следующие две команды найдены на польском форуме, истинное значение мне пока не ясно. У меня пару раз без них не работало 
uci set p910nd.@p910nd[0].enabled=1 uci commit p910nd
Открываем файл конфигурации p910nd
nano /etc/config/p910nd
где меняем один параметр - вместо /dev/lp0 пишем /dev/usb/lp0
config p910nd
option device /dev/usb/lp0
option port 0
option bidirectional 1
option enabled 1
Открываем в файрволе доступ к принтеру из сети по порту 9100, для этого редактирум файл конфигурации файрвола
nano /etc/config/firewall
В самый конец дописываем следующие строки
# Allow printer
config rule
option src lan
option proto tcp
option dest_port 9100
option target ACCEPT
Настройка почти закончена… Осталось только включить демона принт-сервера в автозагрузку и перезагрузить роутер
/etc/init.d/p910nd enable reboot
Комментариев нет:
Отправить комментарий