Seu CUPS para sozinho!?

Publicado por michel rodrigues em 27/09/2007

[ Hits: 14.028 ]

 


Seu CUPS para sozinho!?



Olá colegas do VOL, trabalho com o Debian a cerca de 2 anos e o servidor de impressão que eu utilizo é o CUPS. Mas eu tinha um problema muito grande, ele sempre parava sozinho do nada, os usuários me enchiam falando que o Linux perdia a impressora. Procurei por muito tempo uma solução, tentei fazer um script com o cups-enable, mas o usuário tinha que digitar o nome da impressora, isso gerava um problema porque as impressoras não tem nome que segue um padrão e eu acabava recebendo várias ligações para resolver o problema, aí eu tinha que acessar a máquina pelo http://ip:631 para reiniciar a impressora.

Fiquei quebrando a cabeça analisando o /etc/cups/printers.conf e percebi que quando a impressora estava parada aparecia o status dela nesse arquivo assim:

# Printer configuration file for CUPS v1.1.23
# Written by cupsd on Tue Sep 4 14:14:14 2007
<DefaultPrinter kyocera>
Info KYOCERA FS-3800
Location
DeviceURI socket://IP:9100
State Stopped <<======================
StateMessage Paused
Accepting Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
</Printer>

Então fiz um teste mudei o State Stopped para State Start e reiniciei o cups... hahahaha... tinha dado certo, aí foi só alegria, fiz um script que entra nesse arquivo e muda de Stopped para Start, vejam como ficou:

#!/bin/bash
#Por Michel em 15 de junho de 2006.
sudo sed 's/Stopped/'Start'/' /etc/cups/printers.conf > /tmp/printers.conf
sudo mv -f /tmp/printers.conf /etc/cups/printers.conf
sudo /etc/init.d/cupsys restart
kdialog --title "Obrigado" --passivepopup "todas impressoras foram reiniciadas é já podem ser utilizadas" 10

Coloquei ele na área de trabalho e também agendei no cron para ser executado periodicamente.

Espero ter ajudado colega,s pelo menos pra mim ajudou muito, se alguém tiver mais alguma sugestão nós agradeceremos.

É isso aí pessoal, viva o Linux!!!!!!!!!!

exit

Outras dicas deste autor

System RescueCD: O livecd que carrega o sistema na memória e deixa o drive do cdrom livre

Gerenciador de pacotes aptitude

Leitura recomendada

ITM 6.x - Configurando um Universal Agent(UA) a partir de um script shell coletor

Eliminando todos os processos de determinada variável

Verificando se um arquivo cabe dentro de um DVD

Utilizando arrays em shell script

Como Habilitar Facilmente Shell Script WEB no Linux Mint - Servidor Apache

  

Comentários
[1] Comentário enviado por canaman em 27/09/2007 - 20:57h

Interessante, será que poderia postas quais as impressoras conectadas? Isso nunca aconteceu comigo, mas se acontecer já sei onde procurar.
Ainda sim gostaria de saber quail a marca/modelo de suas impressoras.
Abraços

[2] Comentário enviado por michel5670 em 28/09/2007 - 12:34h

colega aqui na empresa temos varios tipos de impressoras as mais ultilizadas são:
okidata 420
lexmark T610
kyocera FS-3800
epson fx-890
lexmarx z22
lexmark e322n
lx-300...
Só que esse problema do cups parar sozinho acontecia com qualquer tipo de impressora..

[3] Comentário enviado por removido em 28/09/2007 - 21:33h

pq vc não usa 'cupsenable nomedaimpressora' ?

[4] Comentário enviado por removido em 28/09/2007 - 21:35h

Tente setar a variavel 'ErrorPolicy' para 'retry-job' ou 'abort-job',
no printers.conf. A politica padrão é 'stop-printer' quando um erro ocorrer.

abraços

[5] Comentário enviado por michel5670 em 01/10/2007 - 16:19h

valeu cara pela dica !!!!!!

[6] Comentário enviado por alissonmorais em 18/01/2008 - 17:15h

Amigo, como eu faço para que os meus relatórios saiam condensado? Uso impressoras lx300 e alguns relatórios que possui linhas maiores, eu preciso condensá-los, como não sei, ocorre quebra de linha.
Obrigado.


_________________
www.tiemfoco.com - Tecnologia & Informação.

[7] Comentário enviado por gesioweb em 27/11/2008 - 08:48h

Bem amigo estou com um problema e não sei se com esse script posso resolve-lo,
as minhas impressoras desativam toda hora, tenho que executar o comando cupsenable.
Quero saber se esse script vai fazer isso?
Obrigado

[8] Comentário enviado por michel5670 em 27/11/2008 - 18:26h

Colega eu tinha muito desse problema aqui na empresa depois que fiz este script resolveu quase 90% dos meus problemas pois deixei ele executavel na area de trabalho do usuario e toda vez que a impressora para o proprio usuario clica no script e reinicia a impressora.

Mas também tem a sugestão do colega alexmontoanelli que esta ai em cima que sugere que façamos o seguinte:
"Tente setar a variavel 'ErrorPolicy' para 'retry-job' ou 'abort-job',
no printers.conf. A politica padrão é 'stop-printer' quando um erro ocorrer."

Essas são palavras dele mas nunca usei pois este script resolveu pelo menos o problema que eu tinha bastante que era das impressoras pararem do nada.

[9] Comentário enviado por marcelonx em 25/06/2009 - 13:16h

pra mim aqui funcionou, mas substituindo o Start do seu script por Idle


Mas esse script se encaixou como uma luva para o que eu precisava!!!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts