Инструменты пользователя

Инструменты сайта


ru:software:openwrt:printserver

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
Последняя версияСледующая версия справа и слева
ru:software:openwrt:printserver [2021/01/16 03:07]
root
ru:software:openwrt:printserver [2021/01/20 20:11]
root
Строка 2: Строка 2:
 Эта инструкция по созданию сервера печати на базе OpenWRT.\\ Эта инструкция по созданию сервера печати на базе OpenWRT.\\
 Имеющиеся в продаже готовые решения примитивны и неоправданно дорого стоят.\\ Имеющиеся в продаже готовые решения примитивны и неоправданно дорого стоят.\\
 +Из всех имеющихся на рынке готовых решений только Zyxel Keenetic на старой прошивке версии 1 (возможно на новых тоже) может автоматически загружать прошивку в принтер, но это не сервер печати а WiFi роутер.\\
  
  
 ===== Features ===== ===== Features =====
-  * возможность получить и установить свежую прошивку +  * Возможность получить и установить свежую прошивку 
-  * широкий выбор аппаратной платформы +  * Широкий выбор аппаратной платформы 
-  * поддержка IPv6, DHCPv6 и тп +  * Поддержка IPv6, DHCPv6 и тп 
-  * поддержка USB хабов +  * Поддержка USB хабов 
-  * поддержка WiFi (встроенного или через дополнительный PCI/USB адаптера) +  * Поддержка WiFi (встроенного или через дополнительный PCI/USB адаптера) 
-  * возможность одновременной работы с несколькими принтерами +  * Возможность одновременной работы с несколькими принтерами 
-  * автоматическая загрузка прошивки в принтер при включении сервера печати или принтера+  * Автоматическая загрузка прошивки в принтер при включении сервера печати или принтера
  
  
Строка 68: Строка 68:
  
 ==== Функционал ==== ==== Функционал ====
-При подключении принтера скрипт автоматически+При подключении принтера [[http://www.netlab.linkpc.net/download/software/openwrt/print_server/10-prnt-helper|скрипт]] автоматически
   - создаёт symlink /dev/PRINTER_SERIAL_NUMBER на /dev/usb/lpX - это нужно чтобы при наличии двух одинаковых принтеров они всегда получали один и тот же TCP порт, не зависимо от порядка включения/загрузки   - создаёт symlink /dev/PRINTER_SERIAL_NUMBER на /dev/usb/lpX - это нужно чтобы при наличии двух одинаковых принтеров они всегда получали один и тот же TCP порт, не зависимо от порядка включения/загрузки
   - загружает прошивку с именем ${DEV_VID}-${DEV_PID}.dl из /etc/fw в принтер   - загружает прошивку с именем ${DEV_VID}-${DEV_PID}.dl из /etc/fw в принтер
Строка 94: Строка 94:
 **20051028_hp1018.dl** - прошивка к которой уже добавлены нужные заголовки.\\ **20051028_hp1018.dl** - прошивка к которой уже добавлены нужные заголовки.\\
 Подробнее про прошивки и где/как их добывать можно прочитать тут [[ru:software:win:print:fw_uploader|Printer firmware uploder / converter]] Подробнее про прошивки и где/как их добывать можно прочитать тут [[ru:software:win:print:fw_uploader|Printer firmware uploder / converter]]
- 
- 
- 
-==== Персистентность ==== 
-Чтобы скрипт и файлы прошивок сохранялись в бэкапах конфигурации а так же при обновлении нужно проделать следующее: 
-  - Переходим в [[http://192.168.1.1/cgi-bin/luci/admin/system/flash|System->Backup / Flash Firmware]], вкладка **Configuration** 
-  - Добавляем текст: <code>/etc/hotplug.d/usbmisc/10-prnt-helper 
-/etc/fw/*</code> 
-  - **Save** 
  
  
Строка 117: Строка 108:
  [ ! -c "/dev/usb/${_LPNAME}" ] && continue;  [ ! -c "/dev/usb/${_LPNAME}" ] && continue;
  _DEVPATH=`echo "${_LPDIR_PATH}" | sed -e 's|/sys||'`  _DEVPATH=`echo "${_LPDIR_PATH}" | sed -e 's|/sys||'`
- echo "DEVNAME=usb/${_LPNAME} DEVPATH=${_DEVPATH}"+ echo "Force hotplug for: DEVNAME=usb/${_LPNAME}"
  ACTION=add DEVNAME="usb/${_LPNAME}" DEVPATH="${_DEVPATH}" /etc/hotplug.d/usbmisc/10-prnt-helper  ACTION=add DEVNAME="usb/${_LPNAME}" DEVPATH="${_DEVPATH}" /etc/hotplug.d/usbmisc/10-prnt-helper
 done</code> done</code>
   - **Save**   - **Save**
 +
 +
 +
 +==== Персистентность ====
 +Чтобы скрипт и файлы прошивок сохранялись в бэкапах конфигурации а так же при обновлении нужно проделать следующее:
 +  - Переходим в [[http://192.168.1.1/cgi-bin/luci/admin/system/flash|System->Backup / Flash Firmware]], вкладка **Configuration**
 +  - Добавляем текст: <code>/etc/hotplug.d/usbmisc/10-prnt-helper
 +/etc/fw/*</code>
 +  - **Save**
 +
 +
 +
 +===== p910nd =====
 +  - Переходим в [[http://192.168.1.1/cgi-bin/luci/admin/services/p910nd|Services->p910nd - Printer server]]
 +  - Включаем **enable**
 +  - В поле **Device** вместо **/dev/usb/lp0** можно прописать **/dev/DF32CGE** (то что было в [[http://192.168.1.1/cgi-bin/luci/admin/status/syslog|Status->System Log]])
 +  - Остальное на своё усмотрение
 +  - **Save & Apply**
 +
 +
 +
 +====== Обновление ======
 +  - Через WebUI загрузить squashfs образ (для NanoPi NEO)
 +  - Заново установить компоненты
 +  - Перезагрузить
 +
 +
 +
 +====== Заключение ======
 +Не рассмотрена настройка фаервола, безопасности и прочих базовых возможностей OpenWRT.\\
 +Расширенные функции, такие как автоматическое обнаружение тоже не настраивались, возможно это будет сделано позже и данная заметка будет дополнена.\\
 +\\
 +Ретроспективно, это четвёртая реализация сервера печати для HP 1018 за последние 14 лет:
 +  - Сервер печати TL-PS110U + [[ru:software:win:print:fw_uploader|Printer firmware uploder / converter]]
 +  - FreeBSD 9 на Equeleus 8132, самописный демон dprint и скрипт под devd для загрузки прошивки (почти не использовалось)
 +  - Zyxel Keenetic Giga - проработал долго, пока роутер не вышел из строя, после него использовался опять первый вариант
 +\\
 +Основная причина создания этого решения - необходимость автоматической загрузки прошивки в принтер, при этом более качественных и компактных принтеров, не прихотливых в обслуживании сейчас на рынке нет.\\
 +Возможности заменить плату на аналогичную с флешкой под прошивку и сетью - теоретически есть, но времени на реализацию уйдёт больше при не гарантированном результате.\\
 +\\
 +В планах на будущее:
 +  * Добавить автоматическое обнаружение
 +  * Установить NanoPi NEO в металлический корпус
 +  * Подключить к NanoPi NEO сканер и настроить кнопки на нём для сканирования на сервер и копирования
 +====== Источники ======
 +
 +[[https://openwrt.org/docs/guide-user/services/print_server/p910nd.server|p910nd Printer Server]]\\
 +[[https://openwrt.org/docs/guide-user/base-system/hotplug|Hotplug]]\\
 +[[http://osboy.ru/blog/openwrt/openwrt-hotplug.html|Настройка Hotplug на OpenWRT]]\\
 +[[ru:software:win:print:fw_uploader|Printer firmware uploder / converter]]\\
 +[[ru:hardware:printer:gdi|GDI printer and net print server]]\\
 +[[http://manpages.ubuntu.com/manpages/trusty/man1/usb_printerid.1.html|usb_printerid]]
 +
 +
  
ru/software/openwrt/printserver.txt · Последнее изменение: 2021/02/28 01:59 — root

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki