Войти
A+ A A-

Установка и настройка принт-сервера CUPS на Orange Pi Zero

Принт-сервер (англ. print server — сервер печати) — это программное обеспечение или устройство, которое позволяет использовать принтер пользователями внутри локальной сети.

В качестве такого устройства могут быть роутеры, оснащенные портами для подключения USB-устройств, отдельные устройства с портами USB и Ethernet, а также продвинутые модели принтеров, обладающие поддержкой беспроводной печати.

Но если вы являетесь обладателем принтера без поддержки беспроводной печати, можно создать Принт-сервер, подключив принтер по средствам USB к одноплатному компьютеру Orange Pi Zero и настроив на нем сервера печати CUPS (Common UNIX Printing System).

CUPS позволяет управлять заданиями печати, обеспечивает сетевую печать с использованием стандарта IPP (интернет протокол печати), поддерживая также PostScript описание принтеров (PPD) и автоопределение сетевых принтеров, а также позволяет осуществлять администрирование через web-интерфейс.

Необходимое оборудование

Для реализации сервера печати нам понадобится:

  • USB-принтер
  • Orange Pi Zero (или другая) + mini SD card (на 2 ГБ или более)
  • Локальная сеть

Предварительно на свой Orange Pi необходимо установить операционную систему Armbian (Debian), предназначенную для однопалатных компьютеров на базе ARM-процессоров. Как установить Armbian в данной статье не будем рассматривать, так как об этом в Интернете имеется много статей.

Установка и настройка принт-сервера CUPS

В стандартных репозиториях Debian (Armbian на базе Debian) имеется пакет CUPS, установить который необходимо через терминал следующей командой:

sudo apt-get install cups avahi-daemon avahi-discover

Дополнительно можно установить Foomatic, который является одновременно базой описаний моделей принтеров, а также интерфейсом настройки:

sudo apt-get install foomatic-db foomatic-db-engine

Для управления принтерами добавим пользователя pi в группу lpadmin. Следует отметить, что если у вас имя пользователя отличается от pi, необходимо указать его.

sudo adduser pi lpadmin

Теперь требуется отредактировать файл конфигурации:

sudo nano /etc/cups/cupsd.conf

При использовании настроек CUPS по умолчанию административный веб-интерфейс доступен только локально (из самой апельсинки).

Нам необходимо настроить доступ для любого устройства в локальной сети, поэтому нужно найти и закомментировать строку Listen localhost:631, а вместо нее добавить строку Port 631:

# Only listen for connections from local machine.
#Listen localhost:631 ///закомментировали строку
Port 631 ///добавили строку 

По умолчанию CUPS слушает назначенный для себя порт 631 только с локальной машины, а после замены он будет слушать обращения к этому порту с любого устройства.

Далее необходимо открыть доступ к админ-панели по локальной сети, добавив параметр Allow @Local в следующие участки строк:

# Restrict access to the server...
<Location />
  Order allow,deny
  Allow @Local 
</Location>
 
# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
  Allow @Local 
</Location>
 
# Restrict access to configuration files...
<Location /admin/conf>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
  Allow @Local 
</Location>

Не забываем сохранить файл, а затем перезапустить CUPS для применения проделанных изменений следующей командой:

sudo service cups restart

Если все прошло успешно, то веб-интерфейс CUPS будет доступен из браузера по адресу http://IP-адрес:631.

Установка и настройка принтера

На следующем этапе необходимо установить и настроить принтер.

Итак, подключаем принтер через USB к Orange Pi, убеждаемся, что принтер включен и заходим в веб-интерфейс CUPS (в моем случае http://192.168.0.59:631).

 Переходим на вкладку «Администрирование»:

 

Необходимо убедиться, что установлена галочка на «Разрешить совместный доступ к принтерам, подключенным к этой системе» (в разделе «Параметры сервера») и нажимаем на кнопку «Добавить принтер»:

В нем выбираем свой принтер из списка обнаруженных системой. В моем случае это принтер HP LaserJet 1010. Нажимаем «Применить» и выбираем подходящий драйвер из списка драйверов для своей модели принтера. Однако если таковой отсутствует — скорее всего подойдет драйвер от соседней модели того же модельного ряда. В моем случае устанавливается драйвер для модели HP LaserJet 1015. Далее кликаем «Добавить принтер».

В разделе «Настроить параметры принтера» жмем кнопку «Сохранить параметры»:

Принтер успешно установлен!

Теперь можно распечатать пробную страницу. Для этого переходим на вкладку «Принтеры», выбираем добавленный принтер и печатаем пробную страницу через меню «Печать пробной страницы»:

Стоит отметить что, если с пробной страницей возникают проблемы (принтер ее не печатает или выдает пустые листы) — значит проблема в подборе драйвера. Нужно удалять установленный принтер и устанавливать его заново, указывая при этом другой драйвер.

Подключение и настройка сетевого принтера к Windows ПК

После успешной настройки принтера на принт-сервере CUPS нужно подружить этот принтер с компьютером, работающий под управлением Windows.

Первым делом из адресной строки браузера копируем сетевой путь принтера:

Далее будут описаны операции по установке принтера для ОС Windows 10.

Итак, через «Пуск» открываем «Параметры» -> «Устройства» -> «Принтеры и сканеры».

Кликаем «Добавить принтеры или сканеры» и ждем. После безуспешного поиска нового устройства выбираем «Необходимый принтер отсутствует в списке». В открывшемся окне выбираем «Выбрать общий принтер по имени» и в поле для ввода вставляем скопированный ранее путь и жмем «Далее»:

 

В мастере установки принтера выбираем необходимый принтер и жмем «ОК»

Установка принтера завершается. Теперь его можно использовать также как принтер установленный непосредственно к компьютеру.

Стоит отметить, что теперь Orange PI можно спрятать под корпус принтера, чтобы не занимать дополнительное место на полке. В моем случае также удалось и запитать устройство от 5V выдаваемых блоком питания принтера.