Ändern Sie die CUPS-Standard-Druckerfehlerrichtlinie

9

Ich führe CUPS-Druck auf einer Reihe von Mehrbenutzer-Linux-Anwendungsservern aus. Die Systeme sind RHEL oder CentOS Version 4, 5 oder 6. Beim Starten des EL5 verwendet der CUPS-Druckserver standardmäßig eine Fehlerrichtlinie, die den Drucker grundsätzlich deaktiviert, wenn ein Fehler oder eine Unterbrechung auftritt (USB-Kabeltrennung, Netzwerkfehler, Papierstau usw.). ). Dies ist die ErrorPolicyAnweisung in der Zeilengruppe des Druckers in der /etc/cups/printers.confDatei.

<Printer backupZ4>
Info backupZ4
DeviceURI socket://backupZ4:9100
State Idle
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

Normalerweise ändere ich dieses Feld ErrorPolicy retry-jobmanuell in der Konfigurationsdatei oder wenn ich den Drucker über die Befehlszeile erstelle:

lpadmin -p backupZ4 -v socket://backupZ4:9100 -o printer-error-policy=retry-job -E 

Wenn andere Benutzer oder Anbieter das Drucksystem verwalten, vergessen sie diese Änderung häufig, was dazu führt, dass Drucker nach einem Papierstau oder anderen Fehlern, die mit a korrigiert werden müssen, schwer deaktiviert werden cupsenable.

Ich würde gerne wissen, wie man retry-jobdie Standard-ErrorPolicy in CUPS versus erstellt stop-printer.

ewwhite
quelle

Antworten:

8

Es gibt eine Funktionsanforderung, die für genau dieses Verhalten mit einer Auflösung für CUPS 1.3 geschlossen wurde. Link zum CUPS-Bug-Tracker: http://www.cups.org/str.php?L1871

Ich habe keine Dokumentation gefunden, die dieses Verhalten in der CUPS-Online-Dokumentation unterstützt, aber die Dokumentation im CUPS 1.5.2-Quell-Tarball, die ich heruntergeladen habe, zeigt an, dass eine globale 'ErrorPolicy'-Deklaration aus der Konfigurationsdatei cupsd.conf funktionieren würde.

Auszug aus der Cups.conf-Dokumentation in Ubuntu CUPS 1.5.2:

CUPS 1.3 / Mac OS X 10.5

ErrorPolicy

  Beispiele

     * ErrorPolicy-Abbruchjob
     * ErrorPolicy-Wiederholungsjob
     * ErrorPolicy Stop-Drucker

  Beschreibung

   Die ErrorPolicy-Direktive definiert die Standardrichtlinie, die verwendet wird, wenn a
   Das Backend kann keinen Druckauftrag an den Drucker senden.

   Folgende Werte werden unterstützt:

     * abort-job - Bricht den Job ab und fährt mit dem nächsten Job in der Warteschlange fort
     * Wiederholungsjob - Wiederholen Sie den Job, nachdem Sie N Sekunden gewartet haben. die cupsd.conf
       Die JobRetryInterval-Direktive steuert den Wert von N.
     * Diesen Job erneut versuchen - Wiederholen Sie den aktuellen Job sofort und auf unbestimmte Zeit.
     * Stop-Drucker - Stoppen Sie den Drucker und bewahren Sie den Auftrag für den zukünftigen Druck auf.
       Dies ist der Standardwert

(Hinweis: Dokumentation Copyright von Apple Inc. und neu formatiert, um lesbar zu sein.)

Magellan
quelle
Ja, dies hat endlich seinen Weg in RHEL / CentOS gefunden. Ich konnte die Änderung global vornehmen. Beachten Sie, dass dies die Einstellungen in vorhandenen Druckern nicht überschreibt. Dafür sorgt ein schnelles Finden / Ersetzen oder Sedieren.
ewwhite
Jede Idee , warum die einzige Option für die Druckerklassen ist Retry-this-Job in CUPS Webinterface? CUPS 2.1 / Ubuntu 16.04. Drucker in diesen Klassen können alle Fehlerrichtlinien haben, aber die Klasse wird nur diesen Job wiederholen?
Gnudiff
Sie sollten dies besser als eigenständige Frage stellen. Ich habe CUPS seit Ende 2013 nicht mehr berührt.
Magellan