quarta-feira, 26 de dezembro de 2007

CUPS - Estranho

Passado o Natal, a vida novamente volta a quase normalidade....

O cups é um gerenciador de impressões que roda em sistemas *nix (linux, unix like). Tenho tido diversos problemas com ele no que se refere a certas anomalias tais como: sumir impressoras, determinadas impressoras ficarem com status "stopped" sem motivo algum. Não encontrando o motivo, busquei então a forma de contornar esses problemas.
O cups funciona baseado em um arquivo de configuração printers.conf onde ficam configuradas as filas de impressão localizado normalmente em /etc/cups/printers.conf

solução encontrada: foi feita uma cópia do arquivo printers.conf para /etc/cups/printers.conf.backup
Fiz um script simples onde faz parar o serviço do cups
#/etc/init.d/cups stop

copia o arquivo printers.conf.backup para printers.conf (substituindo)
#cp /etc/cups/printers.conf.backup /etc/cups/printers.conf

inicia novamente o cups
#/etc/init.d/cups start

Pronto. As impressões que estavam presas são liberadas.

Explicação: o arquivo original printers.conf guarda o status das impressoras, então se alguma está no status "stopped" não sai impressão alguma, sendo assim ao substituir o arquivo original pelo backup onde as impressoras estão todas com status "idle", o servidor entende que as impressoras estão aceitando novos trabalhos.

É uma solução simples. Para evitar a necessidade de executar o script toda hora manualmente, basta adicionar no cron do seu servidor, a cada 2, 3 ou 5 minutos, dependendo do impacto que possa causar em seu servidor. Na empresa que trabalho agendei para cada 2min. Nunca mais tive ligação solicitando liberação de impressora na rede, salvo os casos em que o problema é de software ou maquina travada.

Nenhum comentário:

Postar um comentário