| Subcribe via RSS

Relatórios de Impressão com Cups e JASmine

março 27th, 2008 Posted in Dicas


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.

Relatório de impressão gerado pelo JASmine.

10 Responses to “Relatórios de Impressão com Cups e JASmine”

  1. Dangelo Says:

    Show de bola, parabens pelo tutorial.


  2. Rubens Says:

    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


  3. Anderson Says:

    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


  4. Marcelo Says:

    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


  5. Daniela Says:

    Como faço para excluir uma impressora no Jasmine?
    excluindo a impressora do pc ela continua com as impressões já feitas.


  6. Rallison Says:

    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


  7. dudumiquim Says:

    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.


  8. Flavio Sampaio Says:

    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.


  9. Alexandre. Says:

    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,


  10. Jasmine – Gerenciamento e Controle de Impressões « Calusbr's Blog Says:

    [...] JASmine , Cups, Viva o Linux, Vida Linux [...]


Leave a Reply

Get Adobe Flash playerPlugin by wpburn.com wordpress themes