Installare una stampante Canon in Linux/UbuntuTra sabato e domenica scorsi ho passato non meno di 10 ore per installare una nuova stampante laser Canon LBP6200d in Ubuntu 12.04 ("Precise Pangolin"), sul pc di Cris.
Se avesse avuto Windows, col CD fornito a corredo, ci avrei messo forse 3 minuti...ma a noi piace smanettare.
Se poi fossi un tecnico "esperto" Linux, a 100€ l'ora, con questa assistenza avrei guadagnato un bel po' di cucuzze!
Il web è pieno di siti che affrontano il "problema" della
malefica accoppiata stampante Canon/Linux, evidentemente è cosa nota, ma ben pochi offrono una soluzione, e, pur capendoci un pochino di computer, ho dovuto smanettare veramente una cifra.
Alla fine col risultato della stampante funzionante ero letteralmente esaltato!

Se dovesse capitarvi di affrontare un'esperienza simile, ecco come fare per perdere meno tempo possibile.
Prima di tutto ci si deve assicurare di avere installato il server di stampa
CUPS (Common UNIX Printing System).
Apriamo quindi una finestra di Terminale (CTRL+ALT+T) e copiaincolliamo il seguente comando:
sudo apt-get install cupsFatto questo, iniziamo
scaricando i driver dal sito Canon, versione inglese.
Questo è il link:
http://www.canon-europe.com/Support/Consumer_Products/products/printers/Laser/i-SENSYS_LBP6200d.aspxAd oggi (novembre 2014) l'ultima versione è la 2.60 (in inglese) ed il file si chiama
"Linux_CAPT_PrinterD
river_V260_uk_EN.ta
r.gz".
Il pacchetto è un file
tar.gz, l'equivalente Linux dei file zip.
Estraiamo questo file ed otterremo il file "sPPuEb.tar".
Estraiamo quest'altro file ed otterremo finalmente la cartella "Linux_CAPT_PrinterD
river_V260_uk_EN", che contiene:
- 32-bit driver
- 64-bit driver
- Doc
- Src
(Nota: nella cartella "Doc\guide-capt-2.6xUK.tar.gz" c'è il manuale in formato html).
Sono andato nella cartella "32-bit_Driver\Debian" (Ubuntu è comunque derivato da Debian) ed ho installato in sequenza (click destro - apri con Ubuntu Software Center):
- cndrvcups-common_2.60-1_i386.deb
- cndrvcups-capt_2.60-1_i386.deb
Mi raccomando,
prima va installato il file "
common".
Forse a questo punto è meglio riavviare il pc (anche Linux ogni tanto ne ha bisogno).
Quindi ho fatto un aggiornamento del sistema (l'equivalente del Windows Update) per installare eventuali programmi necessari al nuovo driver. Quel pc non ne faceva da tempo e ha trovato 240Mb da scaricare, ovviamente non tutti (o forse anche nessuno) relativi ai driver Canon.
Magari anche qua un riavvio...vedete voi.
Dopodichè inizia lo
smanettamento serio...quindi, aprite di nuovo una finestra di Terminale.
| Nota: | le pagine che seguono indicano un sacco di comandi da dare via Terminale. Io però ho dato solo quelli di cui scrivo qua. |
Dalle info contenute
in questa pagina:
date il comando:
sudo /usr/sbin/lpadmin -p LBP6200 -m CNCUPSLBP6200CAPTK.ppd -v ccp://localhost:59787 -EL'altro comando che questa pagina dice di dare ("sudo nano /etc/modprobe.d/blacklist-cups-usblp.conf", e non ridete!)
non l'ho dato perchè non avevo la cartella "/etc/modprobe.d/", quindi non sapevo bene cosa fare.
Quindi ho seguito
queste istruzioni (sempre dalla stessa pagina di prima)
Da System->Administration->Printing (non mi ricordo come si chiamano queste opzioni in italiano, ma in pratica si deve andare sul "pannello di controllo") ho aggiunto una nuova stampante, anche se già ce n'era una di nome apparentemente "giusto".
Si deve aspettare un po' finchè non compare l'opzione "CAPT Printer".
Inserire nel campo URI l'indirizzo
ccp://localhost:59787.
Cliccare su "Next", trovare il modello ed aggiungerlo.
Se fossero presenti i due modelli inglese e giapponese, scegli naturalmente il primo.
Poi sempre dalla pagina di prima si configura il servizio Canon:
dare il comando
sudo /etc/init.d/ccpd stopper fermare il servizio
poi
sudo /etc/init.d/ccpd startper riavviarlo
e poi
sudo /etc/init.d/ccpd statusper verificare lo stato del servizio
Se tutto è ok vedremo un output simile al seguente. L'importante è che ci sia
una coppia di numeri (nell'esempio:
8956 8954), e non uno solo.
Canon Printer Daemon for CUPS: ccpd: 8956 8954A questo punto
si può provare a stampare una pagina di prova dalle proprietà della stampante!
Per verificare se la stampante viene "vista" dal sistema operativo ed è pronta, dare il comando
captstatusui -P LBP6200Si dovrebbe aprire una finestra come questa (nome della stampante a parte):
Installare una stampante Canon in Linux/UbuntuOra simulare cosa succede "il giorno dopo" spegnendo pc e stampante, riaccendendo tutto e provando a stampare sia dalle proprietà della stampante che un po' di testo da un programma qualsiasi.
Potrebbe darsi che il servizio Canon non sia più attivo dopo il riavvio del pc e che dobbiamo riattivarlo a manina da Terminale col comando che abbiamo già visto prima.
Ma dato che siamo pigri, vediamo come fare per farlo partire automaticamente ogni volta che accendiamo il pc.
Quindi
andiamo a questa nuova pagina (siamo sul post numero 4 dell'utente "Sivella").
Diamo questo comando. Stiamo creando un nuovo file di testo:
gksudo gedit /etc/udev/rules.d/85-canon-capt.rulesCopiamo e incolliamo il seguente testo nel file
KERNEL=="lp*", SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="04a9", RUN+="/etc/init.d/ccpd start"
KERNEL=="lp*", SUBSYSTEM=="usb", ACTION=="remove", RUN+="/etc/init.d/ccpd stop" Usciamo salvando il file.
Diamo quest'altro comando. Modificheremo un file esistente.
gksudo gedit /lib/udev/rules.d/70-printers.rulesDobbiamo escludere la linea numero 4 di questo file, commentandola aggiungendo un "#" all'inizio.
Il file deve diventare così:
# 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"Attenzione: questo è un file di sistema che potrebbe in futuro essere modificato da qualche aggiornamento.
Se il servizio Canon smette di funzionare, ricontrollare questo file (/lib/udev/rules.d/70-printers.rules).
Ora creiamo un "Upstart job" (una specie di autoexec) per far partire il servizio Canon ad ogni riavvio, dando il comando
gksudo gedit /etc/init/ccpd-restart.confCopia e incolla il seguente testo all'interno del file:
# ccpd-restart - if printer is ON before PC.
description "restart daemon ccpd for Canon printer LBP-serie"
start on started cups
stop on runlevel [016]
script
if [ -e /dev/usb/lp* ]; then
/etc/init.d/ccpd stop
sleep 3
/etc/init.d/ccpd start
fi
end scriptEsci e salva il file.
Riavvia il pc e stampa.
FATTO!Ora non dovremo più preoccuparci della nostra stampante.
La potremo spegnere e riaccendere più volte mentre il pc è acceso, la potremo accendere prima del pc, e questa continuerà a stampare senza battere ciglio, sarà sempre "ready to print".
A me non è servita, ma se capite bene il francese e avete ancora problemi,
su questa pagina ci sono tutte queste info (e altro) circa le stampanti Canon in Ubuntu. L'utente "Sivella" scrive qui col nick "murex".
Link aggiornato:
http://doc.ubuntu-fr.org/tutoriel/installer_imprimante_canon
Altre fonti di notizie:
-
Istituto Majorana-
https://wiki.ubuntu.com/HardwareSupportComponentsPrintersCanon-
http://linuxaria.com/article/how-to-add-a-printer-in-ubuntu-or-linux-mint-with-cups?lang=it