Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !



Comment installer une imprimante Canon LBP xxxx

Ce tutoriel vous aidera à installer votre imprimante Canon LBP sous Ubuntu. Fonctionne sous Lucid, Maverick et Natty. Ce tutoriel est la traduction de celui situé ici.
Vous trouverez en fin de cette page la liste des imprimantes supportées par ce pilote.

Le pilote Canon CAPT est séparé en deux paquets : cndrvcups-capt et cndrvcups-common.
Ceux-ci sont disponibles à partir du PPA du pilote Canon qui, depuis mai 2011, contient la version 2.20 pour les version i386 et AMD64 de Lucid, Maverick et Natty.
Pour installer ces paquets, il vous faudra:

  1. Ajouter le PPA ppa:michael-gruz/canon1) dans vos sources de logiciels,

Exemple en ligne de commande

Pour exécuter ces manipulations dans un terminal, vous saisirez par exemple les commandes suivantes :

sudo add-apt-repository ppa:michael-gruz/canon
sudo apt-get update
sudo apt-get install cndrvcups-capt cndrvcups-common

Après avoir installé ces paquets, vous pourrez installer et paramétrer votre imprimante.

Utiliser les paquets pré-compilés provenant des dépôts est la méthode la plus facile pour installer les pilotes Canon. Si pour certaines raisons vous préférez utiliser l'ancienne méthode n'utilisant pas les dépôts, lisez les instructions suivantes.

Ressources

  • La version 2.2 du pilote peut-être téléchargée ici. Il n'existe pas de versions pour les AMD64.
  • La version 2.0 du pilote peut-être téléchargée ici. Cette version inclut les RPM, les DEB, le code source et la documentation pour l'installer. Pour plus d'informations rendez-vous sur cette page.
  • La version 1.9 du pilote peut-être téléchargée ici. Vous pouvez directement télécharger les paquets .deb (recommandé pour les débutants) ou le code source.

Installation automatisée utilisant un script BASH

Un script à été développé pour automatiser l'installation du pilote sur les deux types d'architectures (i386 et AMD64). Malheureusement, Canon ne fournit pas les paquets .deb pour les systèmes en 64 bits et compiler le pilote depuis son code source est légèrement délicat. Ainsi, utiliser ce script est la meilleure approche pour les utilisateur d'Ubuntu 64 bits. Pour les utilisateurs 32 bits, il s'agit juste de l'automatisation de l'installation manuelle.

Les versions 64 bits des paquets .deb on été compilés sur un Ubuntu 9.10 d'architecture x86_64, tandis que la version 32 bits utilisée par le script sont ceux fournis par Canon. Le script et le pilote ont été testés sur Ubuntu 9.04 i386 et sur Ubuntu 9.10 AMD64 utilisant une imprimante Canon LBP2900.

L'archive contenant le script et les paquets nécessaires à l'installation peut-être téléchargée ici. Veuillez lire le fichier "README" contenu dans l'archive pour plus de détails ou utilisez l'option -h ou –help lorsque vous lancez le script.

Pour de plus amples explications, visitez cette page (en)

FIXME Il doit être possible de regrouper les parties dans le terminal avec cette page pour éviter les doublons et permettre la maintenance d'une seule page.

Configurer CUPS

  • Allez dans Système → Administration → Impression
  • Cliquez sur "Ajouter une imprimante". Ne pas choisir l'imprimante USB proposée par Ubuntu mais choisissez "Imprimante CAPT".
  • Vous devez voir "ccp" dans l'URI. Remplacez-le par
    ccp:/var/ccpd/fifo0
  • Cliquez sur "Suivant" afin de trouver votre modèle d'imprimante et ajouter votre imprimante. Choisissez la variante anglaise si vous voyez variante japonaise et anglaise.
    Si vous ne trouvez pas le modèle exact de votre imprimante, choisissez le plus proche.
    Pour voir les modèles disponibles, vous pouvez saisir dans un terminal la commande suivante:
    find /usr/share/cups/model -name '*LBP*K.ppd'

    Par exemple, pour la LBP 810, choisissez "LBP 1120"

  • Fermez la fenêtre de configuration et ré-ouvrez-là. Renommez votre imprimante (FIXME sans caractère tel qu'espace ou tiret), par exemple comme ceci : "LBP810". Souvenez-vous du nom choisi, les commandes suivantes en auront besoin.
    En remplacement des actions en graphiques, entrez ceci :
    sudo /usr/sbin/lpadmin -p <nom_de_l'imprimante> -m <nom_du_fichier_ppd> -v ccp:/var/ccpd/fifo0 -E
    • <nom_de_l'imprimante> sera le nom que vous aurez choisi. Choisissez-le simple (évitez les espaces, tiret ou autres caractères…).
    • <nom_du_fichier_ppd> sera le nom du pilote .ppd le plus proche à utiliser. Vous trouverez cette information dans ce tableau.
      Par exemple pour la LBP810, vous saisirez:
      sudo /usr/sbin/lpadmin -p LBP810 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E

Configuration des services Canon

Les commandes qui suivent seront effectuées avec le nom précédemment choisi à savoir LBP810. Vous adapterez donc en remplaçant par le nom que vous avez déterminé.

Redémarrez et vérifiez le status de ccpd

sudo service ccpd restart
sudo service ccpd status

La dernière commande devrait vous répondre quelque chose comme

Canon Printer Daemon for CUPS: ccpd: 8956 8954
Si vous ne voyez qu'un seul nombre à la fin de la ligne, éditez avec les droits d'administration le fichier /etc/ccpd.conf et ajoutez ceci :
<Printer  LBP810>
DevicePath  /dev/usb/lp0
</Printer>

Indiquez au démon ccpd sur quel port l'imprimante se trouve:

sudo /usr/sbin/ccpdadmin -p LBP810 -o /dev/usblp0

puis ouvrez avec les droits d'administration le fichier /etc/ccpd.conf pour vérifier le bon enregistrement ce qui donnera dans un terminal

cat /etc/ccpd.conf

FIXME grep?
Redémarrez de nouveau le démon Canon puis vérifier son status:

sudo service ccpd restart
sudo service ccpd status

Le dernière commande devrait répondre

Canon Printer Daemon for CUPS: ccpd: 8956 8954

Vous devez avoir deux nombres à la fin de la ligne.

Automatiser la détection de l'imprimante

Éditez avec les droits d'administration le fichier /etc/udev/rules.d/85-canon-capt.rules pour y insérer ceci :

KERNEL=="lp*", SUBSYSTEMS=="usb", ACTION=="add", SYSFS{idVendor}=="04a9", RUN+="/bin/bash /etc/init.d/ccpd start"
KERNEL=="lp*", SUBSYSTEMS=="usb", ACTION=="remove", RUN+="/bin/bash /etc/init.d/ccpd stop"

Rechargez la configuration UDEV :

sudo udevadm control --reload-rules

puis vérifiez le status du démon ccpd

sudo service ccpd status

Vérifiez que l'imprimante est désormais bien détectée à chaque allumage ou extinction de celle-ci, ou lorsque que vous la branchez puis la débranchez du port USB. Vous pouvez également jeter un œil sur cette section si la règle udev n'était pas suffisante.

Diagnostic

Saisissez dans un terminal la commande suivante :

sudo ccpdadmin

Vous devez obtenir :

Usage:
  ccpdadmin [-p Printer-name -o Printer-dev-path]
  ccpdadmin [-x Remove-Printer-name]


 CUPS_ConfigPath = /etc/cups/
 LOG Path        = None
 UI Port         = 59787

 Entry Num  : Spooler   : Backend       : FIFO path             : Device Path   : Status
 ----------------------------------------------------------------------------
     [0]    : LBP810    : ccp           : /var/ccpd/fifo0       : /dev/usb/lp0  :

Maintenant, vous pouvez tester votre imprimante tel qu'expliqué sur la page « Installation d'une imprimante à partir de pilotes pré-installés »

Si vous avez un problème, essayez d'éteindre l'imprimante, de redémarrer l'ordinateur et de ne démarrer l'imprimante qu'après vous êtes identifié puis vérifiez que vous n'avez pas de souci avec le démon ccpd en vérifiant son status par

sudo service ccpd status

Vous devez obtenir deux nombres à la fin de la ligne qui ressemble à:

Canon Printer Daemon for CUPS: ccpd: 1135 1131

Canon fournit les 2 paquets cndrvcups-common-xxx.deb et cndrvcups-capt-xxxx.deb pour 32 bits uniquement ce qui ne posent à priori pas de problème d'installation sur les machines 32 bits.
Néanmoins, pour les machines 64 bits, il faut un peu "bricoler". Jusqu'à la version 10.10 (Maverick) et la version 2.00 des drivers Canon, il était possible de compiler, depuis les sources fournies par Canon, les 2 paquets au format .DEB (64 bits). tel qu'expliqué sur cette page.
Cependant, avec la version 11.04 (Natty) et la version 2.20 des drivers Canon, il semble y avoir un problème de compatibilité avec des librairies nécessaires à la compilation, ce qui provoque une erreur de compilation.

Concernant la version 64bits Natty, les 2 paquets disponibles dans le dépôt PPA mentionné plus haut, s'installent et font fonctionner l'imprimante.
Cependant la commande :

captstatusui -P LBPxxxx

qui permet d'ouvrir la fenêtre du "Statusmonitor", permettant l'accès à certaines fonctionnalités avancées de l'imprimante, provoque une erreur "buffer overflow".

Si vous souhaitez toute de même utiliser le dépôt PPA, il est conseillé de télécharger la version Maverick (10.10) des 2 paquets qui fonctionnent sans aucun problème sur 11.04, y compris le "Statusmonitor".
Concernant l'installation automatisée utilisant un script BASH : les 2 paquets fonctionnent aussi sans problème. Ils ont été obtenus par l'utilisation de Alien sur la version RPM 64bits fournie par Canon.

Condensé de la méthode d'installation de l'imprimante

FIXME Voir avec la liste de discussion si cette partie est bien utile…
Imprimante allumée et branchée.

Installer dans l'ordre :

  1. cndrvcups-common-xxxx.deb
  2. cndrvcups-capt-xxxx.deb
Si vous utilisez la version Maverick du dépôt PPA, il faudra au préalable télécharger puis installer le paquet de transition "gs-esp" à cette adresse http://packages.ubuntu.com/maverick/gs-esp FIXME gs-esp ne marche pas?. Peut-être le mettre en pré-requis?

Relancer cups:

sudo service cups stop
sudo service cups start

FIXME sudo service cups restart ne marche pas?

Créer si nécessaire les répertoires :

  • /var/ccpd
  • /var/captmon
sudo mkdir /var/ccpd
sudo mkdir /var/captmon

Créer si nécessaire le fichier :

  • /var/ccpd/fifo0
sudo mkfifo /var/ccpd/fifo0

Associer le driver d'imprimante avec le spooler d'impression (modifier LBP5000 en fonction de l'imprimante)

sudo /usr/sbin/lpadmin -p LBP5000 -m CNCUPSLBP5000CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E

Associer l'imprimante avec le daemon ccpd (modifier LBP5000 en fonction de l'imprimante)

sudo /usr/sbin/ccpdadmin -p LBP5000 -o /dev/usb/lp0

Vérifier que le paquet: "ia32-libs" est installé.
FIXME il n'y a pas de force-architecture ??? Il est indispensable pour la compatibilité 32/64 bits et le bon fonctionnement du daemon ccpd.

Démarrer le daemon ccpd :

sudo service ccpd start

Si l'installation a réussi, la commande:

captstatusui -P LBPxxxx

va ouvrir la fenêtre du "Statusmonitor" avec "Ready to print"

FIXME règle UDEV toujours nécessaire dans ce cas ??? Peut-être remonter l'info dans la partie "automatiser la détection".

Valable pour versions 32 et 64 bits.
La règle UDEV, expliquée plus haut, garantit une bonne gestion du daemon ccpd et le bon fonctionnement de l'imprimante uniquement si elle est allumée (ou branchée) après le démarrage du PC.

Si l'imprimante est allumée et branchée avant le démarrage du PC, il faut absolument relancer le daemon ccpd dès que l'on est connecté

sudo service ccpd restart

Un des problèmes rencontré avec la gestion automatique de ccpd c'est qu'il doit (en plus) être démarré après CUPS.
Dans la séquence de démarrage d'Ubuntu, UDEV est démarré avant CUPS. Donc si la règle UDEV détecte l'imprimante au boot du PC, elle démarre ccpd avant CUPS.

Résultat ccpd ne démarre pas correctement et plantera à la première demande d'impression ou à la commande captstatusui -P LBPxxxx

Ce plantage est gênant car il prend 100% du CPU et ne répond qu'à une commande "kill -9".

Pour palier à ce problème, une des possibilités dans l'état actuel des choses, est de créer (en plus de la règle UDEV) un job Upstart qui dans la séquence de démarrage détectera la présence ou non de l'imprimante sur le bus USB. Il fera un "ccpd restart" si nécessaire. Créez avec les droits d'administration un fichier /etc/init/ccpd-restart.conf pour y insérer ceci:

# ccpd-restart - Relance ccpd si l'imprimante est allumée avant le 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 restart
    fi
end script

Normalement, il ne sera plus nécessaire de s'occuper du daemon ccpd, quelle que soit le moment où l'imprimante est allumée/éteinte.

Selon la documentation officielle Canon :

Nom de l'imprimante Nom du fichier PPD Vérifié sur les versions d'Ubuntu
LBP9100C CNCUPSLBP9100CCAPTK.ppd
LBP7200C series CNCUPSLBP7200CCAPTK.ppd 10.10
LBP6300 CNCUPSLBP6300CAPTK.ppd 10.10
LBP6000 / LBP6018 CNCUPSLBP6018CAPTK.ppd
LBP5300 CNCUPSLBP5300CAPTK.ppd
LBP5100 CNCUPSLBP5100CAPTK.ppd 10.10
LBP5050 series CNCUPSLBP5050CAPTK.ppd 9.10/9.04
LBP5000 CNCUPSLBP5000CAPTK.ppd
LBP3500 CNCUPSLBP3500CAPTK.ppd
LBP3310 CNCUPSLBP3310CAPTK.ppd
LBP3300 CNCUPSLBP3300CAPTK.ppd
LBP3250 CNCUPSLBP3250CAPTK.ppd
LBP3210 CNCUPSLBP3210CAPTK.ppd
LBP3200 CNCUPSLBP3200CAPTK.ppd 10.04
LBP3150 / LBP3108 / LBP3100 CNCUPSLBP3150CAPTK.ppd
LBP3100 / LBP3108 / LBP3150 CNCUPSLBP3150CAPTK.ppd 10.10
LBP3010 / LBP3018 / LBP3050 CNCUPSLBP3050CAPTK.ppd 11.04 / 10.10 / 10.04 / 9.10 / 9.04
LBP3000 CNCUPSLBP3000CAPTK.ppd 11.04
LBP2900 CNCUPSLBP2900CAPTK.ppd 11.04 / 10.10 / 10.04 / 9.10 / 9.04
LBP-1210 CNCUPSLBP1210CAPTK.ppd 10.10 / 10.04 / 9.10 / 9.04
LBP-1120 CNCUPSLBP1120CAPTK.ppd 10.10 / 9.10 / 9.04
LBP-8102) CNCUPSLBP1120CAPTK.ppd 11.04 / 10.10 / 10.04 / 9.10 / 9.04

Contributeurs: Antoine P, murex


2)
La Canon LBP-810 n'est pas supportée officiellement par le pilote version 2.2 de Canon
  • installer_canon_lbp.1310363754.txt.gz
  • Dernière modification: Le 15/12/2011, 15:19
  • (modification externe)