Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
utilisateurs:fabux:brouillons:installation_canon_console [Le 16/11/2010, 21:19] fabux créée | |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>imprimante tutoriel canon}} | ||
- | |||
- | ---- | ||
- | |||
- | ====== Installer et tester une imprimante Canon en ligne de commande ====== | ||
- | |||
- | Cette page utilisant uniquement la [[:console]] est destinée à ceux qui, après avoir installé les drivers pour leur imprimante **Canon**, ne veulent ou, ne peuvent pas suivre la **[[:tutoriel:installer_imprimante_preinstalles|méthode d'installation d'une imprimante à partir de pilotes pré-installés]]** qui est une technique en mode graphique.\\ | ||
- | |||
- | |||
- | ===== Prérequis ===== | ||
- | |||
- | * Maitriser un minimum le [[:terminal]]. | ||
- | * Avoir installé les drivers correspondant à votre imprimante d'après la [[liste_imprimantes_canon|liste des imprimantes Canon]]; | ||
- | * Avoir redémarrer votre ordinateur ou à minima ccpd et cups; | ||
- | * Avoir allumer votre imprimante; | ||
- | * Connaitre le nom du pilote : | ||
- | <code>ls /usr/share/cups/model/ | grep CNCUPS</code> | ||
- | * Vérifier l'existence des fichiers ''/var/ccpd'', ''/var/captmon'' et ''/var/ccpd/fifo0'' ou créez-les | ||
- | <code>sudo mkdir /var/ccpd | ||
- | sudo mkdir /var/captmon | ||
- | sudo mkfifo /var/ccpd/fifo0 | ||
- | sudo chmod 777 /var/ccpd/fifo0 | ||
- | </code> | ||
- | <note attention>FIXME Ce dernier détail est tiré de [[http://ubuntubee.blogspot.com/2008/02/using-canon-lbp-810-lbp-1120-in-ubuntu.html|ce site]].\\ | ||
- | Attention donc au chmod à confirmer.</note> | ||
- | ===== Installation de l'imprimante ===== | ||
- | |||
- | ==== Commande d'installation ==== | ||
- | |||
- | Elle vous permettra d'installer l'imprimante dans cups | ||
- | |||
- | <code>sudo /usr/sbin/lpadmin -p [printer model] -m [printer driver file] -v ccp:/var/ccpd/fifo0 -E</code> | ||
- | |||
- | * -p [printer model]: modèle de l'imprimante; | ||
- | * -m [printer driver file]: nom du fichier du pilote. | ||
- | * -v [uri_périphérique]: définit l'attribut device-uri de la file d'attente de l'imprimante. Ici on mettra ccp:/var/ccpd/fifo0 | ||
- | * -E : active l'imprimante déterminée et autorise les demandes d'impression sur ce périphérique | ||
- | |||
- | <note>exemple pour une LBP1120 : | ||
- | <code>sudo /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E</code> | ||
- | </note> | ||
- | <note important> | ||
- | Attention : le nom utilisé dans la documentation Canon du driver Linux pour la LBP 1120 est LBP-1120 et non pas LBP1120. \\ | ||
- | En utilisant le nom d'imprimante LBP-1120, la procédure décrite ici fonctionne très bien, ce qui ne semble pas être le cas avec LBP1120.\\ | ||
- | Ecrire donc pour cette imprimante : sudo /usr/sbin/lpadmin -p LBP-1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E | ||
- | </note> | ||
- | |||
- | ==== Validation de l'installation ==== | ||
- | |||
- | On enregistre l'imprimante avec le dæmon ccpd ((Canon Printer Daemon for CUPS)) : | ||
- | |||
- | <code>sudo /usr/sbin/ccpdadmin -p <nom de l'imprimante> -o <device></code> | ||
- | où : | ||
- | |||
- | * <Nom de l'imprimante> est le nom que vous avez choisi dans l'interface graphique | ||
- | * <device> est à remplacer : | ||
- | * sous Ubuntu 6.06 LTS par « ''/dev/usblp0'' » × | ||
- | * sous Ubuntu 8.04 LTS et ultérieur : par « ''/dev/usb/lp0'' » (« ''/dev/usblp0'' » devrait également fonctionner car il pointe de fait vers « ''/dev/usb/lp0'' ») | ||
- | |||
- | Redémarrez ccpd et cups | ||
- | |||
- | <code>sudo /etc/init.d/ccpd restart | ||
- | sudo /etc/init.d/cups restart</code>FIXME méthode amenée à être remplacée par "service restart"\\ | ||
- | |||
- | Paramètrez enfin le système pour que le dæmon ccpd ((Canon Printer Daemon for CUPS)) se lance en même temps que la machine : | ||
- | |||
- | <code>sudo update-rc.d ccpd defaults 20</code> | ||
- | |||
- | ===== Tester l'imprimante ===== | ||
- | |||
- | Si vous avez suivi toutes les étapes mais que votre imprimante ne veut rien imprimer depuis vos logiciels habituels, il existe deux tests pour valider la bonne installation de l'imprimante et le cas échéant détecter le problème. | ||
- | Pensez tout de même à vérifier que votre imprimante a bien été allumée et correctement connectée **avant** de démarrer l'ordinateur. | ||
- | |||
- | ==== Test n° 1 ==== | ||
- | |||
- | dans un [[:terminal]] saisissez | ||
- | <code>sudo ccpdadmin</code> doit vous renvoyer: | ||
- | <file> | ||
- | Usage: | ||
- | ccpdadmin [-p Printer-name -o Printer-dev-path] | ||
- | ccpdadmin [-x Remove-Printer-name] | ||
- | |||
- | |||
- | CUPS_ConfigPath = /etc/cups/ | ||
- | LOG Path = None | ||
- | UI Port = 39787 | ||
- | |||
- | Entry Num : Spooler : Backend : FIFO path : Device Path : Status | ||
- | ---------------------------------------------------------------------------- | ||
- | [0] : LBP-XXX : ccp : /var/ccpd/fifo0 : /dev/usb/lp0 : | ||
- | </file> avec LBP-XXX et /dev/usb/lp0 dépendant de la manière dont vous avez installé votre imprimante.\\ | ||
- | S'il y a une erreur, elle apparaîtra en fin de ligne.\\ | ||
- | |||
- | ==== Test n°2 ==== | ||
- | |||
- | Dans un [[:terminal]] saisissez | ||
- | <code>captstatusui -P [Le nom que vous avez donné lors de l'installation]</code> | ||
- | doit vous ouvrir une fenêtre avec un message **ready to print**.\\ | ||
- | Si toutefois l'imprimante n'avait pas été allumée et/ou connectée avant le démarrage de l'ordinateur, la commande retournera le message "**capstatusui Socket Error**".\\ | ||
- | <note>Si cela arrive, il suffit de laisser l'imprimante allumée et connectée puis de redémarrer l'ordinateur. Vous pouvez également redémarrer uniquement le service d'impression tel qu'indiqué [[#Redémarrer le service d'impression|ci-dessous]].</note> | ||
- | |||
- | ===== Astuces ===== | ||
- | |||
- | Le fonctionnement du pilote Canon pour Linux n'étant pas parfait, il peut-être nécessaire de connaitre ces quelques astuces. | ||
- | |||
- | ==== Connaitre le statut de l'imprimante ==== | ||
- | |||
- | La commande suivante permet de connaitre le statut de l'imprimante. | ||
- | <code> captstatusui -P XXXX</code> | ||
- | où XXXX sera remplacé par le modèle de votre imprimante. | ||
- | Si elle renvoie le message ** captstatusui Socket Error **, il suffit de [[#redémarrer le service d'impression]]. | ||
- | |||
- | ==== Redémarrer le service d'impression ==== | ||
- | |||
- | La commande suivante permet de tuer le processus captfilter puis de redémarrer le dæmon ccpd ((Canon Printer Daemon for CUPS)) et cups | ||
- | <code>sudo killall captfilter | ||
- | sudo /etc/init.d/ccpd restart && sudo /etc/init.d/cupsys restart</code> | ||
- | |||
- | ==== Automatiser la détection de l'imprimante ==== | ||
- | |||
- | Il peut-arriver que votre imprimante ne soit pas ou plus détectée si vous l'éteignez après usage. | ||
- | La relance du dæmon ccpd ((Canon Printer Daemon for CUPS))peut être automatisée en utilisant [[:udev]]. | ||
- | |||
- | Imprimante allumée, détectez ses paramètres par la commande : | ||
- | <code>sudo udevadm info -a -p $(udevadm info -q path -n /dev/usb/lp0)</code> | ||
- | ce qui doit vous fournir les infos suivantes (à adapter selon votre cas) : | ||
- | <file> | ||
- | KERNEL=="lp0" | ||
- | SUBSYSTEM=="usb" | ||
- | DRIVER=="" | ||
- | ATTR{dev}=="180:0" | ||
- | </file> | ||
- | |||
- | Créez un fichier "**99-usb-lp0.rules**" dans le répertoire **/etc/udev/rules.d** (le nom 99-usb-lp0.rules est un exemple, mais le fichier doit impérativement être terminé par ".rules") et reprendre ces paramètres sous la forme suivante (à adapter selon le résultat précédent): | ||
- | <file> | ||
- | BUS=="usb", KERNEL=="lp0", ATTR{dev}=="180:0", RUN+="/etc/lp0-on" | ||
- | |||
- | # | ||
- | # chaque detection (branchement, allumage) lancera la commande /etc/lp0-on | ||
- | # Les paramètres de l'imprimante ont été détectés par : | ||
- | # udevadm info -a -p $(udevadm info -q path -n /dev/usb/lp0) | ||
- | # | ||
- | </file> | ||
- | |||
- | Créez un fichier "**lp0-on**" dans le répertoire **/etc** contenant | ||
- | <code bash> | ||
- | #!/bin/sh | ||
- | # | ||
- | # script lancé par udev s'executant à détection de l'imprimante CANON | ||
- | # pour éviter le message d'avertissement (dans syslog) si le protocole "bonjour" remplace le protocole natif AVAHI | ||
- | $AVAHI_COMPAT_NOWARN=1 | ||
- | |||
- | killall captfilter | ||
- | /etc/init.d/ccpd restart | ||
- | env AVAHI_COMPAT_NOWARN=1 /etc/init.d/cupsys restart | ||
- | </code> | ||
- | ce script relancera dæmon ccpd ((Canon Printer Daemon for CUPS)) et cups comme décrit plus avant. | ||
- | N'oubliez pas de rendre le fichier "**lp0-on**" executable | ||
- | <code>sudo chmod 0755 /etc/lp0-on</code> | ||
- | Relancez enfin le service [[:udev]] | ||
- | <code>sudo /etc/init.d/udev restart</code> | ||
- | L'imprimante devrait désormais être disponible à chaque fois qu'on en a besoin, sans intervention. | ||
- | |||
- | <note>Dans [[http://forum.ubuntu-fr.org/viewtopic.php?id=298285|ce thread]], murex propose une autre méthode reposant sur [[:hal]]</note> | ||
- | |||
- | ==== Retirer une imprimante ==== | ||
- | |||
- | En cas d'erreur de manipulation, il peut être utile d'avoir à retirer une imprimante installée de manière erronée.\\ | ||
- | Dans un [[:terminal]], on saisira : | ||
- | <code>sudo /usr/sbin/ccpdadmin -x YYYY</code> | ||
- | où YYYY est le modèle de votre imprimante.\\ | ||
- | |||
- | Lorsque aucune imprimante n'est installée, la commande : | ||
- | <code>sudo /usr/sbin/ccpdadmin </code> | ||
- | |||
- | donnera un résultat de ce type : | ||
- | <file> | ||
- | 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 | ||
- | ---------------------------------------------------------------------------- | ||
- | </file> | ||
- | |||
- | ===== Sources ===== | ||
- | |||
- | * [[https://help.ubuntu.com/community/HardwareSupportComponentsPrinters/CanonPrinters/Canon_LBP_2900|Documentation Ubuntu anglais (qui a reprise cette doc)]] | ||
- | * Pour Ubuntu 9.04 et 9.10 : https://help.ubuntu.com/community/CanonCaptDrv190 | ||
- | * http://v0xel.wordpress.com/2006/05/23/canoon-lbp-1120-on-ubuntu-510-how-to | ||
- | * http://www.mumblyworld.info/index.php?post/2007/04/19/118-canon-lbp-810-et-derivees-sous-ubuntu-edgy-feisty-suite | ||
- | * https://help.ubuntu.com/community/HardwareSupportComponentsPrinters/CanonPrinters/Canon_LBP_2900 | ||
- | |||
- | ---- | ||
- | //Contributeurs:// [[:utilisateurs:fabux]] | ||