Astra linux перезапуск службы печати

Система печати CUPS в Astra Linux

Раздел «Ограничение отображения сетевых принтеров в LibreOffice» применим к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20210611SE16 (оперативное обновление 7) и более поздним обновлениям.

Раздел «Ограничение видимости заданий (Astra Linux Special Edition 1.6.9 и Astra Linux Common Edition 2.12.43)» применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20211008SE16 (оперативное обновление 9) и к более поздним обновлениям, а также к Astra Linux Common Edition 2.12.43.

Раздел «Настройка аутентификации Kerberos» применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) с установленным обновлением БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1.7.1) (версия cups 2.3.3op2-4astra.se9 и выше).

Встроенный сервер печати

Сервер печати CUPS входит в стандартные дистрибутивы Astra Linux и автоматически устанавливается и запускается при инсталляции ОС. Проверить статус сервера можно командой

После установки администрирование сервера печати, находящегося на локальном сервере, может осуществляться:

  1. С помощью графического администратора печати fly-admin-printer.
  2. Через web-интерфейс с помощью web-браузера. Адрес для доступа к интерфейсу администрирования:

Предоставление пользователям прав на выполнение административных действий

Пользователи, от имени которых будут выполняться действия по настройке принтеров не связанные с мандатным управлением доступом, должны быть включены в группу lpadmin (локальная группа, используемая «по умолчанию») или в другую группу, указанную в списке значений параметра SystemGroup в конфигурационном файле /etc/cups/cups-files.conf.

В Astra Linux Special Edition x.7 с включенным МКЦ администраторы службы печати для внесения изменений в конфигурацию службы должны иметь высокую целостность.

Кроме того, разрешения на выполнение операций для отдельных пользователей и групп могут быть явно заданы в описаниях ресурсов в конфигурационном файле /etc/cups/cupsd.conf. Пример использования доменной группы приведен далее в разделе про настройку аутентификации Kerberos, подробное описание форматов конфигурационных файлов см. man cupsd.conf.

Для того, чтобы такие пользователи могли применять сделанные ими изменения конфигурации им должно быть предоставлено право перезапускать службу печати. Это можно сделать создав файл /etc/sudoers.d/lpadmins со следующим содержимым:

%lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl restart cups %lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl stop cups %lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl start cups %lpadmin ALL=(ALL:ALL) NOPASSWD: /usr/bin/systemctl status cups

В приведенном примере пользователям, входящим в группу lpadmin, разрешается использовать sudo для перезапуска, остановки, запуска службы печати cups и проверки её состояния. Подробнее см. man sudoers.

При работе в Astra Linux с включенным МКЦ для управления службой печати пользователю требуется высокая целостность.

Предоставление пользователям прав на выполнение административных действий с классификационными метками (маркировка документов)

Пользователи, работающие с маркировкой заданий печати в Astra Linux Special Edition, должны быть включены в локальную группу lpmac (создается при установке ОС) или группу lpmac_ald (предназначена для использования в доменах и должна быть создана вручную). Имена этих групп задаются в параметре MacAdmin в конфигурационном файле /etc/cups/cupsd.conf (параметр используется отдельно для каждого определяемого ресурса).

Включение удаленного администрирования сервера печати

После установки службы по умолчанию разрешено только локальное администрирование, т.е. принимаются только обращения через адрес localhost. Обращения через полное имя хоста не принимаются.
Удаленное администрирование может быть разрешено:

  1. В web-интерфейсе через соответствующий пункт в меню web-интерфейса.
  2. Из командной строки можно использовать команду:

Включение удаленного использования принтеров

После установки службы по умолчанию запрещено удаленное использование принтеров, подключенных к серверу печати.
Удаленное использование принтеров может быть разрешено:

  1. В web-интерфейсе через соответствующий пункт в меню web-интерфейса.
  2. Из командной строки командой :
  • —share-printers — указание включить разделение принтеров;
  • —remote-any — разрешение принимать задания печати с любых адресов (по умолчанию задания печати разрешено получать только от компьютеров, находящихся в той же подсети, что и сервер);
  • ServerAlias — «псевдоним» сервера печати. Служба cups принимает только HTTP-обращения, содержащие указанный в этом параметре псевдоним (подразумевается, что псевдонимы разрешаются в IP-адреса с помощью настроенной службы DNS). Можно указать метасимвол «*» (звездочка) для обозначения любых псевдонимов. При необходимости в конфигурационном файле можно указать несколько псевдонимов, разделенных пробелами (в команде cupsctl такая возможность не поддерживается). Для того, чтобы псевдонимы работали, должно быть разрешено удаленное администрирование, иначе разрешен только псевдоним localhost.

Источник

Пример настройки системы печати

Пользователь, от которого будут выполняться действия по настройке принтеров, должен быть добавлен в группу lpadmin.
Пользователь, от которого будут выполняться действия по маркировке заданий, должен быть добавлен в группу lpmac (groupadd -g 900 lpmac если не создана).
Это может быть один и тот же пользователь.

Для удаленного использования сервера печати необходимо от имени администратора через механизм sudo выполнить следующие команды:

cupsctl —remote-admin —remote-printers —remote-any
cupsctl ServerAlias=*

В конфигурафионном файле /etc/cups/cupsd.conf рекомендуется удалить следующую строку:

и вставить следующую строку:

Значение параметра DefaultAuthType должно быть Basic.

Далее выполнить вход на сервере печати от имени учетной записи, входящей в группу lpadmin, и настроить принтеры (установить политику parsec и назначить максимальные допустимые уровни заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку).

Система печати через PAM

Пользователь, от которого будут выполняться действия по настройке принтеров, должен быть добавлен в группу lpadmin.
Пользователь, от которого будут выполняться действия по маркировке заданий, должен быть добавлен в группу lpmac.
Это может быть один и тот же пользователь.

Для удаленного использования сервера печати необходимо от имени администратора через механизм sudo выполнить следующие команды:

cupsctl —remote-admin —remote-printers —remote-any
cupsctl ServerAlias=*

В конфигурафионном файле /etc/cups/cupsd.conf рекомендуется удалить следующие строки:

Port 631
Listen /var/run/cups/cups.sock

и вставить следующую строку:

Значение параметра DefaultAuthType должно быть Basic.

Далее выполнить вход на сервере печати от имени учетной записи, входящей в группу lpadmin, и настроить принтеры (установить политику parsec и назначить максимальные допустимые уровни заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку).

На клиентских машинах должны быть созданы файлы /etc/cups/client.conf. В файле конфигурации клиента client.conf должен быть задан один параметр ServerName, определяющий имя сервера печати, например:

Система печати через Kerberos (ALD)

Для выполнения действий по управлению принтерами и очередями печати необходимо создать в ALD учетную запись группы администров печати:

ald-admin group-add print_admins

Для выполнения действий по маркировке заданий необходимо создать в ALD группу lpmac:

В файле /etc/cups/cups-files.conf в значении параметра SystemGroup установить значение print_admins.

Создать в ALD учетную запись администратора печати и добавить ее в группу администров печати ALD, например выполнив команды:

ald-admin user-add ald_print_admin
ald-admin group-mod print_admins —add-users —user=ald_print_admin

Добавить администратора печати в группу lpmac:

ald-admin group-mod lpmac —add-users —user=ald_print_admin

Для обеспечения совместной работы сервера печати с ALD необходимо:

1) создать в БД ALD с помощью утилиты администрирования ALD принципала, соответствующего серверу печати. Принципал создается с автоматически сгенерированным случайным ключом:

ald-admin service-add ipp/server.my_domain

2) ввести созданного принципала в группу сервисов mac, используя следующую команду:

ald-admin sgroup-svc-add ipp/server.my_domain —sgroup=mac

3) создать файл ключа Kerberos для сервера печати с помощью утилиты администрирования ALD ald-client, используя следующую команду:

ald-client update-svc-keytab ipp/server.my_domain

4) от имени учетной записи администратора с использованием механизма sudo выполнить следующие команды:

cupsctl —remote-admin —remote-printers —remote-any
cupsctl ServerAlias=*
cupsctl DefaultPolicy=default
cupsctl MarkerUser=ipp
cupsctl ServerName=server.my_domain
cupsctl MacEnable=On
cupsctl DefaultAuthType=Negotiate

5) осуществить перезапуск сервера системы печати, выполнив команды:

service cups stop
service cups start

Далее выполнить вход на сервере печати от имени учетной записи, входящей в группу ALD print_admins, и настроить принтеры (установить политику parsec и назначить максимальные допустимые уровни заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку).

На клиентских машинах должны быть созданы файлы /etc/cups/client.conf. В файле конфигурации клиента client.conf должен быть задан один параметр ServerName, определяющий имя сервера печати, например:

Источник

How to resume CUPS printer from command line?

I have printer in CUPS that due to driver problems (HP 1010) from time to time goes into pause. I would like to write a shell script that will execute once per hour to resume a printer in CUPS. But I have no idea after googling for couple of minutes how to resume printer from shell command line.

What is causing this: For one, when my wifi printer is powered down it seems to clear the Enabled flag. Even when the printer is powered back up the Enabled flag is not restored to checked. .. —Jobs will then pile up in the print queue. The error message is «filter failed». When I check this box in printer settings the printer starts printing again.

13 Answers 13

There’s the cupsenable command.

starts a disabled printer (to find out the printername you can list your printers with lpstat -p or lpc status ).

You may have to run the command as root or through sudo. So if you have to enable the printer in a shell script, you would have to add the shell to root’s crontab, or edit your sudoers file.

+1 this answer in contrast to the «use the overbloated cups config» (as in superuser.com/a/280400/160771), really helped. Also its more to the point, since OP wanted to know command line

Your problem could be tackled in different ways, depending on the version of CUPS you’re running.

    More recent versions of CUPS (version 1.2 and above) come with a builtin functionality that could help here. It’s called «ErrorPolicy». It’s default setting is selected in cupsd.conf, and determines how cupsd should handle print queues which do not behave as expected. You have 3 choices to tag to each queue individually:

ErrorPolicy abort-job ErrorPolicy retry-job ErrorPolicy retry-this-job ErrorPolicy stop-printer 
  • abort-job
    — Abort this job and proceed with next job in same queue
  • retry-job
    — Retry this job after waiting for N seconds (where N is determined by cupsd.conf‘s «JobRetryInterval» directive).
  • retry-this-job
    — Retry current job immediately and indefinitely.
  • stop-printer
    — Stop current print queue and keep the job for future printing. This is still the default, unless you define otherwise as per above mentioned alternatives It also was default + only possible behaviour for all queues in previous versions of CUPS (the one you do want to get rid of as per your question).

Additionally, you can set individual ErrorPolicies to each separate print queue. This setting would be noted in the printers.conf file. (Set it from a commandline with lpadmin -p printername -o printer-error-policy=retry-this-job ).

beh:/0/20/120/socket://192.168.1.111:9100 

This would retry a job 20 times in two minute intervals, and disable the queue only when still not succeeding. Or you could do this:

beh:/1/3/5/socket://192.168.1.111:9100 

This retries the job 3 times with 5 second delays between the attempts. If the job still fails, it is discarded, but the queue is not disabled. You want to let cupsd try indefinitely to connect to the device? Good, try this:

beh:/1/0/30/socket://192.168.1.111:9100 

Overall, there is no need to mess around with bash scripts, cron jobs, lpadmin , cupsenable or sudo in order to re-activate CUPS queues going down erratically.

Источник

Читайте также:  Linux настройка mail сервера
Оцените статью
Adblock
detector