Служба ОС Linux “cups”

by itisgood

Описание

Общая система печати UNIX («CUPS») – это кроссплатформенное решение для печати для всех сред UNIX.

Она основана на «Протоколе интернет-печати» и предоставляет полный набор услуг печати для большинства PostScript и растровых принтеров.

CUPS – это замена системы печати LPD.

Она заменяет команду lpr своей собственной, а драйверы принтера LPD – собственными версиями.

Однако CUPS похож на LPD в том, что он использует PostScript в качестве основного языка для описания страниц.

Программы для Linux (и UNIX) не знают разницы между CUPS и LPD.

Эта служба выполняет демон сервера печати.

Демон передает информацию о своих принтерах и классах в локальную сеть.

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

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

Поэтому клиенту CUPS просто нужно запустить своего демона CUPS, и он имеет доступ ко всем принтерам в локальной сети.

# yum install cups
# yum install cups-lpd

Контроль службы Cups

Скрипт для управления сервисом cups – /etc/init.d/cups.

Там, где требуется печать, включается автоматический запуск службы cups при загрузке сервера, т.е.

# chkconfig  --add cups
# chkconfig --list cups
cups            0:off   1:off   2:on    3:on    4:on    5:on    6:off

Включить службу cups-lpd, т.е.

# chkconfig cups-lpd on

Использование

# service cups
Usage: cups {start|stop|restart|condrestart|reload|status}

Примеры

# service cups status
cupsd (pid 2308) is running...
# service cups stop
Stopping cups: [ OK ]
# service cups start
Starting cups: [ OK ]
# service cups restart
Stopping cups:                                             [  OK  ]
Starting cups:                                             [  OK  ]
# service cups condrestart
Stopping cups:                                             [  OK  ]
Starting cups:                                             [  OK  ]
# service cups reload
Reloading cups:                                            [  OK  ]
# service cups status
cupsd (pid 3689) is running...

После запуска службы запускается демон cupsd, прослушивающий порт по умолчанию 631, например:

# ps -aux|grep cupsd
root     17591  0.0  0.7   9704  2080 ?        Ss   02:48   0:00 cupsd
# netstat -anp|grep cups
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      17591/cupsd
udp        0      0 0.0.0.0:631                 0.0.0.0:*                               17591/cupsd

Конфигурация

1. Контроль доступа

Центральный файл конфигурации демона cups – /etc/cups/cupsd.conf.

Его синтаксис сопоставим с синтаксисом, необходимым для файла конфигурации веб-сервера Apache.

Контроль доступа, который решает, кто может печатать, настраивается с помощью разделов «Location », т.е.

<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
</Location>

Сначала обрабатываются операторы Deny, а затем операторы allow.

По умолчанию доступ запрещен со всех хостов, кроме 127.0.0.1, localhost.

В приведенном ниже примере хостам из localhost (127.0.0.1) и сетевого адресного пространства 10.182.121.0/25 разрешено использовать принтеры в системе.

<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 10.182.121.0/25
</Location>

2. Инструмент настройки

Как только демон cups запущен, CUPS можно настроить через его веб-интерфейс – http: // localhost: 631.

При появлении запроса введите учетные данные root.

Принтеры можно добавить в конфигурацию CUPS, нажав кнопку «Администрирование» и кнопки «Добавить принтер».

Веб-интерфейс запрашивает дополнительную информацию о принтере, т.е.

  • Name– название принтера.
  • Location – физическое местоположение принтера.
  • Description  – описание принтера

Нажмите кнопку «Continue», чтобы настроить подключение принтера.

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

После завершения настройки принтера он добавляется в конфигурацию CUPS. Ниже приведен пример файла конфигурации чашки после добавления принтера:

$ cat /etc/cups/printers.conf
# Printer configuration file for CUPS v1.3.5
# Written by cupsd on 2008-04-01 11:14
<Printer Printer>
Info HP printer               <- PRINTER BRAND AND MODEL
Location 2nd Floor            <- LOCATION
DeviceURI parallel:/dev/lp0   <- PRINTER ATTACHED TO LOCAL MACHINE
State Idle
StateTime 1207041285
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

Соответствующая запись теперь появляется в файле /etc/printcap, т.е.

$ cat /etc/printcap
# This file was automatically generated by cupsd(8) from the
# /etc/cups/printers.conf file.  All changes to this file
# will be lost.
Printer|HP printer:rm=hostname.cn.oracle.com:rp=Printer:

Примечание. Не редактируйте файл /etc/printcap или файлы, расположенные в каталоге /etc/cups/.

Каждый раз, когда демон cups запускается или перезапускается, новые файлы конфигурации создаются динамически.

Файлы также динамически воссоздаются, когда изменения применяются с помощью системных инструментов настройки печати.

 

You may also like

Leave a Comment