Невозможно запустить принтер ошибка cups запрещено

Модератор: /dev/random

Vladimir.B

Сообщения: 27
ОС: Gentoo

Решено:НЕ запускается CUPS!

Проблема:
Устанавливаю cups, foomatic.
capsd не работает: Child exited on signal 15!

cupsconf выдает следующее:
Невозможно получить файл конфигурации от сервера CUPS. Возможно, у вас нет прав доступа для выполнения этой операции.

http://localhost:631 не работает

в Центре Управления КДЕ при попытке выбрать CUPS сервер:
Не удаётся получить список принтеров. Сообщение об ошибке от менеджера:
Не удалось подключиться к серверу CUPS. Убедитесь, что сервер CUPS правильно установлен и запущен. Ошибка: соединение отвергнуто.

Кроме того, в процессах cupsd есть, в Kde поддержка cups есть.

Облазил весь инет, что делать не знаю. Спасибо.

Аватара пользователя

Juliette

Сообщения: 5058
Статус: ROSA Lab
ОС: Ubuntu LTS, Mandriva 2011

Re: Решено:НЕ запускается CUPS!

Сообщение

Juliette » 25.01.2007 00:30

а в /var/log/messages чего-нибудь падает по этому поводу?
пардон — /var/log/cups/error_log конечно :unsure:

UPD — там скорее всего какая-то байда с портами, видимо что-то блокирует нужный порт

Vladimir.B

Сообщения: 27
ОС: Gentoo

Re: Решено:НЕ запускается CUPS!

Сообщение

Vladimir.B » 25.01.2007 00:35

E [25/Jan/2007:00:14:12 +0000] getservbyname(«localhost:631») failed — Success!
E [25/Jan/2007:00:14:12 +0000] Bad Listen address *:localhost:631 at line 347.
I [25/Jan/2007:00:14:12 +0000] Loaded configuration file «/etc/cups/cupsd.conf»
X [25/Jan/2007:00:14:12 +0000] No valid Listen or Port lines were found in the configuration file!

Причем раньше все работало отлично, и никакого файервола я не ставил или еще чего…
хм..

Аватара пользователя

serzh-z

Бывший модератор
Сообщения: 8256
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu
Контактная информация:

Re: Решено:НЕ запускается CUPS!

Сообщение

serzh-z » 25.01.2007 01:20

Исправьте «Listen *:localhost:631″ на «Listen localhost:631″… И, черт возьми, неужели вы никогда не писали на другие форумы? — плюс за оверквотинг и нечитабельную посылку cupsd.conf.

I installed CUPS 2.2.1 on a fresh installation of Debian 9 (stretch/stable). The root account is disabled on this machine. I use sudo to elevate the privileges of my normal user account ma. The /etc/cups/cupsd.conf file looks like this

#
# Configuration file for the CUPS scheduler.  See "man cupsd.conf" for a
# complete description of this file.
#
# EDIT: added this line
SystemGroup printadmin

# Log general information in error_log - change "warn" to "debug"
# for troubleshooting...
LogLevel warn
PageLogFormat

# Deactivate CUPS' internal logrotating, as we provide a better one, especially
# LogLevel debug2 gets usable now
MaxLogSize 0

# Only listen for connections from the local machine.
Listen localhost:631
Listen /var/run/cups/cups.sock

# Show shared printers on the local network.
Browsing On
BrowseLocalProtocols dnssd

# Default authentication type, when authentication is required...
# EDIT: changed DefaultAuthType Basic to DefaultAuthType None
DefaultAuthType None

# Web interface setting...
WebInterface Yes

# Restrict access to the server...
<Location />
  Order allow,deny
</Location>

# Restrict access to the admin pages...
# EDIT: added Allow localhost
<Location /admin>
    Order allow,deny
    Allow localhost
</Location>


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

# Restrict access to log files...
<Location /admin/log>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
</Location>


# Set the default printer/job policies...
<Policy default>
  # Job/subscription privacy...
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default

  # Job-related operations must be done by the owner or an administrator...
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    Order deny,allow
  </Limit>

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  # All administration operations require an administrator to authenticate...
# EDIT: changed AuthType Default to AuthType None
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
    AuthType None
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # All printer operations require a printer operator to authenticate...
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...
  <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  <Limit All>
    Order deny,allow
  </Limit>
</Policy>

# Set the authenticated printer/job policies...
<Policy authenticated>
  # Job/subscription privacy...
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default

  # Job-related operations must be done by the owner or an administrator...
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    AuthType Default
    Order deny,allow
  </Limit>

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  # All administration operations require an administrator to authenticate...
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # All printer operations require a printer operator to authenticate...
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...
  <Limit Cancel-Job CUPS-Authenticate-Job>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  <Limit All>
    Order deny,allow
  </Limit>
</Policy>

I created the printadmin group and added myself to it

sudo groupadd printadmin
sudo usermod -a -G printadmin ma

and did the same for the lp group, per this post.

Then a reboot, but when I click «Add Printer» in the admin interface (localhost:631), I get the same «Unable to add printer: Forbidden» error as before. The log file /var/log/cups/error_log contains this

E [16/Sep/2017:11:34:23 -0500] [Client 24] Returning HTTP Forbidden for CUPS-Get-Devices (no URI) from localhost
E [16/Sep/2017:11:34:23 -0500] [CGI] CUPS-Get-Devices request failed with status 401: Forbidden

which doesn’t tell me anything new. What am I doing wrong?

I installed CUPS 2.2.1 on a fresh installation of Debian 9 (stretch/stable). The root account is disabled on this machine. I use sudo to elevate the privileges of my normal user account ma. The /etc/cups/cupsd.conf file looks like this

#
# Configuration file for the CUPS scheduler.  See "man cupsd.conf" for a
# complete description of this file.
#
# EDIT: added this line
SystemGroup printadmin

# Log general information in error_log - change "warn" to "debug"
# for troubleshooting...
LogLevel warn
PageLogFormat

# Deactivate CUPS' internal logrotating, as we provide a better one, especially
# LogLevel debug2 gets usable now
MaxLogSize 0

# Only listen for connections from the local machine.
Listen localhost:631
Listen /var/run/cups/cups.sock

# Show shared printers on the local network.
Browsing On
BrowseLocalProtocols dnssd

# Default authentication type, when authentication is required...
# EDIT: changed DefaultAuthType Basic to DefaultAuthType None
DefaultAuthType None

# Web interface setting...
WebInterface Yes

# Restrict access to the server...
<Location />
  Order allow,deny
</Location>

# Restrict access to the admin pages...
# EDIT: added Allow localhost
<Location /admin>
    Order allow,deny
    Allow localhost
</Location>


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

# Restrict access to log files...
<Location /admin/log>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
</Location>


# Set the default printer/job policies...
<Policy default>
  # Job/subscription privacy...
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default

  # Job-related operations must be done by the owner or an administrator...
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    Order deny,allow
  </Limit>

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  # All administration operations require an administrator to authenticate...
# EDIT: changed AuthType Default to AuthType None
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
    AuthType None
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # All printer operations require a printer operator to authenticate...
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...
  <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  <Limit All>
    Order deny,allow
  </Limit>
</Policy>

# Set the authenticated printer/job policies...
<Policy authenticated>
  # Job/subscription privacy...
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default

  # Job-related operations must be done by the owner or an administrator...
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    AuthType Default
    Order deny,allow
  </Limit>

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  # All administration operations require an administrator to authenticate...
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # All printer operations require a printer operator to authenticate...
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...
  <Limit Cancel-Job CUPS-Authenticate-Job>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  <Limit All>
    Order deny,allow
  </Limit>
</Policy>

I created the printadmin group and added myself to it

sudo groupadd printadmin
sudo usermod -a -G printadmin ma

and did the same for the lp group, per this post.

Then a reboot, but when I click «Add Printer» in the admin interface (localhost:631), I get the same «Unable to add printer: Forbidden» error as before. The log file /var/log/cups/error_log contains this

E [16/Sep/2017:11:34:23 -0500] [Client 24] Returning HTTP Forbidden for CUPS-Get-Devices (no URI) from localhost
E [16/Sep/2017:11:34:23 -0500] [CGI] CUPS-Get-Devices request failed with status 401: Forbidden

which doesn’t tell me anything new. What am I doing wrong?

I installed CUPS 2.2.1 on a fresh installation of Debian 9 (stretch/stable). The root account is disabled on this machine. I use sudo to elevate the privileges of my normal user account ma. The /etc/cups/cupsd.conf file looks like this

#
# Configuration file for the CUPS scheduler.  See "man cupsd.conf" for a
# complete description of this file.
#
# EDIT: added this line
SystemGroup printadmin

# Log general information in error_log - change "warn" to "debug"
# for troubleshooting...
LogLevel warn
PageLogFormat

# Deactivate CUPS' internal logrotating, as we provide a better one, especially
# LogLevel debug2 gets usable now
MaxLogSize 0

# Only listen for connections from the local machine.
Listen localhost:631
Listen /var/run/cups/cups.sock

# Show shared printers on the local network.
Browsing On
BrowseLocalProtocols dnssd

# Default authentication type, when authentication is required...
# EDIT: changed DefaultAuthType Basic to DefaultAuthType None
DefaultAuthType None

# Web interface setting...
WebInterface Yes

# Restrict access to the server...
<Location />
  Order allow,deny
</Location>

# Restrict access to the admin pages...
# EDIT: added Allow localhost
<Location /admin>
    Order allow,deny
    Allow localhost
</Location>


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

# Restrict access to log files...
<Location /admin/log>
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
</Location>


# Set the default printer/job policies...
<Policy default>
  # Job/subscription privacy...
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default

  # Job-related operations must be done by the owner or an administrator...
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    Order deny,allow
  </Limit>

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  # All administration operations require an administrator to authenticate...
# EDIT: changed AuthType Default to AuthType None
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
    AuthType None
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # All printer operations require a printer operator to authenticate...
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...
  <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  <Limit All>
    Order deny,allow
  </Limit>
</Policy>

# Set the authenticated printer/job policies...
<Policy authenticated>
  # Job/subscription privacy...
  JobPrivateAccess default
  JobPrivateValues default
  SubscriptionPrivateAccess default
  SubscriptionPrivateValues default

  # Job-related operations must be done by the owner or an administrator...
  <Limit Create-Job Print-Job Print-URI Validate-Job>
    AuthType Default
    Order deny,allow
  </Limit>

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  # All administration operations require an administrator to authenticate...
  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # All printer operations require a printer operator to authenticate...
  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...
  <Limit Cancel-Job CUPS-Authenticate-Job>
    AuthType Default
    Require user @OWNER @SYSTEM
    Order deny,allow
  </Limit>

  <Limit All>
    Order deny,allow
  </Limit>
</Policy>

I created the printadmin group and added myself to it

sudo groupadd printadmin
sudo usermod -a -G printadmin ma

and did the same for the lp group, per this post.

Then a reboot, but when I click «Add Printer» in the admin interface (localhost:631), I get the same «Unable to add printer: Forbidden» error as before. The log file /var/log/cups/error_log contains this

E [16/Sep/2017:11:34:23 -0500] [Client 24] Returning HTTP Forbidden for CUPS-Get-Devices (no URI) from localhost
E [16/Sep/2017:11:34:23 -0500] [CGI] CUPS-Get-Devices request failed with status 401: Forbidden

which doesn’t tell me anything new. What am I doing wrong?

Модератор: /dev/random

Vladimir.B

Сообщения: 27
ОС: Gentoo

Решено:НЕ запускается CUPS!

Проблема:
Устанавливаю cups, foomatic.
capsd не работает: Child exited on signal 15!

cupsconf выдает следующее:
Невозможно получить файл конфигурации от сервера CUPS. Возможно, у вас нет прав доступа для выполнения этой операции.

http://localhost:631 не работает

в Центре Управления КДЕ при попытке выбрать CUPS сервер:
Не удаётся получить список принтеров. Сообщение об ошибке от менеджера:
Не удалось подключиться к серверу CUPS. Убедитесь, что сервер CUPS правильно установлен и запущен. Ошибка: соединение отвергнуто.

Кроме того, в процессах cupsd есть, в Kde поддержка cups есть.

Облазил весь инет, что делать не знаю. Спасибо.

Аватара пользователя

Juliette

Сообщения: 5058
Статус: ROSA Lab
ОС: Ubuntu LTS, Mandriva 2011

Re: Решено:НЕ запускается CUPS!

Сообщение

Juliette » 25.01.2007 00:30

а в /var/log/messages чего-нибудь падает по этому поводу?
пардон — /var/log/cups/error_log конечно :unsure:

UPD — там скорее всего какая-то байда с портами, видимо что-то блокирует нужный порт

Vladimir.B

Сообщения: 27
ОС: Gentoo

Re: Решено:НЕ запускается CUPS!

Сообщение

Vladimir.B » 25.01.2007 00:35

E [25/Jan/2007:00:14:12 +0000] getservbyname(«localhost:631») failed — Success!
E [25/Jan/2007:00:14:12 +0000] Bad Listen address *:localhost:631 at line 347.
I [25/Jan/2007:00:14:12 +0000] Loaded configuration file «/etc/cups/cupsd.conf»
X [25/Jan/2007:00:14:12 +0000] No valid Listen or Port lines were found in the configuration file!

Причем раньше все работало отлично, и никакого файервола я не ставил или еще чего…
хм..

Аватара пользователя

serzh-z

Бывший модератор
Сообщения: 8256
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu
Контактная информация:

Re: Решено:НЕ запускается CUPS!

Сообщение

serzh-z » 25.01.2007 01:20

Исправьте «Listen *:localhost:631″ на «Listen localhost:631″… И, черт возьми, неужели вы никогда не писали на другие форумы? — плюс за оверквотинг и нечитабельную посылку cupsd.conf.

Состояние перевода: На этой странице представлен перевод статьи CUPS/Troubleshooting. Дата последней синхронизации: 8 января 2019. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

В этой статье рассматриваются все неспецифические (то есть не связанные с каким-либо одним принтером) проблемы CUPS и драйверов принтеров (но не проблемы, связанные с совместным использованием принтеров), включая методы определения точной природы проблемы и решения выявленной проблемы.

Введение

Наилучший способ борьбы с неисправностями — это выставить ‘LogLevel’ в файле /etc/cups/cupsd.conf на:

LogLevel debug

А потом посмотреть вывод из файла /var/log/cups/error_log например так:

# tail -n 100 -f /var/log/cups/error_log

Символы слева от вывода означают следующее:

  • D=Debug(отладка)
  • E=Error(ошибка)
  • I=Information(информация)
  • И так далее

Следующие файлы также могут быть полезны:

  • /var/log/cups/page_log — каждый раз при успешной печати, пишет новую запись
  • /var/log/cups/access_log — записывает всю активность на cupsd http1.1 сервере

Также, если вы хотите решить свои проблемы, важно понимать, как вообще работает CUPS. Вот краткая информация об этом:

  1. Когда вы жмёте ‘печать’ приложение отправляет .ps-файл (PostScript, язык-скрипт, который описывает, как выглядит страница) в систему CUPS (так происходит в большинстве программ).
  2. CUPS смотрит на PPD-файл (файл описания принтера) и находит, фильтры которые ему нужно использовать для преобразования .ps-файла в файл, который понимает ваш принтер (например, PJL,PCL). Обычно для этого ему требуется ghostscript.
  3. GhostScript принимает ввод и решает, какие фильтры ему использовать, потом применяет их и преобразовывает .ps-файл в формат, который понимает принтер.
  4. Затем файл передается бэкенду. Например, если у вас принтер подключен к usb порту, то используется usb бэкенд

Распечатайте документ и посмотрите error_log, чтобы получить более подробное и правильное представление об процессе печати.

Проблемы, возникающие в результате обновлений

Проблемы возникшие после обновления CUPS и сопутствующего ему набора программ

CUPS останавливается

Существует вероятность, что для правильной работы в обновленной версии понадобится новый файл конфигурации. Например, получение сообщения «404 — page not found» при попытке входа в панель управления CUPS через localhost:631.

Для того, чтобы воспользоваться новым конфигом, скопируйте /etc/cups/cupsd.conf.default в /etc/cups/cupsd.conf (при необходимости сделайте резервную копию старого конфига) и, чтобы новые настройки вступили в силу, перезапустите CUPS.

Для всех заданий — «остановлено»

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Если для всех отправленных на печать заданий установился статус «остановлено» («stopped»), — удалите принтер и установите его заново. Для этого войдите в веб-интерфейс CUPS, перейдите Принтеры > Удалить Принтер.

Для проверки настроек принтера перейдите во вкладку Принтеры, затем скопируйте отображаемую информацию. Далее нажмите на Администрирование. В выпадающем списке кликните Изменить принтер, перейдите к следующей странице(ам), и так далее.

Для всех заданий — «Принтер не отвечает»

Для сетевых принтеров, поскольку CUPS подключается через URI, необходимо убедиться, что в DNS настроен доступ к принтерам по IP. Например, если принтер подключен следующим образом:

lpd://BRN_020554/BINARY_P1

то имя хоста ‘BRN_020554’ должно соответствовать IP принтера, управляемого сервером CUPS. Если используется Avahi, убедитесь, что разрешение имени хоста Avahi работает.

Альтернативно, замените имя хоста, используемое в URI, IP-адресом принтера.

Версия PPD не совместима с gutenprint

Запустите:

# /usr/bin/cups-genppdupdate

И перезагрузите CUPS (будет выведено соответствующее сообщение после установки gutenprint).

Проблемы с сетью

Не удается найти принтер

Даже если CUPS обнаруживает сетевые принтеры, вы все равно можете получить ошибку «Не удается найти принтер» («Unable to locate printer») при попытке распечатать что-либо. Чтобы решить эту проблему, включите .разрешение локального имени хоста Avahi. Для получения дополнительной информации смотрите CUPS (Русский)#Сеть.

Эта проблема может возникать и при использовании файрвола (межсетевой экран, брандмауэр). Возможно, вам придется отключить его или установить корректные правила. Если вы используете system-config-printer для обнаружения сетевых принтеров, тогда он сделает все это автоматически.

Старый сервер CUPS

Начиная с версии CUPS 1.6, клиент по умолчанию использует IPP 2.0. Если сервер использует CUPS <= 1.5 / IPP <= 1.1, клиент не будет автоматически понижать версию протокола и, следовательно, не может связаться с сервером. Обходным путем является добавление опции version=1.1, описанной в Таблице 2. Опции URI IPP.

Общий принтер работает локально, но удаленный компьютер не печатает

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

Не удается найти файл PPD

/var/log/cups/error_log
Cannot connect to remote printer ipp://HP079676.local
copy_model: empty PPD file

Убедитесь, что Avahi настроен правильно. В частности, проверьте, что nss-mdns установлен и настроен в /etc/nsswitch.conf.

USB-принтеры

Конфликт с SANE

Если у вас также запущен SANE, возможно, что он конфликтует с CUPS. Чтобы исправить это, создайте правило Udev, обозначающее устройство как совпадающее с libsane:

/etc/udev/rules.d/99-printer.rules
ATTRS{idVendor}=="vendor id(код производителя)", ATTRS{idProduct}=="product id(код продукта)", MODE="0664", GROUP="lp", ENV{libsane_matched}="yes"

Конфликт с usblp

Доступ к USB-принтерам можно получить двумя способами: модулем ядра usblp и libusb. Первый — это классический способ. Это просто: данные отправляются на принтер, записывая их в файл устройства в виде простого последовательного потока данных. Чтение одного и того же файла устройства позволяет использовать двунаправленный доступ, по крайней мере, для таких вещей, как считывание уровней чернил, статуса или информации о возможностях принтера (PJL). Он работает очень хорошо для простых принтеров, но для многофункциональных устройств (принтер/сканер) он не подходит, и производители, такие как HP, поставляют свои собственные бэкенды. Источник: здесь.

Важно: Начиная с cups версии 1.6.0, больше не нужно заносить в запрет загрузки модуль ядра usblp.
Если вы узнаете, что это единственный способ исправить оставшуюся проблему, сообщите об этом в баг-трекер CUPS, а также можно связаться с Till Kamppeter (сопровождающий CUPS в Debian). Для получения дополнительной информации смотрите в upstream bug.

Если у вас возникли проблемы с работой USB-принтера, вы можете попробовать запрет загрузки для модуля ядра usblp:

/etc/modprobe.d/blacklistusblp.conf
blacklist usblp

Пользователям кастомного ядра может потребоваться вручную загрузить модуль ядра usbcore, прежде чем продолжить.

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

# journalctl -e

или

# dmesg

Если вы используете usblp, вывод должен указывать на то, что принтер был обнаружен следующим образом:

Feb 19 20:17:11 kernel: printer.c: usblp0: USB Bidirectional
printer dev 2 if 0 alt 0 proto 2 vid 0x04E8 pid 0x300E
Feb 19 20:17:11 kernel: usb.c: usblp driver claimed interface cfef3920
Feb 19 20:17:11 kernel: printer.c: v0.13: USB Printer Device Class driver

Если вы запретили загрузку usblp, вы увидите что-то вроде:

usb 3-2: new full speed USB device using uhci_hcd and address 3
usb 3-2: configuration #1 chosen from 1 choice

USB autosuspend

Ядро Linux автоматически приостанавливает USB-устройства, когда есть поддержка драйверов и устройства не используются. Это может сэкономить электроэнергию, но некоторые USB-принтеры считают, что они не подключены, когда ядро приостанавливает USB-порт, предотвращая печать. Это можно устранить, отключив autosuspend для конкретного устройства, для получения дополнительной информации смотрите Power management#USB autosuspend.

Плохие разрешения

Проверьте разрешения USB-порта принтера. Получите номер шины (BUSID) и устройства (DEVID) от lsusb:

 lsusb 
 Bus <BUSID> Device <DEVID>: ID <PRINTERID>:<VENDOR> Hewlett-Packard DeskJet D1360

Проверьте владельца, просмотрев devfs:

 # ls -l /dev/bus/usb/<BUSID>/<DEVID>

Демон cups запускается от пользователя «cups» и относится к группе «lp», поэтому либо этому пользователю, либо группе требуется доступ на чтение и запись в USB-устройство. Если вы считаете, что разрешения выглядят неправильно, вы можете временно изменить группу и разрешение:

# chgrp lp /dev/bus/usb/<BUSID>/<DEVID>
# chmod 664 /dev/bus/usb/<BUSID>/<DEVID>

Затем проверьте, может ли cups теперь видеть устройство USB правильно.

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

/etc/udev/rules.d/10-local.rules
SUBSYSTEM=="usb", ATTRS{idVendor}=="<VENDOR>", ATTRS{idProduct}=="<PRINTERID>", GROUP:="lp", MODE:="0664"

После редактирования перезагрузите правила udev этой командой:

# udevadm control --reload-rules

Каждая система может отличаться, поэтому обратитесь к вики-странице udev (Русский)#Список атрибутов устройства.

Проблемы с HP

Смотрите также CUPS/Принтероспецифичные проблемы#HP.

CUPS: «/usr/lib/cups/backend/hp failed»

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Убедитесь, что dbus установлен и запущен. Если ошибка повторяется, попробуйте запустить avahi-daemon.

Попробуйте добавить принтер в качестве сетевого принтера, используя протокол http:// .

Примечание: Там, возможно, потребуется установить права доступа.

CUPS: «Печать завершена», но принтер не печатает.

Это происходит на принтерах HP, когда вы выбираете (старый) драйвер hpijs (например, для Deskjet D1600 series). Вместо этого используйте драйвер hpcups.

Некоторые принтеры HP требуют, чтобы их прошивка загружалась с компьютера при каждом включении принтера. Вы можете столкнуться с этой проблемой, если есть проблема с udev (или аналогом), и правило загрузки прошивки никогда не запускается.
В качестве обходного пути вы можете вручную загрузить прошивку на принтер. Убедитесь, что принтер подключен и включен, затем выполните

hp-firmware -n

CUPS: ‘»foomatic-rip» not available/stopped with status 3’

Если, во время использования принтера HP, задания появляются в очереди, но все завершаются со статусом ‘остановлен’ (‘stopped’), а в /var/log/cups/error_log возникает одно из следующих сообщений об ошибках:

Filter "foomatic-rip" for printer printer_name not available: No such file or director

или:

PID pid (/usr/lib/cups/filter/foomatic-rip) stopped with status 3!

убедитесь, что hplip установлен.

CUPS: «Filter failed»

Ошибка «filter failed» может быть вызвана некоторым количеством причин. Журнал ошибок CUPS (по умолчанию /var/log/cups/error_log) должен записывать, какой фильтр не удалось загрузить и почему.

Отсутствует ghostscript

Установите ghostscript (/usr/lib/cups/filter/gstoraster нуждается в его запуске).

Отсутствует foomatic-db

Установите foomatic-db и foomatic-db-ppds. Это помогает в некоторых случаях.

Avahi не включен

Запустите и включите службу avahi-daemon.

Устаревший плагин

Эта ошибка может указывать на то, что плагин устарел (версия несовместима) и может произойти после обновления системы, возможно, появится сообщение Plugin error в журнале (логе).
Если вы установили hplip-pluginAUR, вам нужно обновить пакет, иначе перезапустите hp-setup -i, чтобы установить последнюю версию плагина.

Устаревшая конфигурация принтера

Начиная с hplip-pluginAUR версии 3.17.11 hpijs больше не доступен. Если у вас есть принтеры, использующие hpijs, они не будут печатать. Необходимо перенастроить их и выбрать вместо этого новый драйвер hpcups.

Вы можете проверить, если это ваш случай, посмотрев в error_log cups`а:

 $ grep hpijs /var/log/cups/error_log 
 ...
 D [09/Jan/2018:14:32:58 +0000] [Job 97] sh: hpijs: command not found
 ...

CUPS: печатает только пустую страницу и страницу с сообщением об ошибке на HP LaserJet

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Существует ошибка, которая приводит к сбою CUPS при печати изображений на HP LaserJet (в моем случае 3380). Ошибки были зафиксированы и исправлены в Ubuntu.
Первая страница пуста, вторая страница содержит следующее сообщение об ошибке:

 ERROR:
 invalidaccess
 OFFENDING COMMAND:
 filter
 STACK:
 /SubFileDecode
 endstream
 ...

Чтобы устранить проблему, выполните следующую команду как суперпользователь (root):

# lpadmin -p printer -o pdftops-renderer-default=pdftops

HPLIP 3.13: Плагин установлен, но HP Device Manager жалуется на его отсутствие

Возможно, проблема связана с изменением прав доступа файла, которое было внесено в /var/lib/hp/hplip.state. Чтобы исправить проблему, достаточно простых команд chmod 644 /var/lib/hp/hplip.state и chmod 755 /var/lib/hp. Для получения дополнительной информации, пожалуйста, прочитайте эту ссылку.

hp-toolbox: «Unable to communicate with device»

# hp-toolbox
# error: Unable to communicate with device (code=12): hp:/usb/printer id

Разрешение проблемы

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: Предположительно, hp-toolbox пытается получить доступ к /dev/usb/* или /dev/lp, поэтому он должен находиться в группе lp. Но почему sys? И я не могу воспроизвести это… (Discuss in Talk:CUPS (Русский)/Troubleshooting (Русский))

Может потребоваться добавить пользователя в группы lp и sys.

Виртуальный CDROM у принтеров

Это также может быть вызвано принтерами, такими как P1102, которые предоставляют виртуальный привод CD-ROM для драйверов MS Windows. Появляется lp dev, а затем исчезает. В этом случае попробуйте пакеты usb-modeswitch и usb-modeswitch-data, что позволяет отключить «Smart Drive» (правила udev, включенные в указанные пакеты).

Сетевые принтеры

Это также может происходить с сетевыми принтерами, использующими динамические имена хостов, если avahi-daemon не запущен. Другая причина заключается в том, что hp-setup не удалось найти принтер, потому что IP-адрес принтера изменился из-за DHCP. Если это так, подумайте о добавлении резервирования DHCP для принтера в конфигурации сервера DHCP.

hp-setup просит указать PPD-файл для обнаруженного принтера

Кроме того, при выборе файла PPD в графическом режиме hp-setup поле не обновляется и сообщение об ошибке не отображается.

Или, если вы используете интерактивный (консольный) режим, можно столкнуться с чем-то похожим на это даже при введении правильного пути к файлу ppd:

 Please enter the full filesystem path to the PPD file to use (q=quit) :/usr/share/ppd/HP/hp-deskjet_2050_j510_series.ppd.gz
 Traceback (most recent call last):
   File "/usr/bin/hp-setup", line 536, in <module>
     desc = nickname_pat.search(nickname).group(1)
 TypeError: cannot use a string pattern on a bytes-like object

Решение заключается в установке и запуске cups перед запуском hp-setup.

hp-setup: «Qt/PyQt 4 initialization failed»

Установите пакет python-pyqt4AUR, который дополнительно требуется (optdepend) для hplip. Альтернативно вы можете запустить hp-setup с интерфейсом командной строки с помощью флага -i.

hp-setup: находит принтер автоматически, но сразу после этого сообщает «Unable to communicate with device» при печати тестовой страницы

Это, по крайней мере, происходит с hplip 3.13.5-2 у принтера HP Officejet 6500A через локальное сетевое соединение. Чтобы решить проблему, укажите IP-адрес принтера HP для hp-setup, чтобы обнаружить принтер.

hp-setup: «KeyError: ‘family-class’»

Если при добавлении принтера в пользовательском интерфейсе он не работает, или вы получили KeyError: 'family-class' от hp-setup, возможно потребуется обновить вручную /usr/share/hplip/data/models/models.dat.

Проверьте определен ли раздел family-class=Undefined для вашего принтера. Если нет, добавьте это:

/usr/share/hplip/data/models/models.dat
[hp_laserjet_pro_mfp_m225dw]	
...
family-class=Undefined

Другие

Принтер «приостановлен — «Paused»» или «Остановлен» cо статусом «Рендеринг завершен»

Низкий уровень чернил

При низком уровне чернил некоторые принтеры зависают со статусом «Рендеринг завершен» («Rendering completed»), и, если это сетевой принтер, принтер может даже стать недоступным для CUPS, несмотря на то, что он правильно подключен к сети. Замена картриджа (картриджей) с низким уровнем чернил в этом случае вернет принтер в статус «Готов» («Ready») и, если он — сетевой принтер, то он станет снова доступным для CUPS.

Примечание: Если вы используете сторонние чернильные картриджи, то принтер может сообщать неточную информацию о уровне чернил. Если вы используете сторонние картриджи, и ваш принтер работал нормально, но теперь завис со статусом «Рендеринг завершен» («Rendering completed»), замените чернильные картриджи, независимо от уровня отображаемых чернил, перед тем, как пробовать другие решения проблемы.

Завершение печати из-за ошибок авторизации

Если удаленный принтер запрашивает аутентификацию, CUPS автоматически добавит директиву AuthInfoRequired для принтера в /etc/cups/printers.conf. Однако некоторые графические приложения (например, некоторые версии LibreOffice [1]) не имеют возможности запрашивать учетные данные, поэтому печать завершилась с ошибкой.
Чтобы исправить это, укажите требуемое имя пользователя и пароль в URI.
Для получения дополнительной информации смотрите [2], [3].

Unknown supported format: application/postscript

(Не найдена поддержка формата: application/postscript)

Закомментируйте строки:

application/octet-stream        application/vnd.cups-raw        0      -

в /etc/cups/mime.convs и:

application/octet-stream

в /etc/cups/mime.types.

Ошибка задания для печати (Print-Job) client-error-document-format-not-supported

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

Не удается получить список драйверов принтера

(Также применимо к ошибке «-1 не поддерживается!»)

Попробуйте удалить драйверы Foomatic или обратитесь к CUPS/Принтероспецифичные проблемы#HPLIP для обходного пути.

lp: Error — Scheduler Not Responding

Если вы получите эту ошибку, убедитесь, что CUPS запущен, переменная окружения CUPS_SERVER не установлена и /etc/cups/client.conf корректный.

Сообщение об ошибке: «Using invalid Host»

Попробуйте добавить ServerAlias * в /etc/cups/cupsd.conf.

Не удается отправить на печать из LibreOffice

Если вы можете распечатать тестовую страницу с веб-интерфейса CUPS, но не из LibreOffice, попробуйте установить пакет a2ps.

Вывод принтера сдвинут

По-видимому, это связано с неправильным размером страницы, установленным в CUPS.

Принтер не работает (приостановлен — «Paused») после ошибки

Когда во время печати возникает ошибка, принтер в CUPS может перестать отвечать на запросы. lpq сообщает, что принтер is not ready (не готов), его можно активировать с помощью cupsenable. В веб-интерфейсе CUPS принтер отображается как приостановлен — «Paused», его можно возобновить с помощью Восстановить печать.

Чтобы CUPS автоматически активировал принтер, измените политику ошибок с стандартной настройки Останавливать принтер (stop-printer) на Повторить задание (retry-this-job).

Samsung: URF ERROR — Incomplete Session by time out

Эта ошибка обычно возникает при печати файлов по сети через IPP на принтерах Samsung и решается с помощью пакета samsung-unified-driverAUR.

Примечание: Соответствующий код ошибки 11-1112 соответствует внутренней проблеме с принтером, поэтому обращение к технической поддержке Samsung бесполезно.

Brother: Принтер печатает несколько копий

Иногда принтер печатает несколько копий документа (например, MFC-9330CDW напечатал 10 копий). Решение заключается в обновлении прошивки принтера.

Обычный пользователь не может изменять настройки принтера или удалять определенные задания

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

Содержание

  1. Операционные системы Astra Linux
  2. Настройка с нуля принтсервера CUPS с доменной авторизацией и без нее в сети с разными ОС
  3. Настройка с нуля принтсервера CUPS с доменной авторизацией и без нее в сети с разными ОС
  4. Вступление
  5. Настройка принтсервера
  6. Исправление ошибки обращения к CUPS через loopback по имени хоста
  7. Настройка адресов прослушивания подключений к CUPS у клиентских машин Linux
  8. Настройка адресов прослушивания подключений к CUPS
  9. Настройка раздачи и получения широковещательной рассылки сетевых принтеров
  10. Настройка административного доступа
  11. Настройка использования доменных групп пользователей для администрирования CUPS
  12. Установка принтера в Linux
  13. Группы принтеров (Classes)
  14. Заключение
  15. Операционные системы Astra Linux
  16. Сервер печати на Linux
  17. Как система печати Linux обрабатывает файлы
  18. Управление печатью в Linux
  19. Подключение и настройка принтеров в Linux
  20. Настройка безопасности CUPS
  21. Особенности использования Веб интерфейса
  22. Устранение неполадок в системе печати
  23. Файлы и каталоги CUPS

Операционные системы Astra Linux

Оперативные обновления и методические указания

Операционные системы Astra Linux предназначены для применения в составе информационных (автоматизированных) систем в целях обработки и защиты 1) информации любой категории доступа 2) : общедоступной информации, а также информации, доступ к которой ограничен федеральными законами (информации ограниченного доступа).

1) от несанкционированного доступа;
2) в соответствии с Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» (статья 5, пункт 2).

Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».

На web-сайтах https://astralinux.ru/ и https://wiki.astralinux.ru представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения.

Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!

Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.

Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить в статье Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов.

В целях обеспечения соответствия сертифицированных операционных систем Astra Linux Special Edition требованиям, предъявляемым к безопасности информации, ООО «РусБИтех-Астра» осуществляет выпуск очередных и оперативных обновлений.

Очередные обновления (версии) предназначены для:

Оперативные обновления предназначены для оперативного устранения уязвимостей в экземплярах, находящихся в эксплуатации, и представляют собой бюллетень безопасности, который доступен в виде:

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

Источник

Настройка с нуля принтсервера CUPS с доменной авторизацией и без нее в сети с разными ОС

Вступление

Итак. Предположительно, сервис печати CUPS — это мощное решение, позволяющее организовать централизованное управление принтерами в компании. Так оно и есть, но в процессе настройки потребуется провести некоторое время в поисках решения в Google множества мелких неочевидных проблем, особенно, если ваша необходимость выходит за рамки стандартных мануалов по настройке.

В статье будет описана установка принтсервера CUPS на Ubuntu Server в сети с работающим доменом Active Directory, хотя его наличие совершенно не обязательно и инструкции по настройке взаимодействию с ним можно будет смело пропустить, его настройка, а также настройка клиентских машин Linux и Windows для взаимодействия с данным принт-сервером.

В инструкции домен будет именоваться example.com, сам принтсервер — cupsserver (cupsserver.example.com) с IP адресом 10.10.100.50, а клиентские машины linux1, linux2, linux3 и т.д для клиентских машин Linux и windows1, windows2, windows3 и т.д. для клиентских машин Windows соответственно.

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

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

Заходим на принтсервер любым удобным способом и обновим на нем пакеты:

Далее проверим, установлен ли CUPS на сервере:

Если вывод выглядит как то так:

то CUPS установлен, если вывода нет — устанавливаем CUPS:

Теперь настроим административный доступ к веб-интерфейсу CUPS. Все файлы конфигурации находятся по пути /etc/cups/. Для начала, на всякий случай сделаем резервные копии основных файлов конфигурации CUPS:

Впрочем, если вы этого не сделали — не беда, образцы данных файлов по умолчанию лежат по пути /usr/share/cups. Также нужно упомянуть, что вы можете проверить любые добавленные опции в файлы конфигурации CUPS с помощью команды:

Если вы что-то напутали, опечатались или использовали опцию, которая уже не поддерживается CUPS’ом, то вывод команды отразит данные ошибки.

Но приступим наконец к настройке. После любых изменений файлов в папке /etc/cups/ для получения эффекта необходимо перезапускать сервис CUPS:

А если вы отредактировали файл /etc/cups/cups-browsed.conf, то за него отвечает отдельный сервис cups-browsed, который тоже нужно перезапустить:

Первой незакомментированной опцией является

Она определяет минимальную информативность логов CUPS. Лог-файлы CUPS находятся по пути /var/log/cups/. На время установки, настройки и отладки принтсервера будет разумным перевести логгирование в debug-режим. Для этого изменим warn на debug2:

По умолчанию CUPS слушает входящие подключения только от localhost, то бишь на loopback интерфейсе. Чтобы убедится в этом, можете выполнить команду

Одна из строк будет выглядеть приблизительно так:

Дальнейшие действия зависят от степени вашей паранойи. Вы можете добавить в блоке, который условно начинается с комментария #Only listen for connections from the local machine несколько строк с указанием IP адресов или подсетей, откуда CUPS’у будет позволено слушать подключения.

Либо же вы можете разрешить CUPS’у слушать подключения со всех адресов

Следующий момент настройки — это обнаружение сетевых и расшаренных принтеров.

На мой взгляд эта опция так и должна остаться выключенной, так как она определяет, будет ли рассылаться широковещательная информация по сети о подключенных к принтсерверу принтерах. А они ведь будут подключены к ней все. И соответственно у всех клиентских машин будут отображаться сразу все принтера. Наш принтсервер должен искать и обнаруживать все принтера в сети, но не рассылать их бездумно по всей сети.

Далее идут настройки аутентификации:

Определяет права доступа к веб-интерфейсу CUPS, а также к его административной части. Чтобы пользователь user имел право на администрирование CUPS, его нужно добавить в системную группу lpadmin:

Вообще, группы, которым позволен административный доступ к CUPS, определяются в файле конфигурации cups-files.conf в блоке

Если вы хотите добавить некой группе пользователей Linux права на администрирование принтсервера, например printadmins, то просто добавьте их через пробел к lpadmin. Если группа доменная, то это немного сложнее и будет описано позже.

Теперь перейдем к блоку :

Order allow,deny означает, что запрещены подключения отовсюду, если специально не указано разрешение. То есть нужно добавлять IP-адреса, подсети, хосты или хосты по маске (.example.com) в виде «Allow from [разрешенный адрес]*»:

Для полной уверености и отладки, можно оставить, пока не настроите все остальное, такую констукцию, которая позволит печать отовсюду:

Приступим к настройке административного доступа к CUPS на принтсервере. Определитесь, с какого/каких IP и/или подсетей вы собираетесь подключаться к CUPS, и добавить их по аналогии с блоком :

Еще, по желанию, можно добавить язык интерфейса по умолчанию. Список доступных языков можно посмотреть с помощью команды:

Если нужная вам локализация, например ru, есть, то добавьте строчку в /etc/cups/cupsd.conf:

Чтобы к вашему принтсерверу cupsserver.example.com можно было обращатся по его хосту (hostname), необходимо создать в папке /etc/cups/ файл client.conf с таким содержимым:

Самым простым способом это можно сделать так:

Поскольку мы предполагаем, что в сети есть DNS сервер, то будет предпочтительным, чтобы можно было обращатся к принтсерверу по его доменному имени (cupsserver.example.com). Также серверу может быть присвоен CNAME псевдоним на DNS сервере, например print или cups. Чтобы принтсервер принимал подключения по таким обращениям, необходимо добавить такую строчку в файл /etc/cups/cupsd.conf:

Если вы хотите, чтобы принтсервер примимал любые обращения, или не хотите заморачиваться, то можно добавить это:

Еще нужно взглянуть внутрь файла /etc/cups/cups-browsed.conf. Этот файл управляет тем, как принтсервер будет искать принтеры в сети и проводить широковещательную рассылку своих принтеров. Я предлагаю совершенно отключить опцию рассылки. Принтсервер будет искать принтера в сети, но с него принтеры на клиентские машины будут подключатся вручную. Ниже будет описано, почему. Пока же мы находим строку BrowseRemoteProtocols dnssd cups:

Благодаря этой опции принтсервер ищет расшаренные принтера в сети. Ее мы оставляем включенной, так как в наших интересах, чтобы принтсервер искал принтера в сети. Но нам совершенно не нужно, чтобы принтсервер рассылал вообще все подключенные к нему принтеры, иначе возникнет большая путаница. Для предотвращения такого сценария находим следующую опцию #BrowseLocalProtocols none и раскомментируем ее:

На этом настройку принтсервера приостанавливаем и переходим к настройке клиентких машин Windows и Linux. Требования к ним такие — позволять посылать на себя задания печати принтсерверу, и посылать задания на печать именно (и только) на принтсервер в случае необходимости печати на сетевой принтер.

Теперь выполним аналогичную операцию на клиентской машине Linux c именем хоста linux1. Вообще, данная часть будет куда объемнее, так как у клиентской машины есть свой сервис CUPS и его тоже нужно настроить во многом так же, как и принтсервер, за исключением его подчиненной роли в организации печати.

Исправление ошибки обращения к CUPS через loopback по имени хоста

Есть неприятный момент. Если вы введете linux1 в домен, настроите на нем CUPS по этим инструкциям, то можете заметить абсурдную ситуацию, когда на WEB-интерфейс linux1 можно зайти снаружи, но на самом хосте этого сделать нельзя! И графические приложения для локальной настройки принтеров, вроде приложения system-config-printer в Linux Mint, отказываются работать. При попытке подключения на свой же CUPS по по адресу http://linux1:631/ будет сообщение «Запрещено» или «Bad Request». Это известная и толком не решенная на множестве форумов интернета проблема.

В большинстве инструкций по введению Linux в домен одним из пунктов является приведение файла /etc/hosts приблизительно к такому виду:

Почему то CUPS не в силах ассоциировать обращение через 127.0.1.1, то есть через Loopback интерфейс, с именем хоста.

Исправляется эта ошибка двумя способами. Если в вашей сети IP адреса статичные, то в файле /etc/hosts исправьте 127.0.1.1 на IP адрес внешнего сетевого интерфейса клиентской машины, например:

Либо же, раз уж вы вводите Linux в домен, то это предполагает, что в вашей сети работает DHCP и DNS сервер Active Directory. В таком случае просто закомментируйте данную строчку:

Разницы в работоспособности или проблем от данного действия пока обнаружено не было.

Настройка адресов прослушивания подключений к CUPS у клиентских машин Linux

Заходим на linux1 любым удобным способом. Редактируем файл /etc/cups/cupsd.conf:

Находим, добавляем или изменяем в нем строки:

Настройка адресов прослушивания подключений к CUPS

Настройка раздачи и получения широковещательной рассылки сетевых принтеров

Еще у клиетской машины Linux, в данном случае linux1, необходимо отредактировать файл /etc/cups/cups-browsed.conf:

Настройка административного доступа

Еще пару слов по поводу административного доступа, как на WEB-интерфейс CUPS на принтсервере, так и на любой клиентской машине Linux. Даже при условии наличия 30-50 компьютеров нужно унифицировать авторизацию на CUPS, а не держать в голове или еще где пароли каждой машины. И это важно на всех Linux машинах, ведь чтобы добавить принтер на сервер, его сперва нужно установить локально. Я вижу несколько путей.

Первый — на каждой системе Linux создать пользователя printeradmin (например) и добавить в группу lpadmin:

и авторизовываться на http://имя_хоста:631/admin c помощью его учетных данных.

Второй вариант практически идентичен и предлагает создать группу в системе, например, printersadmins, добавить туда требуемого администратора CUPS (printeradmin, user):

Затем нужно найти в файле /etc/cups/cups-files.conf строку

и добавить через пробел одну или несколько групп пользователей с правом администрировать CUPS.

И наконец, третий вариант. Сделать администраторами принтсервера и CUPS’ов клиентских машин доменную группу пользователей. Для этого принтсервер и клиентские машины Linux должны быть присоединены к домену AD. Есть несколько методов подключения Linux к домену Windows, но, насколько я знаю, основные это подключение с помощью winbind и с помощью SSSD(realmd). Описание данных методов не входит в статью, поэтому остановлюсь только на моментах которые касаются конкретно CUPS’а.

Настройка использования доменных групп пользователей для администрирования CUPS

Каждый метод присоединения к системе централизованной авторизации в Linux создает специальный файл-«трубу» (pipe), сквозь который приложения могут посмотреть список пользователей домена. Чтобы так мог сделать CUPS, нужно разрешить ему использовать pipe в AppArmor’е для аутентификации пользователей. AppArmor — модуль безопасности Linux по управлению доступом. Ограничивает определенные программы набором перечисленных в его политиках файлов. Чтобы добавить CUPS’у право использовать пользователей и группы домена через winbindd, нужно добавить в файл /etc/apparmod.d/local/usr.sbin.cupsd такую строку:

Если Linux введен в домен через SSSD, то необходимо указать расположение его pipe в /etc/apparmod.d/local/usr.sbin.cupsd, добавив туда строку:

К тому же, в случае с SSSD это позволяет пройти аутентификацию (узнать кто заходит), но чтобы пройти авторизацию (узнать есть ли право у пользователя управлять CUPS) необходимо также добавить в файл конфигурации SSSD /etc/sssd/sssd.conf строку:

Это, условно выражаюсь, дает CUPS’у право «заглядывать» в SSSD.

К тому же, в силу того, что CUPS теперь зависит от сервиса SSSD, нужно указать CUPS’у что он должен запускаться после SSSD, иначе он будет отваливаться при включении и его будет необходимо каждый раз включать вручную.

Добавим CUPS’у указание грузиться после SSSD. Отредактируем файл сервиса cups.service по пути /lib/systemd/system/, добавив инструкцию After в секцию [Unit]:

Таким образом CUPS настроен на Basic авторизацию через домен, то есть авторизацию с помощью ввода логина и пароля доменного пользователя с правом администрирования CUPS.

Авторизация может быть настроена и иначе, но принцип (pipe-файл) в целом универсален и есть шанс настроить и для LDAP, FreeIPA и прочих служб каталогов по аналогии.

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

Теперь, когда сервер и клиенские машины Linux настроены, к некоторым из них присоединены принтеры, а также есть машины на Windows, которым и с которых нужно печатать, и вся эта система должна быть стабильной и в случае, если на одном из ПК необходимо заменить принтер, то это не должно повлечь за собой перенастройку доброй половины всех ПК, если не всех. К тому же нужно как можно меньше проблем с драйверами. И это вполне возможно.

Группы принтеров (Classes)

Главная прелесть данного метода в том, что если на любом из ПК заменяется принтер, заменяется сам компьютер, или то и другое сразу, то это никак не влияет на тех, кто был к ним подключен через группу на принтсервере. Единственная настройка производится на принтсервере — к принтсерверу подключается новый принтер, затем из группы, в которой состоял старый принтер, он удаляется, и добавляется новый принтер на замену старому. И никаких дополнительных настроек на любом количестве ПК, только на принтсервере и собственно ПК на котором меняли принтер. Драйвера «IPP Everywhere» и «MS Publisher Imagesetter» содержат большое количество настроек бумаги, печати и т.д., так что нет проблем настроить нужный вид печати через них.

Заключение

Тема слишком обширна, чтобы изложить сколько-нибудь подробно, и даже так статья вышла крайне объемной. Любые уточнения, указания на ошибки, нераскрытые вопросы и советы, данные в комментариях к данной статье, будут приняты во внимание и в случае необходимости включены в статью.

Источник

Операционные системы Astra Linux

Оперативные обновления и методические указания

Операционные системы Astra Linux предназначены для применения в составе информационных (автоматизированных) систем в целях обработки и защиты 1) информации любой категории доступа 2) : общедоступной информации, а также информации, доступ к которой ограничен федеральными законами (информации ограниченного доступа).

1) от несанкционированного доступа;
2) в соответствии с Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» (статья 5, пункт 2).

Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».

На web-сайтах https://astralinux.ru/ и https://wiki.astralinux.ru представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения.

Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!

Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.

Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить в статье Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов.

В целях обеспечения соответствия сертифицированных операционных систем Astra Linux Special Edition требованиям, предъявляемым к безопасности информации, ООО «РусБИтех-Астра» осуществляет выпуск очередных и оперативных обновлений.

Очередные обновления (версии) предназначены для:

Оперативные обновления предназначены для оперативного устранения уязвимостей в экземплярах, находящихся в эксплуатации, и представляют собой бюллетень безопасности, который доступен в виде:

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

Источник

Сервер печати на Linux

Прекрасная статья с не менее прекрасного сайта о операционной системе Linux: http://www.k-max.name/linux/server-pechati-na-linux-common-unix-printing-system/

Очень рекомендую к прочтению статью и сайт автора 🙂

Доброго времени, читатели моего блога и гости. Сегодня хочу сделать небольшую заметку о системе печати Linux, чтобы ввести в курс дела и подготовить вас к следующей статье о сервере печати SAMBA.

Итак, исторически в Linux было 2 системы печати LPRng и BSD LPD. Данные системы постепенно устаревают и на смену им приходит система печати CUPS, которая разработана как замена вышеуказанных систем и возможности которой гораздо шире. При использовании GUI интерфейса GNOME, KDE или другого, управление принтерами с помощью CUPSосуществляется не сложнее, чем в Windows. В статье я же сделаю упор на работу в консольном режиме и GUI инструменты рассматривать практически не буду (клавиши Ctrl+P (печать в GUI) есть на всех клавиатурах и работают одинаково как в Windows, так и в Linux smile). Отмечу только, что при использовании графической оболочки, запускаются те же команды, что мы рассмотрим далее.

Как система печати Linux обрабатывает файлы

Все мы знаем, что когда печать работает без перебоев, то отправив на печать какой-либо файл о нем можно забыть, пока листы не выйдут на принтере. Но если печать «поломалась», то необходимо понимать принцип работы, чтобы исправить проблему.

Система печати Linux находится под контролем демона cupsd, который обладает всеми необходимыми привилегиями, чтобы обращаться к принтерам от имени пользователя. Данный демон автоматически загружается при запуске Linux и настраивает систему для корректной работы печати. Все необходимые параметры демон берет из каталога /etc/cups.

Управление печатью в Linux

Давайте немного разберемся, что же такое PostScript, а что такое GhostScript? Как показывает практика, приложения Linux и UNIX в большинстве случаев генерируют на выходе файлы двух форматов:

Простой текст

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

PostScript

Следует заметить, что GhostScript рассматривает все принтеры, как графические устройства. Таким образом, при выводе на печать обычного текстового документа GhostScriptпреобразует текст в растровый рисунок и отправляет этот рисунок принтеру. Это означает, что GhostScript не может использовать шрифты, встроенные в принтер. Это так же означает, что печать документов через GhostScript иногда выполняется более медленно, чем печать тех же документов на драйверах Windows. Хотя в большинстве случаев эта разница практически не заметна, бывают и большие задержки.

Стандартная установка CUPS поддерживает довольно узкий спектр принтеров (хотя, это довольно спорный момент smile). Обычно, это модели с поддержкой PostScript и принтеры компаний HP и Epson. Если принтер автоматически не определился, то необходимо посетить сайт производителя принтера для получения пакета драйверов и инструкций об установке принтера в системе Linux.

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

Настройка безопасности CUPS

Давайте разберем каждый параметр.Как уже упоминалось выше, ServerName указывает имя сервера печати. LogLevel указывает подробность журналирования (по умолчанию при установке параметр равен info, если возникли какие-то проблемы с CUPS, а в протоколе нет ничего информативного, можно поднять уровень до максимального — debug2), Portуказывает на каком порту будет доступен веб-интерфейс, Listen позволяет указать на каком IP адресе будет доступен веб-интерфейс, а так же прослушиваемый сокет.

Параметры, начинающиеся на Browsing требуют отдельного разговора, они задают настройки «просмотра». В данном случае, под термином просмотр необходимо понимать возможность CUPS обнаруживать принтеры в сети. Данная возможность поддерживается на уровне протокола IPP. Обнаружение происходит посредством широковещательных рассылок, что при большом количестве серверов CUPS или при частом отключении/подключении принтеров может порождать дополнительную нагрузку на сеть. Так же, включение просмотра влечет за собой определенное бремя безопасности. Например, систему настроенную на автоматический поиск легко обмануть, предоставив поддельную информацию о принтерах, а при наличии недочетов в коде CUPS это может привести к негативным последствиям. Давайте разберем указанные параметры:

BrowseAllow и BrowseDeny

Browsing

Указывает CUPS предоставлять свои серверы в общий доступ, либо нет. Значения может принимать On или Off соответственно.

BrowseAddress

Аналогична BrowseAllow. за исключением того, что она задает КОМУ посылать пакеты, а не от кого принимать.

Особенности использования Веб интерфейса

Кроме веб-интерфейса, существуют так же консольные команды управления CUPS.

Параметры принтеров CUPS хранит в файле /etc/cups/printers.conf. В данный файл руками лезть не стоит. Он заполняется при настройке в веб интерфейсе. Пример файла:

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

Хочу еще отметить такой нюанс. CUPS разрабатывался как замена системе печати LPD. В LPD источником информации о имеющихся принтерах очередях печати был файл/etc/printcap. CUPS обратно совместим с данной системой печати и если мы посмотрим на файл printcap, то увидим, что:

файл printcap является символьной ссылкой на /var/run/cups/printcap. Т.о. CUPS сама следит за корректностью данного файла и тем самым обеспечивает обратную совместимость с LPD.

Устранение неполадок в системе печати

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

Файлы и каталоги CUPS

Большой объем данных лежит в /usr/share/cups/, в котором хранятся служебные файлы. Особый интерес представляет каталог /usr/share/cups/model/ (который в последней версии CUPS был перемещен в /usr/share/ppd/), который хранит описания для принтеров. При каждом старте сервер сканирует каталог /usr/share/cups/model на предмет появления новых описаний принтеров (PPD-файлов).

В процессе работы CUPS использует каталог /var/spool/cups/ для хранения описаний заданий печати и самих файлов заданий. Владельцем данного каталога должен быть пользователь root и группа lp. Права доступа определены, как 0710 (rwx—x—).

Так же используется каталог /var/run/cups/ для хранения информации о работе демона, такой как сокет, файл printcap и др.

Источник

Добавление принтера через web интерфейс CUPS

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

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

sudo cupsctl —remote-admin —share-printers —remote-any

sudo cupsctl ServerAlias=*

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

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

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

Перезапустить сервис печати CUPS командой:

Проверить состояние сервиса печати CUPS можно командой:

Для дальнейшей настройки открыть браузер и ввести адрес:

Нажать кнопку «Добавить принтер», на запрос авторизации ввести имя и пароль пользователя, входящего в группу lpadmin.

Далее будет представлен список устройств для выбора. Фактическое имя принтера отображается рядом с меткой ( например, USB-принтеры напротив USB Printer #1). Принтеру можно присваивать любое имя, аналогично для пунктов ‘Расположение’ и ‘Описание’. После выбора соответствующего драйвера настройки будут окончены.

При установке USB-принтер должен отображаться в списке устройств на странице Добавить принтер.

Убедитесь в правильности настроек, нажав на кнопку Print Test Page (Печать тестовой страницы) в выпадающем меню Maintenance (Обслуживание). Если принтер не печатает, но вы уверены в правильности всех настроек, попытайтесь сменить драйвер принтера на другой.

Печать файла из командной строки

Печать файла можно выполнить командой:

lp -d *имя_принтера* *имя_файла*

Добавление сетевого принтера из командной строки

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

lpadmin -p printername -E -v socket://11.22.33.44 -m drv:///sample.drv/laserjet.ppd

Копирование настроек принтеров

Для централизованного управления можно копировать файлы /etc/cups/printers.conf и /etc/cups/ppd/* с компьютера с настроенным принтером на удаленный компьютер при помощи scp:

Настройка печати на локальной машине

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

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

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

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

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

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

Настройка печати с авторизацией через PAM

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

sudo cupsctl —remote-admin —share-printers —remote-any
sudo 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, определяющий имя сервера печати, например:

ServerName computer.domain

Настройка печати с авторизацией через Kerberos (ALD)

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

sudo ald-admin group-add print_admins

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

  • lpmac_ald (только для версии Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) и при использовании в домене ALD);
  • lpmac (для всех остальных версий ОС Astra Linux Special Edition)

sudo ald-admin group-add lpmac_ald

или

sudo ald-admin group-add lpmac

В файле /etc/cups/cups-files.conf в значении параметра SystemGroup установить значение print_admins.
Создать в ALD учетную запись администратора печати и добавить ее в группу администраторов печати ALD, например выполнив команды:

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

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

  • lpmac_ald (только для версии ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) и при использовании в домене ALD);
  • lpmac (для всех остальных версий ОС Astra Linux Special Edition)

sudo ald-admin group-mod lpmac_ald —add-users —user=ald_print_admin

или

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

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

sudo ald-admin service-add ipp/server.my_domain

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

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

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

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

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

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

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

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

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

ServerName computer.domain

Состояние перевода: На этой странице представлен перевод статьи CUPS/Troubleshooting. Дата последней синхронизации: 8 января 2019. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

В этой статье рассматриваются все неспецифические (то есть не связанные с каким-либо одним принтером) проблемы CUPS и драйверов принтеров (но не проблемы, связанные с совместным использованием принтеров), включая методы определения точной природы проблемы и решения выявленной проблемы.

Введение

Наилучший способ борьбы с неисправностями — это выставить ‘LogLevel’ в файле /etc/cups/cupsd.conf на:

LogLevel debug

А потом посмотреть вывод из файла /var/log/cups/error_log например так:

# tail -n 100 -f /var/log/cups/error_log

Символы слева от вывода означают следующее:

  • D=Debug(отладка)
  • E=Error(ошибка)
  • I=Information(информация)
  • И так далее

Следующие файлы также могут быть полезны:

  • /var/log/cups/page_log — каждый раз при успешной печати, пишет новую запись
  • /var/log/cups/access_log — записывает всю активность на cupsd http1.1 сервере

Также, если вы хотите решить свои проблемы, важно понимать, как вообще работает CUPS. Вот краткая информация об этом:

  1. Когда вы жмёте ‘печать’ приложение отправляет .ps-файл (PostScript, язык-скрипт, который описывает, как выглядит страница) в систему CUPS (так происходит в большинстве программ).
  2. CUPS смотрит на PPD-файл (файл описания принтера) и находит, фильтры которые ему нужно использовать для преобразования .ps-файла в файл, который понимает ваш принтер (например, PJL,PCL). Обычно для этого ему требуется ghostscript.
  3. GhostScript принимает ввод и решает, какие фильтры ему использовать, потом применяет их и преобразовывает .ps-файл в формат, который понимает принтер.
  4. Затем файл передается бэкенду. Например, если у вас принтер подключен к usb порту, то используется usb бэкенд

Распечатайте документ и посмотрите error_log, чтобы получить более подробное и правильное представление об процессе печати.

Проблемы, возникающие в результате обновлений

Проблемы возникшие после обновления CUPS и сопутствующего ему набора программ

CUPS останавливается

Существует вероятность, что для правильной работы в обновленной версии понадобится новый файл конфигурации. Например, получение сообщения «404 — page not found» при попытке входа в панель управления CUPS через localhost:631.

Для того, чтобы воспользоваться новым конфигом, скопируйте /etc/cups/cupsd.conf.default в /etc/cups/cupsd.conf (при необходимости сделайте резервную копию старого конфига) и, чтобы новые настройки вступили в силу, перезапустите CUPS.

Для всех заданий — «остановлено»

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Если для всех отправленных на печать заданий установился статус «остановлено» («stopped»), — удалите принтер и установите его заново. Для этого войдите в веб-интерфейс CUPS, перейдите Принтеры > Удалить Принтер.

Для проверки настроек принтера перейдите во вкладку Принтеры, затем скопируйте отображаемую информацию. Далее нажмите на Администрирование. В выпадающем списке кликните Изменить принтер, перейдите к следующей странице(ам), и так далее.

Для всех заданий — «Принтер не отвечает»

Для сетевых принтеров, поскольку CUPS подключается через URI, необходимо убедиться, что в DNS настроен доступ к принтерам по IP. Например, если принтер подключен следующим образом:

lpd://BRN_020554/BINARY_P1

то имя хоста ‘BRN_020554’ должно соответствовать IP принтера, управляемого сервером CUPS. Если используется Avahi, убедитесь, что разрешение имени хоста Avahi работает.

Альтернативно, замените имя хоста, используемое в URI, IP-адресом принтера.

Версия PPD не совместима с gutenprint

Запустите:

# /usr/bin/cups-genppdupdate

И перезагрузите CUPS (будет выведено соответствующее сообщение после установки gutenprint).

Проблемы с сетью

Не удается найти принтер

Даже если CUPS обнаруживает сетевые принтеры, вы все равно можете получить ошибку «Не удается найти принтер» («Unable to locate printer») при попытке распечатать что-либо. Чтобы решить эту проблему, включите .разрешение локального имени хоста Avahi. Для получения дополнительной информации смотрите CUPS (Русский)#Сеть.

Эта проблема может возникать и при использовании файрвола (межсетевой экран, брандмауэр). Возможно, вам придется отключить его или установить корректные правила. Если вы используете system-config-printer для обнаружения сетевых принтеров, тогда он сделает все это автоматически.

Старый сервер CUPS

Начиная с версии CUPS 1.6, клиент по умолчанию использует IPP 2.0. Если сервер использует CUPS <= 1.5 / IPP <= 1.1, клиент не будет автоматически понижать версию протокола и, следовательно, не может связаться с сервером. Обходным путем является добавление опции version=1.1, описанной в Таблице 2. Опции URI IPP.

Общий принтер работает локально, но удаленный компьютер не печатает

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

Не удается найти файл PPD

/var/log/cups/error_log
Cannot connect to remote printer ipp://HP079676.local
copy_model: empty PPD file

Убедитесь, что Avahi настроен правильно. В частности, проверьте, что nss-mdns установлен и настроен в /etc/nsswitch.conf.

USB-принтеры

Конфликт с SANE

Если у вас также запущен SANE, возможно, что он конфликтует с CUPS. Чтобы исправить это, создайте правило Udev, обозначающее устройство как совпадающее с libsane:

/etc/udev/rules.d/99-printer.rules
ATTRS{idVendor}=="vendor id(код производителя)", ATTRS{idProduct}=="product id(код продукта)", MODE="0664", GROUP="lp", ENV{libsane_matched}="yes"

Конфликт с usblp

Доступ к USB-принтерам можно получить двумя способами: модулем ядра usblp и libusb. Первый — это классический способ. Это просто: данные отправляются на принтер, записывая их в файл устройства в виде простого последовательного потока данных. Чтение одного и того же файла устройства позволяет использовать двунаправленный доступ, по крайней мере, для таких вещей, как считывание уровней чернил, статуса или информации о возможностях принтера (PJL). Он работает очень хорошо для простых принтеров, но для многофункциональных устройств (принтер/сканер) он не подходит, и производители, такие как HP, поставляют свои собственные бэкенды. Источник: здесь.

Важно: Начиная с cups версии 1.6.0, больше не нужно заносить в запрет загрузки модуль ядра usblp.
Если вы узнаете, что это единственный способ исправить оставшуюся проблему, сообщите об этом в баг-трекер CUPS, а также можно связаться с Till Kamppeter (сопровождающий CUPS в Debian). Для получения дополнительной информации смотрите в upstream bug.

Если у вас возникли проблемы с работой USB-принтера, вы можете попробовать запрет загрузки для модуля ядра usblp:

/etc/modprobe.d/blacklistusblp.conf
blacklist usblp

Пользователям кастомного ядра может потребоваться вручную загрузить модуль ядра usbcore, прежде чем продолжить.

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

# journalctl -e

или

# dmesg

Если вы используете usblp, вывод должен указывать на то, что принтер был обнаружен следующим образом:

Feb 19 20:17:11 kernel: printer.c: usblp0: USB Bidirectional
printer dev 2 if 0 alt 0 proto 2 vid 0x04E8 pid 0x300E
Feb 19 20:17:11 kernel: usb.c: usblp driver claimed interface cfef3920
Feb 19 20:17:11 kernel: printer.c: v0.13: USB Printer Device Class driver

Если вы запретили загрузку usblp, вы увидите что-то вроде:

usb 3-2: new full speed USB device using uhci_hcd and address 3
usb 3-2: configuration #1 chosen from 1 choice

USB autosuspend

Ядро Linux автоматически приостанавливает USB-устройства, когда есть поддержка драйверов и устройства не используются. Это может сэкономить электроэнергию, но некоторые USB-принтеры считают, что они не подключены, когда ядро приостанавливает USB-порт, предотвращая печать. Это можно устранить, отключив autosuspend для конкретного устройства, для получения дополнительной информации смотрите Power management#USB autosuspend.

Плохие разрешения

Проверьте разрешения USB-порта принтера. Получите номер шины (BUSID) и устройства (DEVID) от lsusb:

 lsusb 
 Bus <BUSID> Device <DEVID>: ID <PRINTERID>:<VENDOR> Hewlett-Packard DeskJet D1360

Проверьте владельца, просмотрев devfs:

 # ls -l /dev/bus/usb/<BUSID>/<DEVID>

Демон cups запускается от пользователя «cups» и относится к группе «lp», поэтому либо этому пользователю, либо группе требуется доступ на чтение и запись в USB-устройство. Если вы считаете, что разрешения выглядят неправильно, вы можете временно изменить группу и разрешение:

# chgrp lp /dev/bus/usb/<BUSID>/<DEVID>
# chmod 664 /dev/bus/usb/<BUSID>/<DEVID>

Затем проверьте, может ли cups теперь видеть устройство USB правильно.

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

/etc/udev/rules.d/10-local.rules
SUBSYSTEM=="usb", ATTRS{idVendor}=="<VENDOR>", ATTRS{idProduct}=="<PRINTERID>", GROUP:="lp", MODE:="0664"

После редактирования перезагрузите правила udev этой командой:

# udevadm control --reload-rules

Каждая система может отличаться, поэтому обратитесь к вики-странице udev (Русский)#Список атрибутов устройства.

Проблемы с HP

Смотрите также CUPS/Принтероспецифичные проблемы#HP.

CUPS: «/usr/lib/cups/backend/hp failed»

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Убедитесь, что dbus установлен и запущен. Если ошибка повторяется, попробуйте запустить avahi-daemon.

Попробуйте добавить принтер в качестве сетевого принтера, используя протокол http:// .

Примечание: Там, возможно, потребуется установить права доступа.

CUPS: «Печать завершена», но принтер не печатает.

Это происходит на принтерах HP, когда вы выбираете (старый) драйвер hpijs (например, для Deskjet D1600 series). Вместо этого используйте драйвер hpcups.

Некоторые принтеры HP требуют, чтобы их прошивка загружалась с компьютера при каждом включении принтера. Вы можете столкнуться с этой проблемой, если есть проблема с udev (или аналогом), и правило загрузки прошивки никогда не запускается.
В качестве обходного пути вы можете вручную загрузить прошивку на принтер. Убедитесь, что принтер подключен и включен, затем выполните

hp-firmware -n

CUPS: ‘»foomatic-rip» not available/stopped with status 3’

Если, во время использования принтера HP, задания появляются в очереди, но все завершаются со статусом ‘остановлен’ (‘stopped’), а в /var/log/cups/error_log возникает одно из следующих сообщений об ошибках:

Filter "foomatic-rip" for printer printer_name not available: No such file or director

или:

PID pid (/usr/lib/cups/filter/foomatic-rip) stopped with status 3!

убедитесь, что hplip установлен.

CUPS: «Filter failed»

Ошибка «filter failed» может быть вызвана некоторым количеством причин. Журнал ошибок CUPS (по умолчанию /var/log/cups/error_log) должен записывать, какой фильтр не удалось загрузить и почему.

Отсутствует ghostscript

Установите ghostscript (/usr/lib/cups/filter/gstoraster нуждается в его запуске).

Отсутствует foomatic-db

Установите foomatic-db и foomatic-db-ppds. Это помогает в некоторых случаях.

Avahi не включен

Запустите и включите службу avahi-daemon.

Устаревший плагин

Эта ошибка может указывать на то, что плагин устарел (версия несовместима) и может произойти после обновления системы, возможно, появится сообщение Plugin error в журнале (логе).
Если вы установили hplip-pluginAUR, вам нужно обновить пакет, иначе перезапустите hp-setup -i, чтобы установить последнюю версию плагина.

Устаревшая конфигурация принтера

Начиная с hplip-pluginAUR версии 3.17.11 hpijs больше не доступен. Если у вас есть принтеры, использующие hpijs, они не будут печатать. Необходимо перенастроить их и выбрать вместо этого новый драйвер hpcups.

Вы можете проверить, если это ваш случай, посмотрев в error_log cups`а:

 $ grep hpijs /var/log/cups/error_log 
 ...
 D [09/Jan/2018:14:32:58 +0000] [Job 97] sh: hpijs: command not found
 ...

CUPS: печатает только пустую страницу и страницу с сообщением об ошибке на HP LaserJet

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Существует ошибка, которая приводит к сбою CUPS при печати изображений на HP LaserJet (в моем случае 3380). Ошибки были зафиксированы и исправлены в Ubuntu.
Первая страница пуста, вторая страница содержит следующее сообщение об ошибке:

 ERROR:
 invalidaccess
 OFFENDING COMMAND:
 filter
 STACK:
 /SubFileDecode
 endstream
 ...

Чтобы устранить проблему, выполните следующую команду как суперпользователь (root):

# lpadmin -p printer -o pdftops-renderer-default=pdftops

HPLIP 3.13: Плагин установлен, но HP Device Manager жалуется на его отсутствие

Возможно, проблема связана с изменением прав доступа файла, которое было внесено в /var/lib/hp/hplip.state. Чтобы исправить проблему, достаточно простых команд chmod 644 /var/lib/hp/hplip.state и chmod 755 /var/lib/hp. Для получения дополнительной информации, пожалуйста, прочитайте эту ссылку.

hp-toolbox: «Unable to communicate with device»

# hp-toolbox
# error: Unable to communicate with device (code=12): hp:/usb/printer id

Разрешение проблемы

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: Предположительно, hp-toolbox пытается получить доступ к /dev/usb/* или /dev/lp, поэтому он должен находиться в группе lp. Но почему sys? И я не могу воспроизвести это… (Discuss in Talk:CUPS (Русский)/Troubleshooting (Русский))

Может потребоваться добавить пользователя в группы lp и sys.

Виртуальный CDROM у принтеров

Это также может быть вызвано принтерами, такими как P1102, которые предоставляют виртуальный привод CD-ROM для драйверов MS Windows. Появляется lp dev, а затем исчезает. В этом случае попробуйте пакеты usb-modeswitch и usb-modeswitch-data, что позволяет отключить «Smart Drive» (правила udev, включенные в указанные пакеты).

Сетевые принтеры

Это также может происходить с сетевыми принтерами, использующими динамические имена хостов, если avahi-daemon не запущен. Другая причина заключается в том, что hp-setup не удалось найти принтер, потому что IP-адрес принтера изменился из-за DHCP. Если это так, подумайте о добавлении резервирования DHCP для принтера в конфигурации сервера DHCP.

hp-setup просит указать PPD-файл для обнаруженного принтера

Кроме того, при выборе файла PPD в графическом режиме hp-setup поле не обновляется и сообщение об ошибке не отображается.

Или, если вы используете интерактивный (консольный) режим, можно столкнуться с чем-то похожим на это даже при введении правильного пути к файлу ppd:

 Please enter the full filesystem path to the PPD file to use (q=quit) :/usr/share/ppd/HP/hp-deskjet_2050_j510_series.ppd.gz
 Traceback (most recent call last):
   File "/usr/bin/hp-setup", line 536, in <module>
     desc = nickname_pat.search(nickname).group(1)
 TypeError: cannot use a string pattern on a bytes-like object

Решение заключается в установке и запуске cups перед запуском hp-setup.

hp-setup: «Qt/PyQt 4 initialization failed»

Установите пакет python-pyqt4AUR, который дополнительно требуется (optdepend) для hplip. Альтернативно вы можете запустить hp-setup с интерфейсом командной строки с помощью флага -i.

hp-setup: находит принтер автоматически, но сразу после этого сообщает «Unable to communicate with device» при печати тестовой страницы

Это, по крайней мере, происходит с hplip 3.13.5-2 у принтера HP Officejet 6500A через локальное сетевое соединение. Чтобы решить проблему, укажите IP-адрес принтера HP для hp-setup, чтобы обнаружить принтер.

hp-setup: «KeyError: ‘family-class’»

Если при добавлении принтера в пользовательском интерфейсе он не работает, или вы получили KeyError: 'family-class' от hp-setup, возможно потребуется обновить вручную /usr/share/hplip/data/models/models.dat.

Проверьте определен ли раздел family-class=Undefined для вашего принтера. Если нет, добавьте это:

/usr/share/hplip/data/models/models.dat
[hp_laserjet_pro_mfp_m225dw]	
...
family-class=Undefined

Другие

Принтер «приостановлен — «Paused»» или «Остановлен» cо статусом «Рендеринг завершен»

Низкий уровень чернил

При низком уровне чернил некоторые принтеры зависают со статусом «Рендеринг завершен» («Rendering completed»), и, если это сетевой принтер, принтер может даже стать недоступным для CUPS, несмотря на то, что он правильно подключен к сети. Замена картриджа (картриджей) с низким уровнем чернил в этом случае вернет принтер в статус «Готов» («Ready») и, если он — сетевой принтер, то он станет снова доступным для CUPS.

Примечание: Если вы используете сторонние чернильные картриджи, то принтер может сообщать неточную информацию о уровне чернил. Если вы используете сторонние картриджи, и ваш принтер работал нормально, но теперь завис со статусом «Рендеринг завершен» («Rendering completed»), замените чернильные картриджи, независимо от уровня отображаемых чернил, перед тем, как пробовать другие решения проблемы.

Завершение печати из-за ошибок авторизации

Если удаленный принтер запрашивает аутентификацию, CUPS автоматически добавит директиву AuthInfoRequired для принтера в /etc/cups/printers.conf. Однако некоторые графические приложения (например, некоторые версии LibreOffice [1]) не имеют возможности запрашивать учетные данные, поэтому печать завершилась с ошибкой.
Чтобы исправить это, укажите требуемое имя пользователя и пароль в URI.
Для получения дополнительной информации смотрите [2], [3].

Unknown supported format: application/postscript

(Не найдена поддержка формата: application/postscript)

Закомментируйте строки:

application/octet-stream        application/vnd.cups-raw        0      -

в /etc/cups/mime.convs и:

application/octet-stream

в /etc/cups/mime.types.

Ошибка задания для печати (Print-Job) client-error-document-format-not-supported

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

Не удается получить список драйверов принтера

(Также применимо к ошибке «-1 не поддерживается!»)

Попробуйте удалить драйверы Foomatic или обратитесь к CUPS/Принтероспецифичные проблемы#HPLIP для обходного пути.

lp: Error — Scheduler Not Responding

Если вы получите эту ошибку, убедитесь, что CUPS запущен, переменная окружения CUPS_SERVER не установлена и /etc/cups/client.conf корректный.

Сообщение об ошибке: «Using invalid Host»

Попробуйте добавить ServerAlias * в /etc/cups/cupsd.conf.

Не удается отправить на печать из LibreOffice

Если вы можете распечатать тестовую страницу с веб-интерфейса CUPS, но не из LibreOffice, попробуйте установить пакет a2ps.

Вывод принтера сдвинут

По-видимому, это связано с неправильным размером страницы, установленным в CUPS.

Принтер не работает (приостановлен — «Paused») после ошибки

Когда во время печати возникает ошибка, принтер в CUPS может перестать отвечать на запросы. lpq сообщает, что принтер is not ready (не готов), его можно активировать с помощью cupsenable. В веб-интерфейсе CUPS принтер отображается как приостановлен — «Paused», его можно возобновить с помощью Восстановить печать.

Чтобы CUPS автоматически активировал принтер, измените политику ошибок с стандартной настройки Останавливать принтер (stop-printer) на Повторить задание (retry-this-job).

Samsung: URF ERROR — Incomplete Session by time out

Эта ошибка обычно возникает при печати файлов по сети через IPP на принтерах Samsung и решается с помощью пакета samsung-unified-driverAUR.

Примечание: Соответствующий код ошибки 11-1112 соответствует внутренней проблеме с принтером, поэтому обращение к технической поддержке Samsung бесполезно.

Brother: Принтер печатает несколько копий

Иногда принтер печатает несколько копий документа (например, MFC-9330CDW напечатал 10 копий). Решение заключается в обновлении прошивки принтера.

Обычный пользователь не может изменять настройки принтера или удалять определенные задания

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

Состояние перевода: На этой странице представлен перевод статьи CUPS/Troubleshooting. Дата последней синхронизации: 8 января 2019. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Ссылки по теме

  • CUPS (Русский)
  • CUPS/Принтероспецифичные проблемы

В этой статье рассматриваются все неспецифические (то есть не связанные с каким-либо одним принтером) проблемы CUPS и драйверов принтеров (но не проблемы, связанные с совместным использованием принтеров), включая методы определения точной природы проблемы и решения выявленной проблемы.

Contents

  • 1 Введение
  • 2 Проблемы, возникающие в результате обновлений
    • 2.1 CUPS останавливается
    • 2.2 Для всех заданий — «остановлено»
    • 2.3 Для всех заданий — «Принтер не отвечает»
    • 2.4 Версия PPD не совместима с gutenprint
  • 3 Проблемы с сетью
    • 3.1 Не удается найти принтер
    • 3.2 Старый сервер CUPS
    • 3.3 Общий принтер работает локально, но удаленный компьютер не печатает
    • 3.4 Не удается найти файл PPD
  • 4 USB-принтеры
    • 4.1 Конфликт с SANE
    • 4.2 Конфликт с usblp
    • 4.3 USB autosuspend
    • 4.4 Плохие разрешения
  • 5 Проблемы с HP
    • 5.1 CUPS: «/usr/lib/cups/backend/hp failed»
    • 5.2 CUPS: «Печать завершена», но принтер не печатает.
    • 5.3 CUPS: ‘»foomatic-rip» not available/stopped with status 3’
    • 5.4 CUPS: «Filter failed»
      • 5.4.1 Отсутствует ghostscript
      • 5.4.2 Отсутствует foomatic-db
      • 5.4.3 Avahi не включен
      • 5.4.4 Устаревший плагин
      • 5.4.5 Устаревшая конфигурация принтера
    • 5.5 CUPS: печатает только пустую страницу и страницу с сообщением об ошибке на HP LaserJet
    • 5.6 HPLIP 3.13: Плагин установлен, но HP Device Manager жалуется на его отсутствие
    • 5.7 hp-toolbox: «Unable to communicate with device»
      • 5.7.1 Разрешение проблемы
      • 5.7.2 Виртуальный CDROM у принтеров
      • 5.7.3 Сетевые принтеры
    • 5.8 hp-setup просит указать PPD-файл для обнаруженного принтера
    • 5.9 hp-setup: «Qt/PyQt 4 initialization failed»
    • 5.10 hp-setup: находит принтер автоматически, но сразу после этого сообщает «Unable to communicate with device» при печати тестовой страницы
    • 5.11 hp-setup: «KeyError: ‘family-class’»
  • 6 Другие
    • 6.1 Принтер «приостановлен — «Paused»» или «Остановлен» cо статусом «Рендеринг завершен»
      • 6.1.1 Низкий уровень чернил
    • 6.2 Завершение печати из-за ошибок авторизации
    • 6.3 Unknown supported format: application/postscript
    • 6.4 Ошибка задания для печати (Print-Job) client-error-document-format-not-supported
    • 6.5 Не удается получить список драйверов принтера
    • 6.6 lp: Error — Scheduler Not Responding
    • 6.7 Сообщение об ошибке: «Using invalid Host»
    • 6.8 Не удается отправить на печать из LibreOffice
    • 6.9 Вывод принтера сдвинут
    • 6.10 Принтер не работает (приостановлен — «Paused») после ошибки
    • 6.11 Samsung: URF ERROR — Incomplete Session by time out
    • 6.12 Brother: Принтер печатает несколько копий
    • 6.13 Обычный пользователь не может изменять настройки принтера или удалять определенные задания

Введение

Наилучший способ борьбы с неисправностями — это выставить ‘LogLevel’ в файле /etc/cups/cupsd.conf на:

А потом посмотреть вывод из файла /var/log/cups/error_log например так:

# tail -n 100 -f /var/log/cups/error_log

Символы слева от вывода означают следующее:

  • D=Debug(отладка)
  • E=Error(ошибка)
  • I=Information(информация)
  • И так далее

Следующие файлы также могут быть полезны:

  • /var/log/cups/page_log — каждый раз при успешной печати, пишет новую запись
  • /var/log/cups/access_log — записывает всю активность на cupsd http1.1 сервере

Также, если вы хотите решить свои проблемы, важно понимать, как вообще работает CUPS. Вот краткая информация об этом:

  1. Когда вы жмёте ‘печать’ приложение отправляет .ps-файл (PostScript, язык-скрипт, который описывает, как выглядит страница) в систему CUPS (так происходит в большинстве программ).
  2. CUPS смотрит на PPD-файл (файл описания принтера) и находит, фильтры которые ему нужно использовать для преобразования .ps-файла в файл, который понимает ваш принтер (например, PJL,PCL). Обычно для этого ему требуется ghostscript.
  3. GhostScript принимает ввод и решает, какие фильтры ему использовать, потом применяет их и преобразовывает .ps-файл в формат, который понимает принтер.
  4. Затем файл передается бэкенду. Например, если у вас принтер подключен к usb порту, то используется usb бэкенд

Распечатайте документ и посмотрите error_log, чтобы получить более подробное и правильное представление об процессе печати.

Проблемы, возникающие в результате обновлений

Проблемы возникшие после обновления CUPS и сопутствующего ему набора программ

CUPS останавливается

Существует вероятность, что для правильной работы в обновленной версии понадобится новый файл конфигурации. Например, получение сообщения «404 — page not found» при попытке входа в панель управления CUPS через localhost:631.

Для того, чтобы воспользоваться новым конфигом, скопируйте /etc/cups/cupsd.conf.default в /etc/cups/cupsd.conf (при необходимости сделайте резервную копию старого конфига) и, чтобы новые настройки вступили в силу, перезапустите CUPS.

Для всех заданий — «остановлено»

Если для всех отправленных на печать заданий установился статус «остановлено» («stopped»), — удалите принтер и установите его заново. Для этого войдите в веб-интерфейс CUPS, перейдите Принтеры > Удалить Принтер.

Для проверки настроек принтера перейдите во вкладку Принтеры, затем скопируйте отображаемую информацию. Далее нажмите на Администрирование. В выпадающем списке кликните Изменить принтер, перейдите к следующей странице(ам), и так далее.

Для всех заданий — «Принтер не отвечает»

Для сетевых принтеров, поскольку CUPS подключается через URI, необходимо убедиться, что в DNS настроен доступ к принтерам по IP. Например, если принтер подключен следующим образом:

lpd://BRN_020554/BINARY_P1

то имя хоста ‘BRN_020554’ должно соответствовать IP принтера, управляемого сервером CUPS. Если используется Avahi, убедитесь, что разрешение имени хоста Avahi работает.

Альтернативно, замените имя хоста, используемое в URI, IP-адресом принтера.

Версия PPD не совместима с gutenprint

Запустите:

# /usr/bin/cups-genppdupdate

И перезагрузите CUPS (будет выведено соответствующее сообщение после установки gutenprint).

Проблемы с сетью

Не удается найти принтер

Даже если CUPS обнаруживает сетевые принтеры, вы все равно можете получить ошибку «Не удается найти принтер» («Unable to locate printer») при попытке распечатать что-либо. Чтобы решить эту проблему, включите .разрешение локального имени хоста Avahi. Для получения дополнительной информации смотрите CUPS (Русский)#Сеть.

Эта проблема может возникать и при использовании файрвола (межсетевой экран, брандмауэр). Возможно, вам придется отключить его или установить корректные правила. Если вы используете system-config-printer для обнаружения сетевых принтеров, тогда он сделает все это автоматически.

Старый сервер CUPS

Начиная с версии CUPS 1.6, клиент по умолчанию использует IPP 2.0. Если сервер использует CUPS <= 1.5 / IPP <= 1.1, клиент не будет автоматически понижать версию протокола и, следовательно, не может связаться с сервером. Обходным путем является добавление опции version=1.1, описанной в Таблице 2. Опции URI IPP.

Общий принтер работает локально, но удаленный компьютер не печатает

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

Не удается найти файл PPD

/var/log/cups/error_log

Cannot connect to remote printer ipp://HP079676.local
copy_model: empty PPD file

Убедитесь, что Avahi настроен правильно. В частности, проверьте, что nss-mdns установлен и настроен в /etc/nsswitch.conf.

USB-принтеры

Конфликт с SANE

Если у вас также запущен SANE, возможно, что он конфликтует с CUPS. Чтобы исправить это, создайте правило Udev, обозначающее устройство как совпадающее с libsane:

/etc/udev/rules.d/99-printer.rules ATTRS{idVendor}=="*vendor id(код производителя)*", ATTRS{idProduct}=="*product id(код продукта)*", MODE="0664", GROUP="lp", ENV{libsane_matched}="yes"

Конфликт с usblp

Доступ к USB-принтерам можно получить двумя способами: модулем ядра usblp и libusb. Первый — это классический способ. Это просто: данные отправляются на принтер, записывая их в файл устройства в виде простого последовательного потока данных. Чтение одного и того же файла устройства позволяет использовать двунаправленный доступ, по крайней мере, для таких вещей, как считывание уровней чернил, статуса или информации о возможностях принтера (PJL). Он работает очень хорошо для простых принтеров, но для многофункциональных устройств (принтер/сканер) он не подходит, и производители, такие как HP, поставляют свои собственные бэкенды. Источник: здесь.

Важно: Начиная с cups версии 1.6.0, больше не нужно заносить в запрет загрузки модуль ядра usblp. Если вы узнаете, что это единственный способ исправить оставшуюся проблему, сообщите об этом в баг-трекер CUPS, а также можно связаться с Till Kamppeter (сопровождающий CUPS в Debian). Для получения дополнительной информации смотрите в upstream bug.

Если у вас возникли проблемы с работой USB-принтера, вы можете попробовать запрет загрузки для модуля ядра usblp:

/etc/modprobe.d/blacklistusblp.conf

Пользователям кастомного ядра может потребоваться вручную загрузить модуль ядра usbcore, прежде чем продолжить.

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

или

Если вы используете usblp, вывод должен указывать на то, что принтер был обнаружен следующим образом:

Feb 19 20:17:11 kernel: printer.c: usblp0: USB Bidirectional
printer dev 2 if 0 alt 0 proto 2 vid 0x04E8 pid 0x300E
Feb 19 20:17:11 kernel: usb.c: usblp driver claimed interface cfef3920
Feb 19 20:17:11 kernel: printer.c: v0.13: USB Printer Device Class driver

Если вы запретили загрузку usblp, вы увидите что-то вроде:

usb 3-2: new full speed USB device using uhci_hcd and address 3
usb 3-2: configuration #1 chosen from 1 choice

USB autosuspend

Ядро Linux автоматически приостанавливает USB-устройства, когда есть поддержка драйверов и устройства не используются. Это может сэкономить электроэнергию, но некоторые USB-принтеры считают, что они не подключены, когда ядро приостанавливает USB-порт, предотвращая печать. Это можно устранить, отключив autosuspend для конкретного устройства, для получения дополнительной информации смотрите Power management#USB autosuspend.

Плохие разрешения

Проверьте разрешения USB-порта принтера. Получите номер шины (BUSID) и устройства (DEVID) от lsusb:

lsusb Bus <BUSID> Device <DEVID>: ID <PRINTERID>:<VENDOR> Hewlett-Packard DeskJet D1360

Проверьте владельца, просмотрев devfs:

 # ls -l /dev/bus/usb/<BUSID>/<DEVID>

Демон cups запускается от пользователя «cups» и относится к группе «lp», поэтому либо этому пользователю, либо группе требуется доступ на чтение и запись в USB-устройство. Если вы считаете, что разрешения выглядят неправильно, вы можете временно изменить группу и разрешение:

# chgrp lp /dev/bus/usb/<BUSID>/<DEVID>
# chmod 664 /dev/bus/usb/<BUSID>/<DEVID>

Затем проверьте, может ли cups теперь видеть устройство USB правильно.

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

/etc/udev/rules.d/10-local.rules SUBSYSTEM=="usb", ATTRS{idVendor}=="<VENDOR>", ATTRS{idProduct}=="<PRINTERID>", GROUP:="lp", MODE:="0664"

После редактирования перезагрузите правила udev этой командой:

# udevadm control --reload-rules

Каждая система может отличаться, поэтому обратитесь к вики-странице udev (Русский)#Список атрибутов устройства.

Проблемы с HP

Смотрите также CUPS/Принтероспецифичные проблемы#HP.

CUPS: «/usr/lib/cups/backend/hp failed»

Убедитесь, что dbus установлен и запущен. Если ошибка повторяется, попробуйте запустить avahi-daemon.

Попробуйте добавить принтер в качестве сетевого принтера, используя протокол http:// .

Примечание: Там, возможно, потребуется установить права доступа.

CUPS: «Печать завершена», но принтер не печатает.

Это происходит на принтерах HP, когда вы выбираете (старый) драйвер hpijs (например, для Deskjet D1600 series). Вместо этого используйте драйвер hpcups.

Некоторые принтеры HP требуют, чтобы их прошивка загружалась с компьютера при каждом включении принтера. Вы можете столкнуться с этой проблемой, если есть проблема с udev (или аналогом), и правило загрузки прошивки никогда не запускается. В качестве обходного пути вы можете вручную загрузить прошивку на принтер. Убедитесь, что принтер подключен и включен, затем выполните

CUPS: ‘»foomatic-rip» not available/stopped with status 3’

Если, во время использования принтера HP, задания появляются в очереди, но все завершаются со статусом ‘остановлен’ (‘stopped’), а в /var/log/cups/error_log возникает одно из следующих сообщений об ошибках:

Filter "foomatic-rip" for printer *printer_name* not available: No such file or director

или:

PID *pid* (/usr/lib/cups/filter/foomatic-rip) stopped with status 3!

убедитесь, что hplip установлен.

CUPS: «Filter failed»

Ошибка «filter failed» может быть вызвана некоторым количеством причин. Журнал ошибок CUPS (по умолчанию /var/log/cups/error_log) должен записывать, какой фильтр не удалось загрузить и почему.

Отсутствует ghostscript

Установите ghostscript (/usr/lib/cups/filter/gstoraster нуждается в его запуске).

Отсутствует foomatic-db

Установите foomatic-db и foomatic-db-ppds. Это помогает в некоторых случаях.

Avahi не включен

Запустите и включите службу avahi-daemon.

Устаревший плагин

Эта ошибка может указывать на то, что плагин устарел (версия несовместима) и может произойти после обновления системы, возможно, появится сообщение Plugin error в журнале (логе). Если вы установили hplip-plugin, вам нужно обновить пакет, иначе перезапустите hp-setup -i, чтобы установить последнюю версию плагина.

Устаревшая конфигурация принтера

Начиная с hplip-plugin версии 3.17.11 hpijs больше не доступен. Если у вас есть принтеры, использующие hpijs, они не будут печатать. Необходимо перенастроить их и выбрать вместо этого новый драйвер hpcups.

Вы можете проверить, если это ваш случай, посмотрев в error_log cups`а:

$ grep hpijs /var/log/cups/error_log

 ...
 D [09/Jan/2018:14:32:58 +0000] [Job 97] **sh: hpijs: command not found**
 ...

CUPS: печатает только пустую страницу и страницу с сообщением об ошибке на HP LaserJet

Существует ошибка, которая приводит к сбою CUPS при печати изображений на HP LaserJet (в моем случае 3380). Ошибки были зафиксированы и исправлены в Ubuntu. Первая страница пуста, вторая страница содержит следующее сообщение об ошибке:

 ERROR:
 invalidaccess
 OFFENDING COMMAND:
 filter
 STACK:
 /SubFileDecode
 endstream
 ...

Чтобы устранить проблему, выполните следующую команду как суперпользователь (root):

# lpadmin -p *printer* -o pdftops-renderer-default=pdftops

HPLIP 3.13: Плагин установлен, но HP Device Manager жалуется на его отсутствие

Возможно, проблема связана с изменением прав доступа файла, которое было внесено в /var/lib/hp/hplip.state. Чтобы исправить проблему, достаточно простых команд chmod 644 /var/lib/hp/hplip.state и chmod 755 /var/lib/hp. Для получения дополнительной информации, пожалуйста, прочитайте эту ссылку.

hp-toolbox: «Unable to communicate with device»

# hp-toolbox
# error: Unable to communicate with device (code=12): hp:/usb/*printer id*

Разрешение проблемы

Может потребоваться добавить пользователя в группы lp и sys.

Виртуальный CDROM у принтеров

Это также может быть вызвано принтерами, такими как P1102, которые предоставляют виртуальный привод CD-ROM для драйверов MS Windows. Появляется lp dev, а затем исчезает. В этом случае попробуйте пакеты usb-modeswitch и usb-modeswitch-data, что позволяет отключить «Smart Drive» (правила udev, включенные в указанные пакеты).

Сетевые принтеры

Это также может происходить с сетевыми принтерами, использующими динамические имена хостов, если avahi-daemon не запущен. Другая причина заключается в том, что hp-setup не удалось найти принтер, потому что IP-адрес принтера изменился из-за DHCP. Если это так, подумайте о добавлении резервирования DHCP для принтера в конфигурации сервера DHCP.

hp-setup просит указать PPD-файл для обнаруженного принтера

Кроме того, при выборе файла PPD в графическом режиме hp-setup поле не обновляется и сообщение об ошибке не отображается.

Или, если вы используете интерактивный (консольный) режим, можно столкнуться с чем-то похожим на это даже при введении правильного пути к файлу ppd:

 Please enter the full filesystem path to the PPD file to use (q=quit) :/usr/share/ppd/HP/hp-deskjet_2050_j510_series.ppd.gz
 Traceback (most recent call last):
   File "/usr/bin/hp-setup", line 536, in <module>
     desc = nickname_pat.search(nickname).group(1)
 TypeError: cannot use a string pattern on a bytes-like object

Решение заключается в установке и запуске cups перед запуском hp-setup.

hp-setup: «Qt/PyQt 4 initialization failed»

Установите пакет python-pyqt4, который дополнительно требуется (optdepend) для hplip. Альтернативно вы можете запустить hp-setup с интерфейсом командной строки с помощью флага -i.

hp-setup: находит принтер автоматически, но сразу после этого сообщает «Unable to communicate with device» при печати тестовой страницы

Это, по крайней мере, происходит с hplip 3.13.5-2 у принтера HP Officejet 6500A через локальное сетевое соединение. Чтобы решить проблему, укажите IP-адрес принтера HP для hp-setup, чтобы обнаружить принтер.

hp-setup: «KeyError: ‘family-class’»

Если при добавлении принтера в пользовательском интерфейсе он не работает, или вы получили KeyError: 'family-class' от hp-setup, возможно потребуется обновить вручную /usr/share/hplip/data/models/models.dat.

Проверьте определен ли раздел family-class=Undefined для вашего принтера. Если нет, добавьте это:

/usr/share/hplip/data/models/models.dat

[hp_laserjet_pro_mfp_m225dw]	
...
family-class=Undefined

Другие

Принтер «приостановлен — «Paused»» или «Остановлен» cо статусом «Рендеринг завершен»

Низкий уровень чернил

При низком уровне чернил некоторые принтеры зависают со статусом «Рендеринг завершен» («Rendering completed»), и, если это сетевой принтер, принтер может даже стать недоступным для CUPS, несмотря на то, что он правильно подключен к сети. Замена картриджа (картриджей) с низким уровнем чернил в этом случае вернет принтер в статус «Готов» («Ready») и, если он — сетевой принтер, то он станет снова доступным для CUPS.

Примечание: Если вы используете сторонние чернильные картриджи, то принтер может сообщать неточную информацию о уровне чернил. Если вы используете сторонние картриджи, и ваш принтер работал нормально, но теперь завис со статусом «Рендеринг завершен» («Rendering completed»), замените чернильные картриджи, независимо от уровня отображаемых чернил, перед тем, как пробовать другие решения проблемы.

Завершение печати из-за ошибок авторизации

Если удаленный принтер запрашивает аутентификацию, CUPS автоматически добавит директиву AuthInfoRequired для принтера в /etc/cups/printers.conf. Однако некоторые графические приложения (например, некоторые версии LibreOffice [1]) не имеют возможности запрашивать учетные данные, поэтому печать завершилась с ошибкой. Чтобы исправить это, укажите требуемое имя пользователя и пароль в URI. Для получения дополнительной информации смотрите [2], [3].

Unknown supported format: application/postscript

(Не найдена поддержка формата: application/postscript)

Закомментируйте строки:

application/octet-stream        application/vnd.cups-raw        0      -

в /etc/cups/mime.convs и:

в /etc/cups/mime.types.

Ошибка задания для печати (Print-Job) client-error-document-format-not-supported

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

Не удается получить список драйверов принтера

(Также применимо к ошибке «-1 не поддерживается!»)

Попробуйте удалить драйверы Foomatic или обратитесь к CUPS/Принтероспецифичные проблемы#HPLIP для обходного пути.

lp: Error — Scheduler Not Responding

Если вы получите эту ошибку, убедитесь, что CUPS запущен, переменная окружения CUPS_SERVER не установлена и /etc/cups/client.conf корректный.

Сообщение об ошибке: «Using invalid Host»

Попробуйте добавить ServerAlias * в /etc/cups/cupsd.conf.

Не удается отправить на печать из LibreOffice

Если вы можете распечатать тестовую страницу с веб-интерфейса CUPS, но не из LibreOffice, попробуйте установить пакет a2ps.

Вывод принтера сдвинут

По-видимому, это связано с неправильным размером страницы, установленным в CUPS.

Принтер не работает (приостановлен — «Paused») после ошибки

Когда во время печати возникает ошибка, принтер в CUPS может перестать отвечать на запросы. lpq сообщает, что принтер is not ready (не готов), его можно активировать с помощью cupsenable. В веб-интерфейсе CUPS принтер отображается как приостановлен — «Paused», его можно возобновить с помощью Восстановить печать.

Чтобы CUPS автоматически активировал принтер, измените политику ошибок с стандартной настройки Останавливать принтер (stop-printer) на Повторить задание (retry-this-job).

Samsung: URF ERROR — Incomplete Session by time out

Эта ошибка обычно возникает при печати файлов по сети через IPP на принтерах Samsung и решается с помощью пакета samsung-unified-driver.

Примечание: Соответствующий код ошибки 11-1112 соответствует внутренней проблеме с принтером, поэтому обращение к технической поддержке Samsung бесполезно.

Brother: Принтер печатает несколько копий

Иногда принтер печатает несколько копий документа (например, MFC-9330CDW напечатал 10 копий). Решение заключается в обновлении прошивки принтера.

Обычный пользователь не может изменять настройки принтера или удалять определенные задания

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

Содержание

  1. CUPS (Русский)/Troubleshooting (Русский)
  2. Contents
  3. Введение
  4. Проблемы, возникающие в результате обновлений
  5. CUPS останавливается
  6. Для всех заданий — «остановлено»
  7. Для всех заданий — «Принтер не отвечает»
  8. Версия PPD не совместима с gutenprint
  9. Проблемы с сетью
  10. Не удается найти принтер
  11. Старый сервер CUPS
  12. Общий принтер работает локально, но удаленный компьютер не печатает
  13. Не удается найти файл PPD
  14. USB-принтеры
  15. Конфликт с SANE
  16. Конфликт с usblp
  17. USB autosuspend
  18. Плохие разрешения
  19. Проблемы с HP
  20. CUPS: «/usr/lib/cups/backend/hp failed»
  21. CUPS: «Печать завершена», но принтер не печатает.
  22. CUPS: ‘»foomatic-rip» not available/stopped with status 3’
  23. CUPS: «Filter failed»
  24. Отсутствует ghostscript
  25. Отсутствует foomatic-db
  26. Avahi не включен
  27. Устаревший плагин
  28. Устаревшая конфигурация принтера
  29. CUPS: печатает только пустую страницу и страницу с сообщением об ошибке на HP LaserJet
  30. HPLIP 3.13: Плагин установлен, но HP Device Manager жалуется на его отсутствие
  31. hp-toolbox: «Unable to communicate with device»
  32. Разрешение проблемы
  33. Виртуальный CDROM у принтеров
  34. Сетевые принтеры
  35. hp-setup просит указать PPD-файл для обнаруженного принтера
  36. hp-setup: «Qt/PyQt 4 initialization failed»
  37. hp-setup: находит принтер автоматически, но сразу после этого сообщает «Unable to communicate with device» при печати тестовой страницы
  38. hp-setup: «KeyError: ‘family-class’»
  39. Другие
  40. Принтер «приостановлен — «Paused»» или «Остановлен» cо статусом «Рендеринг завершен»
  41. Низкий уровень чернил
  42. Завершение печати из-за ошибок авторизации
  43. Unknown supported format: application/postscript
  44. Ошибка задания для печати (Print-Job) client-error-document-format-not-supported
  45. Не удается получить список драйверов принтера
  46. lp: Error — Scheduler Not Responding
  47. Сообщение об ошибке: «Using invalid Host»
  48. Не удается отправить на печать из LibreOffice
  49. Вывод принтера сдвинут
  50. Принтер не работает (приостановлен — «Paused») после ошибки
  51. Samsung: URF ERROR — Incomplete Session by time out
  52. Brother: Принтер печатает несколько копий
  53. Обычный пользователь не может изменять настройки принтера или удалять определенные задания

CUPS (Русский)/Troubleshooting (Русский)

В этой статье рассматриваются все неспецифические (то есть не связанные с каким-либо одним принтером) проблемы CUPS и драйверов принтеров (но не проблемы, связанные с совместным использованием принтеров), включая методы определения точной природы проблемы и решения выявленной проблемы.

Contents

Введение

Наилучший способ борьбы с неисправностями — это выставить ‘LogLevel’ в файле /etc/cups/cupsd.conf на:

А потом посмотреть вывод из файла /var/log/cups/error_log например так:

Символы слева от вывода означают следующее:

  • D=Debug(отладка)
  • E=Error(ошибка)
  • I=Information(информация)
  • И так далее

Следующие файлы также могут быть полезны:

  • /var/log/cups/page_log — каждый раз при успешной печати, пишет новую запись
  • /var/log/cups/access_log — записывает всю активность на cupsd http1.1 сервере

Также, если вы хотите решить свои проблемы, важно понимать, как вообще работает CUPS. Вот краткая информация об этом:

  1. Когда вы жмёте ‘печать’ приложение отправляет .ps-файл (PostScript, язык-скрипт, который описывает, как выглядит страница) в систему CUPS (так происходит в большинстве программ).
  2. CUPS смотрит на PPD-файл (файл описания принтера) и находит, фильтры которые ему нужно использовать для преобразования .ps-файла в файл, который понимает ваш принтер (например, PJL,PCL). Обычно для этого ему требуется ghostscript.
  3. GhostScript принимает ввод и решает, какие фильтры ему использовать, потом применяет их и преобразовывает .ps-файл в формат, который понимает принтер.
  4. Затем файл передается бэкенду. Например, если у вас принтер подключен к usb порту, то используется usb бэкенд

Распечатайте документ и посмотрите error_log , чтобы получить более подробное и правильное представление об процессе печати.

Проблемы, возникающие в результате обновлений

Проблемы возникшие после обновления CUPS и сопутствующего ему набора программ

CUPS останавливается

Существует вероятность, что для правильной работы в обновленной версии понадобится новый файл конфигурации. Например, получение сообщения «404 — page not found» при попытке входа в панель управления CUPS через localhost:631.

Для того, чтобы воспользоваться новым конфигом, скопируйте /etc/cups/cupsd.conf.default в /etc/cups/cupsd.conf (при необходимости сделайте резервную копию старого конфига) и, чтобы новые настройки вступили в силу, перезапустите CUPS.

Для всех заданий — «остановлено»

The factual accuracy of this article or section is disputed.

Если для всех отправленных на печать заданий установился статус «остановлено» («stopped»), — удалите принтер и установите его заново. Для этого войдите в веб-интерфейс CUPS, перейдите Принтеры > Удалить Принтер.

Для проверки настроек принтера перейдите во вкладку Принтеры, затем скопируйте отображаемую информацию. Далее нажмите на Администрирование. В выпадающем списке кликните Изменить принтер, перейдите к следующей странице(ам), и так далее.

Для всех заданий — «Принтер не отвечает»

Для сетевых принтеров, поскольку CUPS подключается через URI, необходимо убедиться, что в DNS настроен доступ к принтерам по IP. Например, если принтер подключен следующим образом:

то имя хоста ‘BRN_020554’ должно соответствовать IP принтера, управляемого сервером CUPS. Если используется Avahi, убедитесь, что разрешение имени хоста Avahi работает.

Альтернативно, замените имя хоста, используемое в URI, IP-адресом принтера.

Версия PPD не совместима с gutenprint

И перезагрузите CUPS (будет выведено соответствующее сообщение после установки gutenprint).

Проблемы с сетью

Не удается найти принтер

Даже если CUPS обнаруживает сетевые принтеры, вы все равно можете получить ошибку «Не удается найти принтер» («Unable to locate printer») при попытке распечатать что-либо. Чтобы решить эту проблему, включите .разрешение локального имени хоста Avahi. Для получения дополнительной информации смотрите CUPS (Русский)#Сеть.

Эта проблема может возникать и при использовании файрвола (межсетевой экран, брандмауэр). Возможно, вам придется отключить его или установить корректные правила. Если вы используете system-config-printer для обнаружения сетевых принтеров, тогда он сделает все это автоматически.

Старый сервер CUPS

Начиная с версии CUPS 1.6, клиент по умолчанию использует IPP 2.0. Если сервер использует CUPS version=1.1 , описанной в Таблице 2. Опции URI IPP.

Общий принтер работает локально, но удаленный компьютер не печатает

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

Не удается найти файл PPD

Убедитесь, что Avahi настроен правильно. В частности, проверьте, что nss-mdns установлен и настроен в /etc/nsswitch.conf .

USB-принтеры

Конфликт с SANE

Если у вас также запущен SANE, возможно, что он конфликтует с CUPS. Чтобы исправить это, создайте правило Udev, обозначающее устройство как совпадающее с libsane:

Конфликт с usblp

Доступ к USB-принтерам можно получить двумя способами: модулем ядра usblp и libusb. Первый — это классический способ. Это просто: данные отправляются на принтер, записывая их в файл устройства в виде простого последовательного потока данных. Чтение одного и того же файла устройства позволяет использовать двунаправленный доступ, по крайней мере, для таких вещей, как считывание уровней чернил, статуса или информации о возможностях принтера (PJL). Он работает очень хорошо для простых принтеров, но для многофункциональных устройств (принтер/сканер) он не подходит, и производители, такие как HP, поставляют свои собственные бэкенды. Источник: здесь.

Если у вас возникли проблемы с работой USB-принтера, вы можете попробовать запрет загрузки для модуля ядра usblp :

Пользователям кастомного ядра может потребоваться вручную загрузить модуль ядра usbcore , прежде чем продолжить.

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

Если вы используете usblp , вывод должен указывать на то, что принтер был обнаружен следующим образом:

Если вы запретили загрузку usblp , вы увидите что-то вроде:

USB autosuspend

Ядро Linux автоматически приостанавливает USB-устройства, когда есть поддержка драйверов и устройства не используются. Это может сэкономить электроэнергию, но некоторые USB-принтеры считают, что они не подключены, когда ядро приостанавливает USB-порт, предотвращая печать. Это можно устранить, отключив autosuspend для конкретного устройства, для получения дополнительной информации смотрите Power management#USB autosuspend.

Плохие разрешения

Проверьте разрешения USB-порта принтера. Получите номер шины (BUSID) и устройства (DEVID) от lsusb :

Проверьте владельца, просмотрев devfs:

Демон cups запускается от пользователя «cups» и относится к группе «lp», поэтому либо этому пользователю, либо группе требуется доступ на чтение и запись в USB-устройство. Если вы считаете, что разрешения выглядят неправильно, вы можете временно изменить группу и разрешение:

Затем проверьте, может ли cups теперь видеть устройство USB правильно.

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

После редактирования перезагрузите правила udev этой командой:

Каждая система может отличаться, поэтому обратитесь к вики-странице udev (Русский)#Список атрибутов устройства.

Проблемы с HP

CUPS: «/usr/lib/cups/backend/hp failed»

The factual accuracy of this article or section is disputed.

Убедитесь, что dbus установлен и запущен. Если ошибка повторяется, попробуйте запустить avahi-daemon.

Попробуйте добавить принтер в качестве сетевого принтера, используя протокол http:// .

CUPS: «Печать завершена», но принтер не печатает.

Это происходит на принтерах HP, когда вы выбираете (старый) драйвер hpijs (например, для Deskjet D1600 series). Вместо этого используйте драйвер hpcups.

Некоторые принтеры HP требуют, чтобы их прошивка загружалась с компьютера при каждом включении принтера. Вы можете столкнуться с этой проблемой, если есть проблема с udev (или аналогом), и правило загрузки прошивки никогда не запускается. В качестве обходного пути вы можете вручную загрузить прошивку на принтер. Убедитесь, что принтер подключен и включен, затем выполните

CUPS: ‘»foomatic-rip» not available/stopped with status 3’

Если, во время использования принтера HP, задания появляются в очереди, но все завершаются со статусом ‘остановлен’ (‘stopped’), а в /var/log/cups/error_log возникает одно из следующих сообщений об ошибках:

CUPS: «Filter failed»

Ошибка «filter failed» может быть вызвана некоторым количеством причин. Журнал ошибок CUPS (по умолчанию /var/log/cups/error_log ) должен записывать, какой фильтр не удалось загрузить и почему.

Отсутствует ghostscript

Установите ghostscript ( /usr/lib/cups/filter/gstoraster нуждается в его запуске).

Отсутствует foomatic-db

Установите foomatic-db и foomatic-db-ppds . Это помогает в некоторых случаях.

Avahi не включен

Устаревший плагин

Эта ошибка может указывать на то, что плагин устарел (версия несовместима) и может произойти после обновления системы, возможно, появится сообщение Plugin error в журнале (логе). Если вы установили hplip-plugin AUR , вам нужно обновить пакет, иначе перезапустите hp-setup -i , чтобы установить последнюю версию плагина.

Устаревшая конфигурация принтера

Начиная с hplip-plugin AUR версии 3.17.11 hpijs больше не доступен. Если у вас есть принтеры, использующие hpijs, они не будут печатать. Необходимо перенастроить их и выбрать вместо этого новый драйвер hpcups.

Вы можете проверить, если это ваш случай, посмотрев в error_log cups`а:

CUPS: печатает только пустую страницу и страницу с сообщением об ошибке на HP LaserJet

This article or section is out of date.

Существует ошибка, которая приводит к сбою CUPS при печати изображений на HP LaserJet (в моем случае 3380). Ошибки были зафиксированы и исправлены в Ubuntu. Первая страница пуста, вторая страница содержит следующее сообщение об ошибке:

Чтобы устранить проблему, выполните следующую команду как суперпользователь (root):

HPLIP 3.13: Плагин установлен, но HP Device Manager жалуется на его отсутствие

Возможно, проблема связана с изменением прав доступа файла, которое было внесено в /var/lib/hp/hplip.state . Чтобы исправить проблему, достаточно простых команд chmod 644 /var/lib/hp/hplip.state и chmod 755 /var/lib/hp . Для получения дополнительной информации, пожалуйста, прочитайте эту ссылку.

hp-toolbox: «Unable to communicate with device»

Разрешение проблемы

The factual accuracy of this article or section is disputed.

Может потребоваться добавить пользователя в группы lp и sys .

Виртуальный CDROM у принтеров

Это также может быть вызвано принтерами, такими как P1102, которые предоставляют виртуальный привод CD-ROM для драйверов MS Windows. Появляется lp dev, а затем исчезает. В этом случае попробуйте пакеты usb-modeswitch и usb-modeswitch-data, что позволяет отключить «Smart Drive» (правила udev, включенные в указанные пакеты).

Сетевые принтеры

Это также может происходить с сетевыми принтерами, использующими динамические имена хостов, если avahi-daemon не запущен. Другая причина заключается в том, что hp-setup не удалось найти принтер, потому что IP-адрес принтера изменился из-за DHCP. Если это так, подумайте о добавлении резервирования DHCP для принтера в конфигурации сервера DHCP.

hp-setup просит указать PPD-файл для обнаруженного принтера

Кроме того, при выборе файла PPD в графическом режиме hp-setup поле не обновляется и сообщение об ошибке не отображается.

Или, если вы используете интерактивный (консольный) режим, можно столкнуться с чем-то похожим на это даже при введении правильного пути к файлу ppd:

Решение заключается в установке и запуске cups перед запуском hp-setup .

hp-setup: «Qt/PyQt 4 initialization failed»

Установите пакет python-pyqt4 AUR , который дополнительно требуется (optdepend) для hplip . Альтернативно вы можете запустить hp-setup с интерфейсом командной строки с помощью флага -i .

hp-setup: находит принтер автоматически, но сразу после этого сообщает «Unable to communicate with device» при печати тестовой страницы

Это, по крайней мере, происходит с hplip 3.13.5-2 у принтера HP Officejet 6500A через локальное сетевое соединение. Чтобы решить проблему, укажите IP-адрес принтера HP для hp-setup, чтобы обнаружить принтер.

hp-setup: «KeyError: ‘family-class’»

Если при добавлении принтера в пользовательском интерфейсе он не работает, или вы получили KeyError: ‘family-class’ от hp-setup , возможно потребуется обновить вручную /usr/share/hplip/data/models/models.dat .

Проверьте определен ли раздел family-class=Undefined для вашего принтера. Если нет, добавьте это:

Другие

Принтер «приостановлен — «Paused»» или «Остановлен» cо статусом «Рендеринг завершен»

Низкий уровень чернил

При низком уровне чернил некоторые принтеры зависают со статусом «Рендеринг завершен» («Rendering completed»), и, если это сетевой принтер, принтер может даже стать недоступным для CUPS, несмотря на то, что он правильно подключен к сети. Замена картриджа (картриджей) с низким уровнем чернил в этом случае вернет принтер в статус «Готов» («Ready») и, если он — сетевой принтер, то он станет снова доступным для CUPS.

Завершение печати из-за ошибок авторизации

Если удаленный принтер запрашивает аутентификацию, CUPS автоматически добавит директиву AuthInfoRequired для принтера в /etc/cups/printers.conf . Однако некоторые графические приложения (например, некоторые версии LibreOffice [1]) не имеют возможности запрашивать учетные данные, поэтому печать завершилась с ошибкой. Чтобы исправить это, укажите требуемое имя пользователя и пароль в URI. Для получения дополнительной информации смотрите [2], [3].

Unknown supported format: application/postscript

(Не найдена поддержка формата: application/postscript)

в /etc/cups/mime.convs и:

Ошибка задания для печати (Print-Job) client-error-document-format-not-supported

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

Не удается получить список драйверов принтера

(Также применимо к ошибке «-1 не поддерживается!»)

Попробуйте удалить драйверы Foomatic или обратитесь к CUPS/Принтероспецифичные проблемы#HPLIP для обходного пути.

lp: Error — Scheduler Not Responding

Если вы получите эту ошибку, убедитесь, что CUPS запущен, переменная окружения CUPS_SERVER не установлена и /etc/cups/client.conf корректный.

Сообщение об ошибке: «Using invalid Host»

Попробуйте добавить ServerAlias * в /etc/cups/cupsd.conf .

Не удается отправить на печать из LibreOffice

Если вы можете распечатать тестовую страницу с веб-интерфейса CUPS, но не из LibreOffice, попробуйте установить пакет a2ps .

Вывод принтера сдвинут

По-видимому, это связано с неправильным размером страницы, установленным в CUPS.

Принтер не работает (приостановлен — «Paused») после ошибки

Когда во время печати возникает ошибка, принтер в CUPS может перестать отвечать на запросы. lpq сообщает, что принтер is not ready (не готов), его можно активировать с помощью cupsenable . В веб-интерфейсе CUPS принтер отображается как приостановлен — «Paused», его можно возобновить с помощью Восстановить печать.

Чтобы CUPS автоматически активировал принтер, измените политику ошибок с стандартной настройки Останавливать принтер (stop-printer) на Повторить задание (retry-this-job).

Samsung: URF ERROR — Incomplete Session by time out

Эта ошибка обычно возникает при печати файлов по сети через IPP на принтерах Samsung и решается с помощью пакета samsung-unified-driver AUR .

Brother: Принтер печатает несколько копий

Иногда принтер печатает несколько копий документа (например, MFC-9330CDW напечатал 10 копий). Решение заключается в обновлении прошивки принтера.

Обычный пользователь не может изменять настройки принтера или удалять определенные задания

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

Источник

  • Печать

Страницы: [1]   Вниз

Тема: сервер печати CUPS  (Прочитано 4279 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
FLAXE

Доброго времени суток ув. форумчане.
У меня странная ситуация с CUPSом, не могу авторизоваться через веб интерфейс как администратор.
Те жму в административной части «добавить принтер» вылазит окошко авторизации, ввожу туда имя пользователя и пароль, которые были при установке ubuntu 14.04. После чего он сбрасывается и снова это же окошко не чего не происходит. Подскажите как решить эту проблему, или что я возможно упустил?
Перегрузить систему целиком не очень желательно. НУ и думаю дело не в этом точно


Оффлайн
ru_kane

А если его рестартануть?

rc-service cupsd restart

Kubuntu Desktop 20.04 [Intel Core i5-8600K, Asus ROG STRIX Z370-F Gaming, ASUS STRIX-GTX1050TI-4G-GAMING]


Оффлайн
FLAXE

ru_kane,

/etc/init.d/cups restartэтой командой перегружал.. не помогает.
в вашем варианте

root@srv01:~# rc-service cupsd restart
rc-service: команда не найдена


Оффлайн
ru_kane

У меня тоже иногда этот купс начинает себя странно вести и ничего не помогает, кроме реинсталла.

Kubuntu Desktop 20.04 [Intel Core i5-8600K, Asus ROG STRIX Z370-F Gaming, ASUS STRIX-GTX1050TI-4G-GAMING]


Оффлайн
FLAXE

Вопрос тогда как правильно его удалить..
что б переставить. Тк там самба еще крутится.. чтоб какие нить не закончить.
Тк сервер щас уже в работе..


Оффлайн
ru_kane

Можно попробовать поставить без удаления:

/etc/init.d/cups stop
apt-get install cups

Kubuntu Desktop 20.04 [Intel Core i5-8600K, Asus ROG STRIX Z370-F Gaming, ASUS STRIX-GTX1050TI-4G-GAMING]


Оффлайн
ArcFi

вылазит окошко авторизации

Входить от имени root.
Или добавить юзверя в группы какие-нибудь.


Оффлайн
FLAXE

ArcFi,

Входить от имени root.

Я активировал даже root’а вводил просто жму ентер и окно на мгновение проподает и по новой просить авторизацию.


Оффлайн
ArcFi

sudo passwd rootЗадаёте пароль.
Потом пробуете войти под root.

У меня всё работает.


Оффлайн
FLAXE

ArcFi, кхм.. а у меня не работает. Странно.. щас попробую перегрузить сервер среди ночи врятли кто то что то делает;)

« Последнее редактирование: 06 Июля 2014, 00:25:29 от FLAXE »


Оффлайн
ArcFi



Оффлайн
emvoronov

Всем добрый день. Прошу помощи в решении проблемы прописывания принтеров в AD с дальнейшей установкой виндовым клиентам через GPO.
Имею: Ubuntu Server 14.x + Samba 4.x AD DC + Cups
установил сетевые принтеры через web консоль управления cups с предоставлением общего доступа.

При попытке установить принтер через консоль управления выдается ошибка «не удается установить принтер.отказано в доступе», при этом драйвера успешно копируются для дальнейшей раздачи клиентам, в выделенное хранилище драйверов.
При попытке установить с клиента — принтеры вообще не находятся на указанном сервере.
Перелопатил кучу ссылок на эту тему, но все что было предложено не увенчалось успехом.
конфиг samba и cups во вложении

Заранее спасибо.
P/S/ не судите строго я только учусь в линухах…


  • Печать

Страницы: [1]   Вверх

нет root. Пытаюсь добавить сетевой принтер — запрещено, из под юзера администратора (пароль и логин были запрошены и приняты).

Что можно сделать?

P.S.

нашел что можно изменить SystemGroup.

sudo groupadd printadmin
sudo usermod -aG printadmin mylogin

в sudo gvim /etc/cups/cupsd.conf просто добавил строку в конце

SystemGroup printadmin

ничего не изменилось — запрещено.

P.S.2 CUPS 1.5.3

См. также:

  • Astra Linux Special Edition 1.5: Печатающие устройства HP

Добавление принтера через web интерфейс CUPS

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

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

sudo cupsctl —remote-admin —share-printers —remote-any

sudo cupsctl ServerAlias=*

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

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

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

Перезапустить сервис печати CUPS командой:

Проверить состояние сервиса печати CUPS можно командой:

Для дальнейшей настройки открыть браузер и ввести адрес:

Нажать кнопку «Добавить принтер», на запрос авторизации ввести имя и пароль пользователя, входящего в группу lpadmin.

Далее будет представлен список устройств для выбора. Фактическое имя принтера отображается рядом с меткой ( например, USB-принтеры напротив USB Printer #1). Принтеру можно присваивать любое имя, аналогично для пунктов ‘Расположение’ и ‘Описание’. После выбора соответствующего драйвера настройки будут окончены.

При установке USB-принтер должен отображаться в списке устройств на странице Добавить принтер.

Убедитесь в правильности настроек, нажав на кнопку Print Test Page (Печать тестовой страницы) в выпадающем меню Maintenance (Обслуживание). Если принтер не печатает, но вы уверены в правильности всех настроек, попытайтесь сменить драйвер принтера на другой.

Печать файла из командной строки

Печать файла можно выполнить командой:

lp -d *имя_принтера* *имя_файла*

Добавление сетевого принтера из командной строки

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

lpadmin -p printername -E -v socket://11.22.33.44 -m drv:///sample.drv/laserjet.ppd

Копирование настроек принтеров

Для централизованного управления можно копировать файлы /etc/cups/printers.conf и /etc/cups/ppd/* с компьютера с настроенным принтером на удаленный компьютер при помощи scp:

Настройка печати на локальной машине

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

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

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

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

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

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

Настройка печати с аутентификацией через PAM

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

sudo cupsctl —remote-admin —share-printers —remote-any
sudo 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, определяющий имя сервера печати, например:

ServerName computer.domain

Настройка печати с аутентификацией через Kerberos (ALD)

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

sudo ald-admin group-add print_admins

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

  • lpmac_ald (только для версии Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) и при использовании в домене ALD);
  • lpmac (для всех остальных версий ОС Astra Linux Special Edition)

sudo ald-admin group-add lpmac_ald

или

sudo ald-admin group-add lpmac

В файле /etc/cups/cups-files.conf в значении параметра SystemGroup установить значение print_admins.
Создать в ALD учетную запись администратора печати и добавить ее в группу администраторов печати ALD, например выполнив команды:

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

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

  • lpmac_ald (только для версии ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) и при использовании в домене ALD);
  • lpmac (для всех остальных версий ОС Astra Linux Special Edition)

sudo ald-admin group-mod lpmac_ald —add-users —user=ald_print_admin

или

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

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

sudo ald-admin service-add ipp/server.my_domain

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

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

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

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

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

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

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

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

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

ServerName computer.domain

В ПК Ubuntu я добавил сетевой принтер через сеть CUPS gui (это — Профессионал HP LaserJet P1102), со следующим URL

http://my_host_name:631/printers/HP_LaserJet_Professional_P1102

Затем я добавил принтер к другим компьютерам (Windows и Mac один), и они правильно обнаружили его. Однако, когда я пытаюсь отправить документ принтеру с одним из этих трех компьютеров (включенная Ubuntu), следующая ошибка появляется и в сети CUPS gui и в Окне свойств Параметра принтера Ubuntu:

Unable to get printer status

Как решить его?

задан
29 December 2016 в 12:17

поделиться

2 ответа

Вы уже подключили свой принтер Ваша LAN через Wi-Fi и подключили принтер к Вашему ПК Ubuntu. Или по крайней мере Ваш ПК обнаружил принтер.

причина соединение не работало со мной, то, потому что я имел http://printer_ip вместо ipp://printer_ip как соединение URI.

Так в моей сети CUPS gui, я вижу что-то вроде этого теперь:

Description: Canon PIXUS MG3530
Location:
Driver: Canon PIXUS MG3530 - CUPS+Gutenprint v5.2.11 (color, 2-sided printing)
Connection: ipp://192.168.0.110
Defaults: job-sheets=none, none media=iso_a4_210x297mm sides=one-sided

Hope это помогает.

ответ дан Yoshua Nahar
2 December 2019 в 02:16

поделиться

Я решил проблему, вручную вставив IP-адрес принтера, как в следующем ответе: how-do-i-modify-a-printers-ip-address-in-cups#913534

Каким-то образом CUPS больше не мог обрабатывать URL-адрес, хотя он все еще был способен правильно идентифицировать принтер.

Надеюсь, это поможет (мне потребовалось несколько дней, чтобы понять это!)

ответ дан j.c
14 January 2022 в 18:10

поделиться

Другие вопросы по тегам:

Похожие вопросы:

Решение проблемы CUPS при добавлении принтера «Unable to add printer: Forbidden»

Если возникает проблема с добавлением принтера через систему CUPS
http://localhost:631/admin/, эту ошибку можно исправить.

Сообщение об ошибке «Unable to add printer: Forbidden» возникает при нажатии кнопки «Add printer»:
add

Как можно догадаться, проблема при добавлении принтера («Add printer») связана с правами текущего пользователя.

Право на администрирование имеют пользователи группы «lpadmin», что указано в файле

/etc/cups/cups-files.conf:

#
# Administrator user group, used to match @SYSTEM in cupsd.conf policy rules…
# This cannot contain the Group value for security reasons…
SystemGroup lpadmin


Добавляем текущего пользователя в группу «lpadmin»:

whoami

Узнали имя пользователя. Теперь добавляем его в группу «lpadmin»:

sudo usermod add -aG lpadmin vladimir

Проблема решена.

Также добавить пользователя в группу можно через графический интерфейс LXQT:

Пуск — Параметры — Настройки LXQT — Пользователи и группы
lxqt

Если пользователь находится в группе «lpadmin», то проблемы с администрированием CUPS через веб-интерфейс не возникают.

Проверка CUPS

При переходе на страницу администрирования CUPS, сообщение о необходимости ввода имени пользователя и пароля больше не возникает.

Начальная страница CUPS
http://localhost:631/

Принтеры:
http://localhost:631/printers/?

Задания:
http://localhost:631/jobs/?WHICH_JOBS=all

Похожие публикации

Павелъ

Доброго времени суток.
Имею ОС Simply Linux 7.0.4 на стационарном ПК и ноутбуке. Имеется МФУ Brother DCP-7060D, с официального сайта скачал драйвера, установил, после чего в Центр управления системой — настройка печати настроил принтер на стационарном ПК. Печать пробной страницы не пошла. Но через Libre Office печать идёт.
После понадобилось настроить Brother DCP — 7060D в качестве сетевого на ноутбуке. Через «Центр управления системой — настройка печати» не вышло, поставил галочки разрешить доступ, удалённое администрирование на обеих машинах, ничего не вышло. Пошёл на cups-сервер, случайно создал ещё один Brother DCP — 7060D. Но подключиться к ним не смог. Теперь я не могу их удалить, даже если захожу на cups через рута. Не могу добавить с ноутбука.
Вот такая ошибка.
Добавить принтер — ошибка

Unable to add printer:

    Не санкционировано
Если ввожу адрес стационарного компьютера в «Центр управления системой — настройка печати», то принтер находится, два адреса:
ipp://host-102.localdomain:631/printers/Brother-DCP-7060D
smb://xxx.xxx.x.102/Brother_DCP-7060D
При попытке к ним подключиться:
Ошибка сервера CUPS
Ошибка во время операции CUPS: «cups-authorization-canceled».

Как на CUPS удалить полностью все принтеры, заново настроить только один и к нему подключиться с ноутбука при том, что доступ к настройкам закрыт


Записан


rm -f /etc/cups/printers.conf


Записан

Андрей Черепанов (cas@)


Павелъ

Не помогло, удалил файл, очистил кэши, куки в браузере. Всё равно не могу удалить принтеры. «Не санкциониравано»


Записан


Ага, так это не принтеры локального CUPS, а анонсированные со сторонних CUPS. Поэтому и удалить не получится. Если не хотите их видеть – убирайте в параметрах доступ к другим CUPS.


Записан

Андрей Черепанов (cas@)


Павелъ

Нормальный ход. Удалить я принтеры не мог. Они сами каким-то образом из системы выпилились. В купсе их нет. Хотел добавить через купс, а он по-прежнему пишет, что не санкционировано.
Полез через графическую оболочку настраивать, а она не видит подключённых через usb принтеров. Что творится с системой не знаю.
Может как-то можно полностью снести купс и конфиги и накатить их заново?
Ладно, на ноуте не могу подключиться к принтеру — уже смирился. Но на стационарном — уже жизненная необходимость.


Записан


У вас какая-то ненормальная ситуация. Выкладывайте вывод
lsusb и /var/log/cups/errors


Записан

Андрей Черепанов (cas@)


Павелъ

Я по-глупости снёс конфиги купса в /etc. Теперь в браузере 127.0.0.1:631 страница не отображается.

[root@host-102 ~]# lsusb
Bus 003 Device 005: ID 03eb:3301 Atmel Corp. at43301 4-Port Hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 006: ID 0458:003a KYE Systems Corp. (Mouse Systems) NetScroll+ Mini Traveler / Genius NetScroll 120
Bus 004 Device 004: ID 045e:00dd Microsoft Corp. Comfort Curve Keyboard 2000 V1.0
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 002: ID 046d:0823 Logitech, Inc.
Bus 005 Device 004: ID 04f9:0249 Brother Industries, Ltd
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
[root@host-102 ~]# cat /var/log/cups/errors
cat: /var/log/cups/errors: Нет такого файла или каталога
[root@host-102 ~]# /var/log/cups/errors
bash: /var/log/cups/errors: Нет такого файла или каталога


Записан


попробуйте удалить купс и сопутствующие пакеты, а потом снова его поставить


Записан


попробуйте удалить купс и сопутствующие пакеты, а потом снова его поставить

Да можно просто apt-get install cups —reinstall


Записан


попробуйте удалить купс и сопутствующие пакеты, а потом снова его поставить

Да можно просто apt-get install cups —reinstall

А можно ещё проще:

apt-get reinstall cups


Записан

Андрей Черепанов (cas@)


Павелъ

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

[root@host-102 ~]# links 127.0.0.1:631 > out.txt
ELinks: В соединении отказано
Переустановка купса не помогла(((


Записан


Интересно, что творит в системе установщик этого официального драйвера и какие манипуляции он совершает в системе. Я бы на вашем месте просто попытался подсунуть cups’у ppd файл из, например, вот этого brgenml1cupswrapper-3.1.0-1.i386.rpm пакета (в нём три файла), который скачается при выборе на сайте пункта Generic CUPSwrapper printer driver (rpm package).


Записан


Переустановка купса не помогла(((

дак купс запущен или нет?
в соединении отказано — на порту никого нет.


Записан


Павелъ

В том-то и дело, что не могу запустить.
Вот я от рута зашёл

[root@host-102 ~]# system-config-printer
Error creating proxy: Соединение закрыто (g-io-error-quark, 18)
Error creating proxy: Соединение закрыто (g-io-error-quark, 18)
Error creating proxy: Соединение закрыто (g-io-error-quark, 18)
Error creating proxy: Соединение закрыто (g-io-error-quark, 18)
Error creating proxy: Соединение закрыто (g-io-error-quark, 18)


Записан


ps -ax | grep cups

что говорит?


Записан


Понравилась статья? Поделить с друзьями:
  • Невозможно запустить приложение код ошибки 12
  • Невозможно запланировать конференцию код ошибки 206
  • Невозможно запланировать конференцию код ошибки 1006028000 зум
  • Невозможно запланировать конференцию код ошибки 100006000 zoom
  • Невозможно загрузить торрент неизвестная ошибка