Relatórios de Impressão com Cups e JASmine
Gerenciar o uso racional dos dispositivos em uma rede é sempre uma tarefa complicada. O suporte sempre fica com a parte mais difícil, que é a de prover material suficiente com um orçamento apertado.
Muitas vezes existe a necessidade de controlar os trabalhos que são impressos, e assim economizar uma quantidade considerável de recursos como papel e tinta.
Existem alguns software que podem nos ajudar a fazer isso, então veremos a instalação do JASmine, um software para geração de relatórios de impressão.
Primeiro vamos estudar o layout de impressão da sua empresa. Um cenário comum é aquele em que as impressoras estão instaladas em micros individuais, nos setores, e cada usuário compartilha esta impressora na rede. Uma primeira atitude a ser tomada nestes casos, é retirar a impressora do micro e colocá-la para funcionar em um servidor de impressão. Não precisa ser um grande servidor, aqueles servidores de impressão de rede, com portas USB ou paralelas já dão conta do recado na grande maioria das redes.
O truque é fazer com que todas estas impressoras instaladas em pequenos servidores de impressão, estejam disponíveis em um servidor central que irá compartilhar todas elas para a rede. Assim teremos um serviço centralizado, você não terá que instalar nenhum driver de servidor de impressão nos micros da rede, e o controle e a geração de relatórios se tornará possível.
Para executarmos o JASmine precisaremos que o Apache, CUPS, MySQL, PHP version 5, Python e Perl. A instalação do Apache, MySQL e PHP já foi abordada no artigo Configurando um servidor LAMP, e o Phyton e o Perl podem ser instalados via apt-get ou yum.
Agora no site http://jasmine.berlios.de/dokuwiki/doku.php, efetue o download dos arquivos:
- JASmine-MySQL
- JASmine-Backend
- JASmine-Web
A primeira etapa é criar o banco que vai armazenar os dados de impressão.
# mysql -u root -p
password: *****
mysql> CREATE DATABASE print;
Agora vamos utlizar o script contido no arquivo JASmine-MySQL.
# tar -jxvf JASmine-MySQL-0.0.3.tar.bz2
# cd JASmine-MySQL-0.0.3
# mysql -u root -p print < jasmine.sql
Uma boa dica é criar um usuário no MySQL para gerenciar o banco de impressão.
mysql> GRANT ALL ON print.* TO jasmine@localhost identified by ‘senha’;
mysql> FLUSH PRIVILEGES;
Dentro do JASmine-Backend existem os programas axiliares que irão monitorar as impressões e gerar os dados a serem salvos no banco. Na pasta do JASmine-Backend existe o pkpgcounter que será instalado com o auxilio do Python.
# tar -jxvf JASmine-Backend-0.0.3.tar.bz2
# cd JASmine-Backend-0.0.3
# tar -zxvf pkpgcounter-2.10.tar.gz
# cd pkpgcounter-2.10
# python setup.py install
Na pasta raiz do JASmine-Backend existe um script em Perl chamado jasmine que deverá ser copiado para dentro do CUPS.
# cp jasmine /usr/lib/cups/backend/
# cd /usr/lib/cups/backend
# chmod 755 jasmine
# chown root jasmine
Agora temos que editar nosso script para colocar as informações referentes ao banco de dados.
# vi jasmine
my $DBhost=”localhost”;
my $DBlogin=”jasmine”;
my $DBpassword=”senha”;
my $Dbdatabase=”print”;
Existe, também uma linha no script informando que o mesmo está no modo debug. altere esta linha para:
my $Debug_Mode=0;
Reinicie o CUPS e vamos a etapa final.
# /etc/init.d/cups restart
O JASmine-Web é a página que coleta as informações e as exibe na Web.
# tar -jxvf Jasmine-Web-0.0.3.tar.bz2
# mv Jasmine-Web-0.0.3 /usr/local/apache2/htdocs/jasmine
Neste momento iremos editar o arquivo com as configurações de acesso a banco.
# cd /usr/local/apache2/htdocs/jasmine
# cp config.php.dist config.php
# vi config.php
// Database vars
$DB_host=”localhost”;
$DB_login=”jasmine”;
$DB_pass=”senha”;
$DB_db=”print”;
Salve o arquivo e feche. Toda a instalação está terminada, agora vamos fazer alguns testes para ver o sistema funcionando.
Existe uma impressora fantasma que o JASmine fornece para que possamos visualizar os resultados sem termos que gastar tinta e papel. Para isso você entra na pasta JASmine-Backend-0.0.3 e copia o arquivo dummy para o diretório /usr/lib/cups/backend .
# cp dummy /usr/lib/cups/backend
# chmod 755 /usr/lib/cups/backend/dummy
# chown root /usr/lib/cups/backend/dummy
Feito reinicie o cups com o comando:
# /etc/init.d/cups restart
Instale a impressora no CUPS e selecione Really Virtual Printer for Testing Cups (Quota managed), efetue algumas impressões e depois no seu browser verifique os resultados. Eis a imagem de um relatório meu.


julho 11th, 2008 at 8:29
Show de bola, parabens pelo tutorial.
novembro 9th, 2008 at 23:55
Olá
o tutorial ficou muito bom
segui todos os passos
meu problema eh q o tutorial eh somente pra debian..
até chegar na parte web.. tudo bem
agora depois disso. ficou complicado
alguem podiria me dizer como faço para aparecer a pagina web do jasmine no fedora?
abraços
abril 20th, 2009 at 17:40
seguinte..
suei, mas descobri,
para criar a impressora, no client do linux, a linha de impressão do /etc/cups/printers.conf fica assim:
DeviceURI http://IP_do_servidor:631/nome_da_impressora
maio 29th, 2009 at 11:19
Amigo Ribens,
o diretório padrão do Apache no Fedora, Red hat e CentOS é: /var/www/html, diferente do Debian que é apenas: /var/www
espero ter ajudado
novembro 18th, 2009 at 10:29
Como faço para excluir uma impressora no Jasmine?
excluindo a impressora do pc ela continua com as impressões já feitas.
maio 27th, 2010 at 14:01
depois de ter feito td certo agora vou acessa e aparece a seguinte menssagem.
Forbidden
You don’t have permission to access /jasmine on this server.
——————————————————————————–
Apache/2.2.3 (CentOS) Server at 10.0.0.58 Port 80
junho 4th, 2010 at 15:47
Rallison, tenta fazer o seguinte:
# chmod 755 -R /pastaDoJasmine
Este comando altera as permissoes de todos os arquivos da pasta, “habilitando” a permissao de leitura e execução para membros do grupo do arquivo e para outros q nao sejam membros do grupo.
agosto 18th, 2010 at 14:07
Amigos, o JASmine é show mesmo. Alguém conseguiu implementar alguma coisa para ele contabilizar de fato o papel usado? Minha dúvida se deve ao fato que ele não diferencia as impressões que eu faço em frente-e-verso.
setembro 3rd, 2010 at 18:21
Segui os passo instalei tudo mas não consigo fazer funcionar como faço para add. uma impressora já instalada e como instalar um.imprecsso no cups..que não endendi,
setembro 16th, 2010 at 15:49
[...] JASmine , Cups, Viva o Linux, Vida Linux [...]