O CUPS é o sistema de impressão no Linux. Em particular, ele fornece um servidor e clientes. Os lp
e lpr
são dois comandos comuns para imprimir arquivos: lpr
é o BSD e lp
o do System V. Existem várias implementações (mais ou menos compatíveis com os comandos originais), mas atualmente elas devem ser clientes CUPS. Você deve verificar isso com dlocate
ou dpkg -S
: se raspbian for como o Debian, lp
deve ser fornecido por cups-client
e lpr
deve ser fornecido por cups-bsd
(ambos os pacotes binários são do cups
pacote fonte). AFAIK, gs
não está relacionado no lado do cliente.
Seu problema é bastante estranho, pois lp
e lpr
devem se comportar da mesma maneira (se ambos forem os clientes CUPS). Para resolver seu problema, sugiro que você analise strace
output para ver se existem diferenças importantes. Por exemplo, veja quais arquivos em seu diretório pessoal e em /etc
são lidos.