Cambiar la política de error de impresora predeterminada de CUPS

9

Ejecuto la impresión CUPS en varios servidores de aplicaciones Linux multiusuario. Los sistemas son RHEL o CentOS versión 4, 5 o 6. Al iniciar el EL5, el servidor de impresión CUPS adopta una política de error que básicamente desactiva la impresora cuando hay un error o una interrupción (desconexión del cable USB, error de red, atasco de papel, etc.) ) Esta es la ErrorPolicydirectiva en la estrofa de la impresora en el /etc/cups/printers.confarchivo.

<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>

Normalmente cambio este campo ErrorPolicy retry-jobmanualmente en el archivo de configuración o cuando creo la impresora a través de la línea de comando:

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

Cuando otros usuarios o proveedores administran el sistema de impresión, a menudo olvidan este cambio, lo que hace que las impresoras se deshabiliten por completo después de un atasco de papel u otros problemas que deben corregirse con a cupsenable.

Me gustaría saber cómo hacer retry-jobla ErrorPolicy predeterminada en CUPS versus stop-printer.

ewwhite
fuente

Respuestas:

8

Hay una solicitud de función que se cerró con resolución a CUPS 1.3 por exactamente este comportamiento. Enlace al rastreador de errores CUPS: http://www.cups.org/str.php?L1871

No encontré documentación para respaldar este comportamiento en la documentación en línea de CUPS, pero la documentación en el tarball fuente CUPS 1.5.2 que descargué indica que una declaración global 'ErrorPolicy' funcionaría desde el archivo de configuración cupsd.conf.

Extracto de la documentación cupsd.conf en Ubuntu CUPS 1.5.2:

TAZAS 1.3 / Mac OS X 10.5

Política de error

  Ejemplos

     * ErrorPolicy abort-job
     * ErrorPolicy retry-job
     * ErrorPolicy detener impresora

  Descripción

   La directiva ErrorPolicy define la política predeterminada que se utiliza cuando un
   el backend no puede enviar un trabajo de impresión a la impresora.

   Se admiten los siguientes valores:

     * abort-job: cancela el trabajo y continúa con el siguiente trabajo en la cola
     * retry-job: vuelva a intentar el trabajo después de esperar N segundos; the cupsd.conf
       La directiva JobRetryInterval controla el valor de N
     * retry-this-job: vuelva a intentar el trabajo actual de forma inmediata e indefinida.
     * stop-printer: pare la impresora y conserve el trabajo para futuras impresiones;
       Este es el valor predeterminado

(Nota: Derechos de autor de documentación de Apple Inc. y reformateado para ser legible).

Magallanes
fuente
Sí, esto finalmente llegó a RHEL / CentOS. Pude hacer el cambio a nivel mundial. Tenga en cuenta que esto no anula la configuración de las impresoras existentes. Una búsqueda / reemplazo rápido o sed se encarga de eso.
ewwhite
¿Alguna idea de por qué la única opción para las clases de impresoras es volver a intentar este trabajo en la interfaz web de CUPS? CUPS 2.1 / Ubuntu 16.04. ¿Las impresoras de esas clases pueden tener todas las políticas de error, pero la clase solo volverá a intentar este trabajo?
Gnudiff
Es mejor hacer eso como una pregunta por derecho propio. No he tocado CUPS desde finales de 2013.
Magellan