Para tornar minha LBP6020 (a versão renovada, se LBP6000, mas apenas idêntica, na verdade) funcione corretamente, tive que executar as seguintes etapas
-
desative o reconhecimento automático da impressora usblp em
/lib/udev/rules.d/70-printers.rules
. meu arquivo agora se parece com (note a quarta linha):# Low-level USB device add trigger ACTION=="add", SUBSYSTEM=="usb", ATTR{bInterfaceClass}=="07", ATTR{bInterfaceSubClass}=="01", TAG+="udev-configure-printer", RUN+="udev-configure-printer add %p" # usblp device add trigger (needed when usblp is already loaded) #ACTION=="add", KERNEL=="lp*", TAG+="udev-configure-printer", RUN+="udev-configure-printer add %p" # Low-level USB device remove trigger ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:0701*:*", RUN+="udev-configure-printer remove %p"
sem este passo há sempre uma cópia auto-descoberta de LBP6020 que não está funcionando, talvez haja uma maneira de fazer esta impressora auto-descoberta funcionar, mas eu não tentei isso
-
faça o download da Canon e instale o driver Linux (2 pacotes deb do arquivo) - eu instalei 2.60
-
crie uma regra para reiniciar o ccpd quando a impressora estiver conectada. Eu criei
/etc/udev/rules.d/85-canon-capt.rules
com o conteúdo:KERNEL=="lp[0-9]*", SUBSYSTEMS=="usb", ATTRS{serial}=="0000B1D0DLkI", ACTION=="add", SYMLINK+="canonLBP6020", RUN+="/bin/bash -c '/etc/init.d/ccpd stop && /bin/sleep 5 && /etc/init.d/ccpd start'"
Certifique-se de alterar o número de série (o valor de
ATTRS{serial}
) para o seu, que pode ser obtido porlsusb -d 04a9: -v | grep iSerial
. Esse script também cria um link simbólico/dev/canonLBP6020
, o que é útil caso você tenha vários dispositivos/dev/usblp*
. Eu usei este symlink no próximo passo. -
crie uma impressora usando a linha de comando
lpadmin -p LBP6020 -m CNCUPSLBP6020CAPTK.ppd -v ccp://localhost:59687 -E sudo ccpdadmin -p LBP6020 -o /dev/canonLBP6020
-
reinicie
cups
eccpd
ou reinicie o sistema.
Após conectar a impressora ao usb, espere 5 segundos antes de começar a usá-la. Este é o tempo necessário para reiniciar o daemon do ccpd pela regra na etapa 3 (observe sleep 5
lá, infelizmente, o /etc/init.d/ccpd restart
não funciona corretamente para mim, mas você mesmo pode tentar).