Guia do Linux/Avançado/Impressão/Imprimindo via spool
Imprimindo via spool
editarA impressão via spool (fila de impressão) tem por objetivo liberar logo o programa do serviço que está fazendo a impressão deixando um outro programa especifico tomar conta.
Este programa é chamado de daemon de impressão, normalmente é o lpr
ou o lprng
(recomendado) em sistemas GNU/Linux
.
Logo após receber o arquivo que será impresso, o programa de spool gera um arquivo temporário (normalmente localizado em /var/spool/lpd
) que será colocado em fila para a impressão (um trabalho será impresso após o outro, em sequência). O arquivo temporário gerado pelo programa de spool é apagado logo após concluir a impressão.
Antes de se imprimir qualquer coisa usando os daemons de impressão, é preciso configurar os parâmetros de sua impressora no arquivo /etc/printcap
. Um arquivo /etc/printcap
para uma impressora local padrão se parece com o seguinte:
lp|Impressora compatível com Linux :lp=/dev/lp0 :sd=/var/spool/lpd/lp :af=/var/log/lp-acct :lf=/var/log/lp-errs :pl#66 :pw#80 :pc#150 :mx#0 :sh
É possível também compartilhar a impressora para a impressão em sistemas remotos, isto será visto em uma seção separada neste guia.
Usando os exemplos anteriores da seção Imprimindo diretamente para uma porta de impressora, vamos acelerar as coisas:
- cat trabalho.txt |lpr - Direciona a saída do comando
cat
para o programa de spoollpr
. - cat <trabalho.txt |lpr. Faz a mesma coisa que o acima.
- cat -n trabalho.txt |lpr - Numera as linhas durante a impressão.
- head -n 30 trabalho.txt |lpr - Imprime as 30 linhas iniciais do arquivo.
A fila de impressão pode ser controlada com os comandos:
- lpq - Mostra os trabalhos de impressão atuais
- lprm - Remove um trabalho de impressão
Ou usado o programa de administração lpc
para gerenciar a fila de impressão (veja a página de manual do lpc
ou digite ? ao iniciar o programa para detalhes).
OBS1: Se a impressora não imprimir ou não for possível compartilhar a porta de impressora paralela com outros dispositivos (tal como o plip), verifique se o módulo parport_pc foi carregado e com os valores de irq e I/O corretos (por exemplo, modprobe parport_pc io=0x378 irq=7). Muitas vezes sua porta paralela pode funcionar sem problemas durante a impressão, mas se ao utilizar plip ocorrerem erros, a causa pode ser essa. Na distribuição Debian
, use o programa modconf
para configurar os valores permanentemente para o módulo parport_pc.
OBS2: Se tiver mais de uma impressora instalada na máquina, será necessário especificar a opção "-P impressora" para especificar qual impressora deseja imprimir/controlar.