Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:comment_installer_pilote_canon_en_ligne_de_commande [Le 18/07/2011, 09:11]
fabux script upstart pour automatisation
— (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.\\ 
-N'​oubliez pas que la documentation fournie dans l'​archive d'​installation de votre pilote vous donnera toutefois plus d'​informations que cette page. 
-<​note>​Si vous n'​êtes pas familier avec le vocabulaire utilisé ou si vous désirez avoir une vision d'​ensemble de l'​impression sous Ubuntu, consultez la page << **[[:​impression_sous_ubuntu|Comprendre l'​impression sous Ubuntu]]** >>​.</​note>​ 
- 
-===== 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 allumé votre imprimante ;  
-  * Avoir redémarré votre ordinateur 
-  * Connaitre le nom du fichier ppd(([[http://​fr.wikipedia.org/​wiki/​Printer_Postscript_Description|Printer Postscript Description]])) du pilote : <​code>​ls /​usr/​share/​cups/​model/​ | grep CNCUPS</​code>​ 
-  * Avoir vérifié l'​existence ou créer les dossiers et fichiers : 
-    * **/​var/​ccpd** 
-    * **/​var/​captmon** 
-    * **/​var/​ccpd/​fifo0**<​code>​sudo mkdir /var/ccpd 
-sudo mkdir /​var/​captmon 
-sudo mkfifo /​var/​ccpd/​fifo0</​code>​ 
- 
-===== Installation de l'​imprimante ===== 
- 
-==== Commande d'​installation ==== 
- 
-La commande suivante permettra d'​installer l'​imprimante dans cups: 
- 
-<​code>​sudo /​usr/​sbin/​lpadmin -p [nom de l'​imprimante] -m [fichier ppd] -v [uri périphérique] -E</​code>​ 
-où : 
-  * -p [nom de l'​imprimante]:​ modèle de l'​imprimante;​ 
-  * -m [fichier ppd]: nom du fichier .ppd du pilote (cf [[#​pré-requis]] pour connaitre son nom) ; 
-  * -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. 
- 
-exemple pour une LBP5000 : 
-<​code>​sudo /​usr/​sbin/​lpadmin -p LBP5000 -m CNCUPSLBP5000CAPTK.ppd -v ccp:/​var/​ccpd/​fifo0 -E</​code>​ 
- 
-<note important>​Le nom du fichier .ppd doit être exact. Attention donc à bien en respecter la casse((minuscule/​majuscule)) 
-</​note>​ 
- 
-==== Validation de l'​installation ==== 
- 
-La commande suivante permettra d'​installer l'​imprimante dans le dæmon ccpd : 
- 
-<​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 lors de l'​[[#​commande d'​installation|installation dans cups]] 
-  * [device] est l'​emplacement du fichier du périphérique : 
-    * **Valeur de [device] pour une connexion en usb :** 
-      * sous Ubuntu 8.04 LTS et ultérieur [device] sera remplacé par // /​dev/​usb/​lp0 // 
-      * exemple: <​code>​sudo /​usr/​sbin/​ccpdadmin -p LBP5000 -o /​dev/​usb/​lp0</​code> ​ 
-    * **Valeur de [device] pour une connexion en réseau :** 
-      * net:​[adresse IP] 
-      * exemple: <​code>​sudo /​usr/​sbin/​ccpdadmin -p LBP-1120 -o net:​192.168.0.20</​code>​ 
-  ​ 
-   Il peut-être nécessaire d'​ajouter une ligne // Allow From [adresse IP] // dans les sections // <​Location /> // et // <​Location /admin> // du fichier ** /​etc/​cups/​cupsd.conf **. 
- 
-Démarrez ensuite le dæmon ccpd 
- 
-<​code>​sudo service ccpd start</​code>​ 
-puis vérifiez son bon fonctionnement par  
-<​code>​sudo service ccpd status</​code>​ 
-qui devrait vous répondre quelque chose comme 
-<​code>​Canon Printer Daemon for CUPS: ccpd: 8956 8954</​code>​ 
-<note tip>Si vous ne voyez qu'un seul nombre à la fin de la ligne, [[:​tutoriel:​comment_modifier_un_fichier|éditez avec les droits d'​administration]] le fichier **/​etc/​ccpd.conf** et ajoutez ceci (remplacez LBP810 par ce que vous aviez indiqué précedemment) :  
-<​file>​ 
-<​Printer ​ LBP810> 
-DevicePath ​ /​dev/​usb/​lp0 
-</​Printer>​ 
-</​file>​ 
-avant de redémarrer le dæmon ccpd et vérifier de nouveau son status <​code>​ 
-sudo service ccpd restart 
-sudo service ccpd status</​code>​ 
-</​note>​ 
- 
- 
-Paramétrez enfin le système pour que le dæmon ccpd se lance en même temps que la machine :\\ 
-FIXME Version? Dans un [[:​terminal]] saisissez: 
-<​code>​sudo update-rc.d ccpd defaults 90</​code>​ 
-Selon votre version d'​Ubuntu cette commande ne donnera pas le résultat escompté, reportez-vous dans ce cas à la section **[[#​Automatiser la détection de l'​imprimante]]**. 
- 
-===== Vérification de l'​installation ===== 
- 
-Si vous avez suivi toutes les étapes mais que votre imprimante ne veut rien imprimer depuis vos logiciels habituels, il peut-être utile de vérifier que l'​installation c'est correctement déroulée.\\ 
-Vérifiez que votre imprimante a bien été allumée et correctement connectée **avant** de démarrer l'​ordinateur. 
- 
-Dans un [[:​terminal]] saisissez: 
-<​code>​sudo ccpdadmin</​code>​la commande doit vous renvoyer: 
-<​code>​ 
-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 ​ : 
-</​code>​ où LBP-XXX et /​dev/​usb/​lp0 sont à adpater selon la manière dont vous avez installé votre imprimante dans le dæmon ccpd.\\ 
-S'il y a une erreur, elle apparaîtra en fin de ligne.\\ 
- 
-===== 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 [nom de l'​imprimante]</​code> ​ 
-où [nom de l'​imprimante] est le nom que vous avez donné lors de l'​[[#​commande d'​installation|installation dans cups]].\\ 
-La commande 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, vous pouvez essayer de [[#​redémarrer le service d'​impression]].\\ 
-Si celà ne suffit pas, laissez l'​imprimante allumée et connectée puis redémarrer l'​ordinateur.</​note>​ 
- 
-==== Redémarrer le service d'​impression ====  
- 
-Les commandes suivantes permettent de redémarrer le service cups puis le dæmon ccpd 
-<​code>​sudo service cups restart 
-sudo service ccpd restart</​code>​ 
-Selon votre version d'​Ubuntu,​ il s'​agira de remplacer **cups** par **cupsys**. 
- 
-==== Automatiser la détection de l'​imprimante ==== 
-Une fois correctement installée, pour que l'​imprimante fonctionne d'une façon transparente pour l'​utilisateur,​ il faut automatiser la gestion du daemon ccpd ce qui demande deux conditions : 
-  - Que le daemon ccpd soit lancé ou relancé à chaque mise en service de l'​imprimante. 
-  - Que le daemon ccpd soit lancé après CUPS, pourqu'​il démarre correctement. 
- 
-===Lancer ou relancer ccpd à chque mise en service 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 peut être automatisée en utilisant [[:udev]]. 
- 
-[[:​tutoriel:​comment_modifier_un_fichier|Ouvrez ou créez avec les droits d'​administration]] le fichier **/​etc/​udev/​rules.d/​85-canon-capt.rules** et ajoutez ces lignes: 
-<​file>​ 
-KERNEL=="​lp*",​ SUBSYSTEM=="​usb",​ ACTION=="​add",​ SYSFS{idVendor}=="​04a9",​ RUN+="/​etc/​init.d/​ccpd start" 
-KERNEL=="​lp*",​ SUBSYSTEM=="​usb",​ ACTION=="​remove",​ RUN+="/​etc/​init.d/​ccpd stop" 
-</​file>​ 
-Relancez le service [[:udev]] 
-<​code>​sudo service udev restart</​code>​ou FIXME pour les versions plus récentes d'​Ubuntu 
-<​code>​sudo udevadm control --reload-rules</​code>​ 
-L'​imprimante devrait désormais être disponible à chaque fois que vous en avez besoin, sans intervention. 
- 
-<​note>​Si,​ tel qu'​indiqué à la section [[#​Validation de l'​installation]],​ vous aviez automatisé le lancement de ccpd avec la commande 
-<​code>​sudo update-rc.d ccpd defaults 90</​code>​il est nécessaire d'​annuler cette action pour ne pas interférer avec la nouvelle régle udev. 
- 
-FIXME Versions ? Dans un [[:​terminal]] saisissez: 
-<​code>​sudo update-rc.d -f ccpd remove</​code></​note>​ 
- 
-===Lancer ccpd après CUPS=== 
- 
-Dans l'​ordre de la séquence de démarrage d'​Ubuntu,​ [[:UDEV]] est lancé avant [[:CUPS]]. \\  
-Donc, si l'​imprimante est allumée et branchée avant le démarrage du PC, la régle [[:UDEV]] que nous venons de créer va détecter l'​imprimante et lancera ccpd avant [[:CUPS]]. \\  
-Dans ce cas, le démarrage incorrect de ccpd va le faire planter à la première demande d'​impression sans qu'​aucun message d'​erreur n'​apparaisse. \\  
-De plus ccpd va prendre 100% du CPU et il ne peut être stoppé qu'​avec une commande "kill -9". 
- 
-Actuellement,​ une des possibilités pour pallier à ce problème particulier,​ est de générer un job [[:​Upstart]] en plus de la règle UDEV créée précédemment.\\ ​ 
-Dans la séquence de démarrage, il détectera la présence ou non de l'​imprimante sur le bus USB. et redémarrera ccpd si nécessaire pour garantir son lancement correct. 
- 
-[[:​tutoriel:​comment_modifier_un_fichier|Créez avec les droits d'​administration]] un fichier **/​etc/​init/​ccpd-restart.conf** pour y insérer ceci: 
-<​file>​ 
-# 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 
-</​file> ​ 
-Enregistrez ce fichier. \\ \\  
-Avec la règle [[:UDEV]] et le job [[:​Upstart]] ainsi créés, il ne sera plus nécessaire de s'​occuper du daemon ccpd, quel que soit le moment où l'​imprimante est allumée/​éteinte. \\  Elle sera toujours opérationnelle pour imprimer. \\ 
- 
-==== 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 [nom de l'​imprimante]</​code>​ 
-où [nom de l'​imprimante] est le nom que vous avez donné lors de l'​[[#​commande d'​installation|installation dans cups]].\\ 
- 
-Lorsque aucune imprimante n'est installée, la commande :  
-<​code>​sudo /​usr/​sbin/​ccpdadmin </​code>​ 
- 
-donnera un résultat de ce type :  
-<​code>​ 
-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 ​ 
- ​------------------------------------------------------ 
-</​code>​ 
- 
-===== Sources ===== 
- 
-  * Documentation fournie avec le driver d'​installation 
-  * la page man de lpadmin 
-  * (en) [[https://​help.ubuntu.com/​community/​HardwareSupportComponentsPrinters/​CanonPrinters/​Canon_LBP_2900|Canon LBP 2900]] sur Ubuntu.com 
-  * (en)[[https://​help.ubuntu.com/​community/​CanonCaptDrv190|Installation Capt 1.9 sur Ubuntu.com]] 
-  * (en) [[http://​v0xel.wordpress.com/​2006/​05/​23/​canoon-lbp-1120-on-ubuntu-510-how-to|Canon lbp-1120 How to]] sur v0xel.wordpress.com 
-  * (en) [[http://​ubuntuforums.org/​showthread.php?​t=1315665|Fil de discussion]] sur ubuntuforums.org 
- 
----- 
-//​Contributeurs://​ [[:​utilisateurs:​fabux]],​ murex 
  • tutoriel/comment_installer_pilote_canon_en_ligne_de_commande.1310973069.txt.gz
  • Dernière modification: Le 15/12/2011, 15:21
  • (modification externe)