Este tutorial fez minha impressora Canon LBP2900B funcionar no Ubuntu 16.04 LTS:
Após a instalação limpa do Ubuntu 16.04, minha Canon 2900 se recusou a imprimir. Eu descobri uma solução e agora vou compartilhar aqui com a minha experiência.
O método padrão para instalar o driver não funciona. Para instalar o driver manualmente eu baixei e descompactei-os do site oficial da Canon.
O próximo passo foi escolher entre o driver de 32 ou 64 bits. Primeiro, minha decisão foi usar o driver de 64 bits, porque meu sistema operacional também é de 64 bits. Mas foi um erro, o driver de 64 bits se recusou a funcionar. Então eu escolho o driver de 32 bits, descompactei e instalei dois pacotes na seguinte ordem:
cndrvcups-common.deb
cndrvcups-capt.deb
Em seguida, registrei a impressora no SO gravando no terminal:
sudo /etc/init.d/cups restart
sudo lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp://localhost:59687 -E
sudo ccpdadmin -p LBP2900 -o /dev/usb/lp0
sudo update-rc.d ccpd defaults
Após a impressora aparecer no menu, marquei-o como padrão com um clique direito. Todo esse tempo a impressora deve ser desligada.
Em seguida, reinicio e trabalho de impressão da impressora.
Mas depois disso aparece um novo problema. Quando eu desligo meu computador ele trava durante 5 minutos. Foi causado pelo serviço ccpd. Então eu corro:
sudo systemctl edit ccpd
e adicionou novas duas linhas ao arquivo vazio:
[Serviço]
TimeoutStopSec = 4
Então:
sudo systemctl daemon-reload
systemctl show ccpd -p TimeoutStopUSec
e mostra que o atraso foi encurtado. A próxima reinicialização levou apenas alguns segundos.
Isso é tudo.
Fonte: link