Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Как на Debian настроить сервер сетевых принтеров и сканеров USB

Оригинал: How to set up a USB network printer and scanner server on Debian
Автор: Gabriel Canepa
Дата публикации: August 12, 2014
Перевод: Н.Ромоданов
Дата перевода: октябрь 2014 г.

Предположим, что вы хотите в вашей домашней/офисной сети настроить сервер печати Linux, но у вас в наличии есть только принтеры USB (поскольку они значительно дешевле, чем принтеры, у которых есть встроенный разъем Ethernet или беспроводное соединение). Кроме того, а что, если одно из этих устройств является многофункциональным устройством, то вы также захотите использовать в сети встроенный в устройство сканер? В этой статье будет расказано, как установить и использовать в сети многофункциональное устройство USB (струйный принтер и сканер Epson CX3900), лазерный принтер USB (Samsung ML-1640), и в качестве дополнительного бонуса - принтер PDF, причем все на сервере GNU / Linux Debian 7.2 [Wheezy].

Даже при том, что эти принтеры несколько устарели (я купил многофункциональное устройство Epson в 2007 году, а лазерный принтер - в 2009 году), я надеюсь, что то, что я узнал в процессе их установки, также можно применить к более новым моделям тех же самых или других изготовителей: некоторые драйверы доступны в виде бинарных пакетов .deb, тогда как другие можно установить непосредственно из репозиториев. В конце концов, это те основные принципы, которые представляют собой интерес.

Исходная ситуация

Чтобы настроить сетевой принтер и сканер, мы будем использовать пакет CUPS, который в Linux / UNIX / OSX является системой печати с открытым исходным кодом.

Установите на сервере Linux следующие пакеты: cups и cups-pdf:

# aptitude install cups cups-pdf 

Если возникнут проблемы: В зависимости от состояния вашей системы (эта ситуация может скорее всего случиться после неудачной ручной установки пакета или наличия неразрешенных зависимостей), система управления пакетами может перед установкой пакетов cups и cups-pdf попросить вас для того, чтобы разрешить текущие зависимости, удалить множество других пакетов. Если возникнет такая ситуация, у вас есть два варианта ее решения:

1) Установите пакеты с помощью другой системы управления пакетами, например, apt-get. Обратите внимание, что это не совсем целесообразно, поскольку текущая проблема решена не будет.

2) Выполните следующую команду: aptitude update && aptitude upgrade. Это позволит устранить эту проблему и одновременно обновить пакеты до их самых последних версий.

Конфигурирование пакета CUPS

Для того, чтобы иметь возможность получить доступ к веб-интерфейсу пакета CUPS , нам нужно, по крайней мере, чуть-чуть отредактировать файл cupsd.conf (файл конфигурации сервера для пакета CUPS). Однако прежде, чем к этому приступить, давайте сделаем резервную копию файла cupsd.conf:

# cp cupsd.conf cupsd.conf.bkp 

и отредактируем исходный файл (указаны только те разделы, которые относятся к нашей задаче):

  • Listen: Указывает, по какому указанному адресу и порту или доменному пути прослушивается сокет.
  • Location /path: Определяет управление доступом к указанному местоположению.
  • Order: Определяет порядок управления доступом по HTTP (allow, deny - разрешить, запретить или deny, allow — запретить, разрешить). Порядок allow, deny означает, что правила, разрешающие доступ, имеют приоритет над (обрабатываются до) правилами, запрещающими доступ.
  • DefaultAuthType (также справедливо для раздела AuthType): Определяет используемый по умолчанию тип аутентификации. В пакете CUPS для идентификации пользователей обычно используется файл /etc/passwd.
  • DefaultEncryption: Определяет тип шифрования, используемый для запросов, прошедших проверку подлинности.
  • WebInterface: Определяет, включен ли веб-интерфейс.
# Listen for connections from the local machine
Listen 192.168.0.15:631
 
# Restrict access to the server
<Location />
  Order allow,deny
  Allow 192.168.0.0/24
</Location>
 
# Default authentication type, when authentication is required
DefaultAuthType Basic
DefaultEncryption IfRequested
 
# Web interface setting
WebInterface Yes
 
# Restrict access to the admin pages
<Location /admin>
  Order allow,deny
  Allow 192.168.0.0/24
</Location>

Теперь для того, чтобы применить изменения, давайте перезапустим CUPS:

# service cups restart 

Для того, чтобы позволить другому пользователю (отличающегося от пользователя root) изменять настройки принтера, мы должны следующим образом добавить его в группу lp (гарантирующей доступ к самому принтера и позволяющей пользователю управлять заданиями на печать) и в группу lpadmin (использование собственных настроек печати). Если в вашей текущей настройки сети это не нужно или не желательно, то опустите этот шаг.

# adduser xmodulo lp# adduser xmodulo lpadmin 

Конфигурирование сетевого принтера через веб-интерфейс CUPS

1. Запустите веб-браузер и откройте интерфейс CUPS, который доступен по адресу http://< Адрес IP сервера>:Порт, что в нашем случае означает http://192.168.0.15:631:

2. Перейдите на вкладку Administration (Администрирование) и нажмите на Add printer (Добавить принтер):

3. Выберите ваш принтер; в данном случае - EPSON Stylus CX3900 @ debian (Inkjet Inkjet Printer), и нажмите на Continue (Продолжить):

4. Настало время выбрать название принтера и указать, хотим ли мы открыть к нему доступ с других рабочих мест:

5. Установите драйвер - Выберите изготовителя принтера и нажмите на Continue (Продолжить).

6. Если в CUPS нет встроенной поддержки принтера (не указан на следующей странице), то нам нужно будет загрузить драйвер с сайта производителя (например, http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX) и позже вернуться к этому экрану.

7. Обратите внимание, что этот предварительно скомпилированный файл .deb должен так или иначе быть перенаправлен на сервер принтера (например, с помощью sftp или scp) с машины, которую мы использовали, для его загрузки (конечно, это было бы сделать намного легче, если бы у нас вместо кнопки загрузки Download была прямая ссылка на файл):

8. После того, как мы разместили файл .deb на нашем сервере, мы его должны установить:

# dpkg -i epson-inkjet-printer-escpr_1.4.1-1lsb3.2_i386.deb 

Если возникнут проблемы: Если не установлен пакет lsb (стандартная базовая система, от которой могут быть зависимы приложения сторонних разработчиков, написанные для Linux), то установить драйвер не удастся:

Мы установим пакет lsb и затем снова попытаемся установить драйвер принтера:

# aptitude install lsb
# dpkg -i epson-inkjet-printer-escpr_1.4.1-1lsb3.2_i386.deb

9. Теперь мы можем вернуться к шагу № 5 и установить принтер:

Конфигурирование сетевого сканера

Теперь мы перейдем к настройке сервера принтера с тем, чтобы также открыть доступ к сканеру. Сначала установите пакет xsane, который является интерфейсом для пакета SANE — сокращение от Scanner Access Now Easy (Доступ к сканеру теперь проще).

# aptitude install xsane 

Далее, давайте запустим сервис saned, отредактировав для этого файл /etc/default/saned:

# Set to yes to start saned                                                     
RUN=yes

Наконец, мы проверим, запущен ли уже пакет saned (скорее всего — нет; тогда мы запустим сервис и снова проверим):

# ps -ef | grep saned | grep -v grep
# service saned start 

Конфигурирование второго сетевого принтера

С помощью пакета CUPS можно настроить несколько сетевых принтеров. Давайте с помощью CUPS настроить дополнительный принтер: Samsung ML-1640, который является лазерным принтером USB.

В пакете splix содержатся драйверы для монохромных (ML-15xx, ML-16xx, ML-17xx и ML-2xxx) и цветных (CLP-5xx, CLP-6xx) принтеров фирмы Samsung. Кроме того, в подробной информации о пакете (доступной с помощью команды aptitude show splix) указывается, что с этим драйвером могут работать некоторые модели, представляющие собой ребрендинг моделей Samsung, например, Xerox Phaser 6100.

# aptitude install splix 

Затем с помощью пакета CUPS мы установим сам принтер так, как объяснялось ранее:

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

Далее, давайте настроим на сервере печати принтер PDF с тем, чтобы вы могли с клиентских компьютеров конвертировать документы в формат PDF.

Поскольку мы уже установили пакет cups-pdf, принтер PDF был установлен автоматически, что можно проверить с помощью веб-интерфейса:

Когда выбирается принтер PDF, документы будут записываться в специально указанный каталог (по умолчанию в ~/ PDF) и их можно будет дополнительно обрабатывать командой пост-обработки.

В следующей статье мы настроим настольного клиентский компьютер с Ubuntu для доступа по сети к этим принтерам.