sábado, 22 de outubro de 2016

Servidor de Impressão Raspberry Pi

Utilização de um Raspberry Pi 2B como servidor de impressão de uma impressora HP Deskjet 1510 PSC (Print Scan Copy).

A partir de uma imagem Raspbian Jessie Lite é possível configurar todo o sistema remotamente por SSH e browser.

Há muitas informações úteis na página do projeto debian [1] permitem perceber melhor o funcionamento.

Instalação e Configuração do CUPS

sudo apt-get install cups hplip

Para configuração remota via web é necessário ativar o acesso à interface web através da alteração da configuração Listen e acrescentar os endereços que têm acesso à mesma (neste caso a rede 192.168.0.*):
sudo nano /etc/cups/cupsd.conf
(...)
ServerAlias *
Listen *:631
(...)
# Restrict access to the server...
<Location />
  Order allow,deny
  Allow 192.168.0.*
</Location>

# Restrict access to the admin pages...
<Location /admin>
  Order allow,deny
  Allow 192.168.0.*
</Location>

Atualização: A diretiva ServerAlias * permite aceder ao servidor CUPS através do IP ou do nome.

Por defeito o CUPS permite a autenticação a utilizadores do SystemGroup [2] e o utilizador pi não pertence a nenhum destes grupos.

Adicionar pi ao grupo lpadmin.
sudo usermod -a -G lpadmin pi

Para confirmar os grupos do utilizador:
groups pi
pi : pi adm dialout cdrom sudo audio video plugdev games users input netdev spi i2c gpio lpadmin

Para reiniciar o serviço após alterações às configurações é necessário:
sudo systemctl restart cups.service 

A partir daqui é possível configurar uma nova impressora via browser acedendo a:
http://raspberrypi:631

Ao adicionar uma impressora é reconhecida a impressora e de seguida é necessário escolher o driver da lista muito numerosa, neste caso:
HP PSC 1510 Series, hpcups 3.14.6

É necessário ativar a partilha da impressora aquando da instalação ou então mais tarde na configuração CUPS (Share printers connected to this system)

A partir daqui qualquer máquina na rede com o CUPS (normalmente qualquer Linux com sistema de impressão, por exemplo, ubuntu, Mint, etc) vai ver a impressora sem ser necessário qualquer instalação.

Resolução de Problemas

1. Ao aceder através do nome do servidor na porta 631 dá erro Bad Request
É necessário utilizar a diretiva ServerAlias *, que permite aceder ao servidor CUPS através do IP ou do nome.

2. Quando se manda imprimir o trabalho não é enviado
Confirmar se a impressora não está parada ou com erro através da página de administração: https://raspberrypi:631/printers

3. Debug
Pode ajudar alterar a diretiva LogLevel de warn para debug de forma a ter mais detalhes nos logs:
sudo less /var/log/cups/error_log

Referências

Sem comentários:

Enviar um comentário