Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > ebac5394abc62d2e0b61505bfba9712a > files > 56

howto-text-fr-2006-5mdv2010.0.noarch.rpm

 Guide du partage d'imprimante entre les systèmes Debian GNU/Linux et Microsoft
                                    Windows

  Auteur : Ian Ward

                       <ian CHEZ excess POINT org>
                   

   Adaptation française: Vincent Chartier

                       <vchartier CHEZ kyxar POINT fr>
                   

   Relecture de la version française: Claude Thomassin

                       <cthomassin CHEZ waika9 POINT com>
                   

   Préparation de la publication de la v.f.: Jean-Philippe Guérard

                       <jean TIRET philippe POINT guerard CHEZ tigreraye.org>
                   

   Version : 1.2.fr.1.0

   2003-11-03

   +------------------------------------------------------------------------+
   | Historique des versions                                                |
   |------------------------------------------------------------------------|
   | Version 1.2.fr.1.0          | 2003-11-03         | VCR, CT, JPG        |
   |------------------------------------------------------------------------|
   | Première adaptation française                                          |
   |------------------------------------------------------------------------|
   | Version 1.2                 | 2003-10-03         | IW                  |
   |------------------------------------------------------------------------|
   | Note à propos de Woody et gs-esp, conflit avec la commande « enable »  |
   | de bash et une correction pour les clients XP et 2000 (Note about      |
   | woody and gs-esp, conflict with bash's enable command and fix for      |
   | XP/2000 clients)                                                       |
   |------------------------------------------------------------------------|
   | Version 1.1                 | 2003-06-26         | IW                  |
   |------------------------------------------------------------------------|
   | Ajout de mots de passe pour les imprimantes Windows partagées,         |
   | corrections (Added passwords on windows shared printers, Corrections)  |
   |------------------------------------------------------------------------|
   | Version 1.0                 | 2003-05-15         | TMM                 |
   |------------------------------------------------------------------------|
   | Première publication, revue par le projet de documentation Linux       |
   | (Initial release, reviewed by LDP)                                     |
   |------------------------------------------------------------------------|
   | Version 0.8                 | 2003-04-11         | IW                  |
   |------------------------------------------------------------------------|
   | Converti à partir de LaTeX (converted from LaTeX)                      |
   +------------------------------------------------------------------------+

     ----------------------------------------------------------------------

   Table des matières

   1. Introduction

   2. Comment démarrer

                2.1. Composants pour l'impression sous Linux

                2.2. Logiciels requis

                2.3. Configuration de l'imprimante locale avec CUPS

                2.4. Les bases de l'impression sous Linux

   3. Imprimer vers des PC sous Windows

                3.1. Connexion à Windows

                3.2. Configuration de CUPS

   4. Partager des imprimantes avec des PC sous Windows

                4.1. Les bases du partage

                4.2. Configuration de Samba

                4.3. Configuration de CUPS

   5. Résolution de problèmes

                5.1. Échec des connexions aux imprimantes sous Windows

                5.2. D'autres problèmes

   6.

                6.1. Licence & droits d'utilisation

                6.2. License

1. Introduction

   Debian GNU/Linux est une distribution Linux de premier choix dont la
   maintenance est assurée par des volontaires. Malheureusement, la
   configuration d'imprimantes sous Debian peut être difficile. De plus, il
   n'est pas facile de trouver des instructions simples expliquant comment
   configurer des imprimantes partagées entre Windows et Linux en utilisant
   les derniers outils. Ce guide a été écrit pour résoudre ces deux
   problèmes.

   Ce guide va vous expliquer comment utiliser les outils en ligne de
   commande pour configurer l'impression sur votre système Debian. Il vous
   expliquera comment envoyer des documents à partir de Linux vers des
   imprimantes Windows et comment partager des imprimantes sous Linux avec
   des PC sous Windows. Quelques exemples de dépannage vous seront aussi
   fournis.

   La dernière version originale de ce document est disponible sur
   excess.org. Le code source en XML Docbook et les fichiers images EPS
   nécessaires à générer les différents formats de publication peuvent
   également être téléchargés sur excess.org. N'hésitez pas à envoyer (en
   anglais) des corrections ou suggestions concernant la version originale de
   ce document à <ian CHEZ excess POINT org>.

   La dernière version française de ce document est toujours disponible sur
   traduc.org. Le code source en XML Docbook et les fichiers EPS du document
   original peuvent également être téléchargés sur traduc.org. N'hésitez pas
   à nous signaler les coquilles que vous pourrez trouver, et à nous envoyer
   vos corrections ou suggestions d'améliorations relatives à la version
   française de ce document à <vcr CHEZ kyxar POINT fr> ou à <commentaires
   CHEZ traduc POINT org>.

2. Comment démarrer

  2.1. Composants pour l'impression sous Linux

   Les principaux composants que nous utiliserons sont :

     o CUPS

       Le système commun d'impression UNIX (The Common UNIX Printing System)
       est un système de gestion des impressions et un ensemble de programmes
       permettant d'utiliser et d'administrer les imprimantes.

     o Samba

       Samba est un logiciel permettant aux ordinateurs sous un autre système
       que Windows de se comporter en réseau comme des machines sous Windows.
       En effet, Samba met en ½uvre les protocoles de partage de fichiers et
       d'imprimantes utilisés par Windows.

     o Pilotes d'imprimantes

       LinuxPrinting.org offre le plus grand choix de pilotes d'imprimantes
       et gère une base de données des imprimantes compatibles Linux. Vous
       devrez télécharger un pilote d'imprimante pour chaque modèle
       d'imprimante que vous voudrez utiliser sous Linux. Un pilote
       d'imprimante est constitué d'un fichier PPD et d'un filtre, ou bien
       uniquement d'un fichier PPD dans le cas des imprimantes compatibles
       PostScript.

  2.2. Logiciels requis

   Tous les programmes et les bibliothèques requis sont inclus en standard
   dans l'archive Debian. Vous pouvez télécharger et installer ces paquets en
   utilisant les outils classiques de gestion des paquet de Debian. Ce qui
   suit est une liste des paquets dont vous aurez besoin :

   cupsys

           Le serveur CUPS

   cupsys-bsd

           Les commandes BSD de CUPS

   cupsys-client

           Les programmes clients de CUPS

   foomatic-bin

           Les pilotes d'imprimante de LinuxPrinting.org

   samba

           Le serveur SMB et CIFS Samba pour UNIX

   smbclient

           Le client SMB et CIFS Samba pour UNIX

   gs-esp

           Le Ghostscript ESP

           Ce paquet n'est pas disponible dans la distribution Debian
           GNU/Linux 3.0 (aussi appelée woody), utilisez plutôt gs

   a2ps

           Le logiciel A2PS de GNU

   Les commandes suivantes installeront ces logiciels :

   apt-get update                                                     
   apt-get install cupsys cupsys-bsd cupsys-client foomatic-bin \     
                   samba smbclient gs-esp a2ps                        

   Des paquets additionnels peuvent être nécessaires pour certaines
   imprimantes spécifiques. Par exemple, le paquet hpijs doit être installé
   pour permettre le fonctionnement correct des imprimantes InkJet de HP.

  2.3. Configuration de l'imprimante locale avec CUPS

   La commande lpadmin est utilisée pour configurer les imprimantes.
   L'exemple suivant illustre comment configurer une imprimante laser avec
   CUPS :

   /usr/sbin/lpadmin -p Laser -v parallel:/dev/lp0 -P /root/laser.ppd 
   /usr/bin/enable Laser                                              
   /usr/sbin/accept Laser                                             
   /usr/sbin/lpadmin -d Laser                                         

  Note

   L'interpréteur de commandes bash a une commande intégrée appelée enable.
   Les utilisateurs de bash devront donc utiliser le chemin complet de la
   commande (/usr/bin/enable) pour activer l'imprimante.

   La première commande crée une nouvelle imprimante appelée Laser qui est
   connectée au premier port parallèle et utilise le fichier PPD suivant :
   /root/laser.ppd.

   Laser est alors activée et configurée pour accepter les tâches
   d'impression avec les commandes enable et accept.

   La dernière commande configure Laser comme imprimante par défaut. Des
   informations plus détaillées concernant la configuration d'imprimante sont
   disponibles dans la documentation de CUPS.

  2.4. Les bases de l'impression sous Linux

   Figure 1. Imprimer en local

   Imprimer en local

   Les documents sont envoyés dans la file d'attente via la commande lpr ou
   lp suivie du nom de fichier. Vous pouvez voir la file d'attente et
   consulter le statut de l'imprimante avec les commandes lpstat -o et lpstat
   -p. Pour annuler une impression, utilisez la commande cancel ou lprm
   suivie du numéro identifiant l'impression.

   Le serveur d'impression CUPS est appelé cupsd. Il convertit des documents
   vers le format PostScript, puis les convertit dans un format natif
   compréhensible par l'imprimante (voir le schéma de la figure 1, « Imprimer
   en local »). Les imprimantes qui ne comprennent pas le format PostScript
   utilisent un format tramé (de matrice de points ou bitmap) pour les
   documents. Les formats tramés peuvent être beaucoup plus lourds que le
   PostScript original, et mettront plus de temps à être envoyés à
   l'imprimante.

   Les filtres sont des programmes utilisés pour convertir des documents d'un
   format vers un autre. Le gestionnaire d'impression CUPS fera de son mieux
   pour trouver un filtre qui convienne pour les documents que vous lui
   fournirez. Si aucun filtre adapté n'est installé, vous recevrez un message
   d'erreur ressemblant à lpr : impossible d'imprimer le fichier :
   client-erreur-format-document-non-supporté.

   Beaucoup d'applications n'offrent pas de de filtres correspondant à leur
   format de documents. Les documents crées avec ces applications ne peuvent
   être imprimés que depuis l'application elle-même, à moins d'exporter le
   document vers un format PostScript ou un autre format standard.

3. Imprimer vers des PC sous Windows

  3.1. Connexion à Windows

   Figure 2. L'impression en réseau

   L'impression en r*seau

   SMB et CIFS sont les protocoles utilisés par Windows pour le partage de
   fichiers et d'imprimantes. Nous utiliserons Samba pour communiquer avec
   les PC sous Windows via ces protocoles. Avant de configurer CUPS, nous
   devons nous assurer que nous pouvons nous connecter aux PC sous Windows en
   utilisant la commande smbclient, le client Samba pour les protocoles SMB
   et CIFS (voir le schéma de la figure 2, « L'impression en réseau »).

   Voici par exemple comment établir une nouvelle connexion à un PC sous
   Windows :

   /usr/bin/smbclient -L orange -U fred                               
                                                                      
   added interface ip=10.6.7.234 bcast=10.6.7.255 nmask=255.255.255.0 
   Got a positive name query response from 10.6.7.8 ( 10.6.7.8 )      
   Password: (non affiché)                                            
                                                                      
   Sharename  Type  Comment                                           
   PRINTER$   Disk                                                    
   JETDENCRE  Printer                                                 
   TRUCS      Disk                                                    
   IPC$       IPC    Remote Inter Process Communication               

   La commande utilisée ci-dessus demande la liste des partages existant sur
   un PC sous Windows appelé orange, avec l'identifiant utilisateur fred. Le
   résultat de cette commande montre une imprimante appelée JETDENCRE.

   Si le service de nommage Windows n'est pas disponible, vous devrez
   spécifier l'adresse IP du PC sous Windows avec l'option -I comme
   ci-dessous :

   /usr/bin/smbclient -I 10.6.7.8 -L orange -N                        

   Pour de plus amples informations, consultez la documentation de Samba sur
   l'utilisation de smbclient.

  3.2. Configuration de CUPS

   Une fois que vous aurez trouvé votre imprimante Windows, vous pourrez
   configurer CUPS. Tout d'abord, vérifiez que votre installation de CUPS
   dispose de la compatibilité SMB en utilisant la commande suivante :

   ls -l /usr/lib/cups/backend/smb                                    

   Si ce fichier n'existe pas, créez-le par la commande suivante :

   ln -s `which smbspool` /usr/lib/cups/backend/smb                   

   Ceci est un exemple de configuration de l'imprimante montrée plus haut :

/usr/sbin/lpadmin -p ImprimanteOrange \                                          
                  -v smb://fred:mon_passe@orange/JETDENCE -P /root/jetdencre.ppd 
/usr/bin/enable ImprimanteOrange                                                 
/usr/sbin/accept ImprimanteOrange                                                
/usr/sbin/lpadmin -d ImprimanteOrange                                            

   Comme mentionné précédemment, bash dispose d'une commande intégrée appelée
   enable, donc les utilisateurs de bash doivent utiliser le chemin complet
   de la commande (/usr/bin/enable) lorsqu'ils souhaitent activer une
   imprimante.

   La commande lpadmin vous permet de configurer l'accès depuis Linux à une
   imprimante partagée sous Windows. Il suffit de lui indiquer comme
   paramètre unique le nom d'utilisateur, le mot de passe, le nom netbios et
   le nom de l'imprimante.

   Regardez la section 2.3, « Configuration de l'imprimante locale avec
   CUPS » pour une explication plus approfondie des commandes utilisées
   ci-dessus. Si le service de nommage Windows n'est pas disponible, ajoutez
   l'option -h suivie de l'adresse IP de la machine sous Windows à la
   première commande lpadmin :

/usr/sbin/lpadmin -p ImprimanteOrange -h 10.6.7.8 \                               
                  -v smb://fred:mon_passe@orange/jetdencre -P /root/jetdencre.ppd 

   Votre imprimante est maintenant prête à être testée. Envoyez un fichier à
   l'imprimante avec la commande lp suivie du nom de fichier, ou en imprimant
   la document à partir d'une application.

4. Partager des imprimantes avec des PC sous Windows

  4.1. Les bases du partage

   Figure 3. Partage d'imprimante

   Partage d'imprimante

   Samba utilise les démons nmbd et smbd pour le partage de fichiers et
   d'imprimantes avec des PC sous Windows. nmbd fonctionne comme un service
   de nommage Windows, en diffusant le nom de votre ordinateur aux autres PC
   sous Windows du réseau local. smbd accepte les demandes de fichiers et
   d'impression en provenance de machines sous Windows (cf. figure 3,
   « Partage d'imprimante »).

   Vous aurez besoin de télécharger et d'installer sous Windows les pilotes
   des imprimantes que vous partagerez sous Linux. Vous pourrez en général
   trouver ces pilotes sur les sites web de leurs constructeurs.

  4.2. Configuration de Samba

   Si vous autorisez un accès anonyme à votre imprimante, vous devrez créer
   un compte utilisateur pour les impressions à distance :

   /usr/sbin/adduser --system --disabled-password smbprint            

   Cette commande ajoute un utilisateur appelé smbprint sur votre système.
   Vérifiez qu'il y a assez d'espace disque dans /home/smbprint, le
   répertoire personnel de l'utilisateur smbprint pour stocker les fichiers
   en attente d'impression. Vérifiez que l'utilisateur smbprint ne dispose
   pas des droits de lecture ou de modification sur les fichiers et les
   répertoires sensibles. Si vous avez configuré CUPS pour restreindre
   l'impression à certains utilisateurs sur votre système, vous devrez
   autoriser l'utilisateur smbprint à accéder aux imprimantes que vous voulez
   partager.

   Le fichier de configuration de Samba est /etc/samba/smb.conf. Ce qui suit
   est un exemple de configuration permettant d'utiliser CUPS avec
   l'utilisateur smbprint :

   [global]                                                           
    printcap name = cups                                              
    printing = cups                                                   
    security = share                                                  
                                                                      
   [printers]                                                         
    browseable = yes                                                  
    printable = yes                                                   
    public = yes                                                      
    create mode = 0700                                                
    guest only = yes                                                  
    use client driver = yes                                           
    guest account = smbprint                                          
    path = /home/smbprint                                             

   Veuillez noter que cette configuration va autoriser l'impression par toute
   personne pouvant établir une connexion réseau à votre ordinateur, ce qui
   n'est pas recommandé pour des machines situées sur des réseaux non sûrs.
   Ce qui est par exemple le cas des ordinateurs reliés directement à
   internet. Si vous devez mettre en place un contrôle d'accès, mettez
   security = user ou security = domain et lisez les pages de manuel de Samba
   pour de plus amples informations.

   Une fois que vous aurez ajouté les réglages ci-dessus à votre fichier de
   configuration Samba, vous devez redémarrer Samba avec la commande :

   /etc/init.d/samba restart                                          

  4.3. Configuration de CUPS

   Les pilotes d'imprimante Windows formatent leur sortie pour l'imprimante
   avant de l'envoyer au travers du réseau. Vous devrez configurer CUPS pour
   accepter la sortie pré-formatée en enlevant dé-commentant^[1] la ligne
   ci-dessous du fichier /etc/cups/mime.convs :

   application/octet-stream   application/vnd.cups-raw   0   -        

   Vous devrez aussi dé-commenter la ligne ci-dessous dans
   /etc/cups/mime.types :

   application/octet-stream                                           

   Maintenant, vous devez configurer CUPS pour autoriser les connexions en
   provenance des autres machines du réseau. Ajoutez les lignes ci-dessous au
   fichier /etc/cups/cupsd.conf :

   <Location /printers>                                               
    AuthType None                                                     
    Order Deny,Allow                                                  
    Deny From None                                                    
    Allow From All                                                    
   </Location>                                                        

   Comme dans la configuration de Samba, cette configuration autorise
   n'importe quelle machine à se connecter à vos imprimantes et n'est pas
   recommandée sur des réseaux non sécurisés. Pour apprendre comment
   configurer le contrôle d'accès de vos imprimantes, lisez la page de manuel
   du fichier cupsd.conf et la documentation de CUPS.

   Finalement, redémarrez CUPS avec la commande suivante :

   /etc/init.d/cupsys restart                                         

   Votre imprimante sous Linux devrait désormais être accessible par les PC
   sous Windows de votre réseau local. Suivez les étapes habituelles de
   configuration d'une imprimante réseau sur vos machines sous Windows et
   n'oubliez pas d'imprimer une page de test.

5. Résolution de problèmes

  5.1. Échec des connexions aux imprimantes sous Windows

   Quand smbspool, l'utilitaire correspondant à smbclient utilisé par CUPS
   n'arrive pas à se connecter, il émet des messages d'erreur pleins d'humour
   mais pas très utiles. L'un de ces messages est :

   Impossible de se connecter à l'hôte Samba : Succès.                

   L'échec des connexions peut également se manifester par le blocage
   apparent des documents dans la file d'attente des imprimantes sous
   Windows.

   Examinez les entrées les plus récentes du journal des erreurs de CUPS avec
   la commande suivante :

   /usr/bin/tail /var/log/cups/error_log                              

   Si vous voyez un message ressemblant à cli_connect() failed... c'est que
   smbspool n'a pu trouver la machine Windows à laquelle vous essayez de vous
   connecter.

   Vérifiez l'orthographe du nom de la machine sous Windows. Vérifiez aussi
   que la machine sous Windows est allumée et que sa connexion réseau
   fonctionne correctement. Assurez-vous que vous pouvez vous y connecter en
   utilisant smbclient comme cela a été présenté dans la section 3.1,
   « Connexion à Windows ».

   Si vous voyez un message ressemblant à SMB tree connect failed: ERRSRV -
   ERRinvnetname c'est que smbclient est parvenu à se connecter à la machine
   sous Windows mais n'a pas pu se connecter à l'imprimante que vous avez
   indiqué. Vérifiez l'orthographe du nom de l'imprimante partagée en
   utilisant la commande smbclient comme cela a été présenté dans la
   section 3.1, « Connexion à Windows ».

  5.2. D'autres problèmes

   Parmi les autres problèmes que vous pourrez rencontrer, il y a, par
   exemple, le fait d'être incapable d'imprimer vers une imprimante locale ou
   le fait de voir les travaux d'impression disparaître de la file d'attente
   sans s'être imprimés. Il se peut aussi que vous voyiez des messages
   d'erreurs vagues tels que :

   Child process 2384 exited with status 32.                          

   Augmentez le niveau de détail du journal des erreurs (paramètre LogLevel)
   en lui donnant la valeur debug, ce qui vous permettra d'avoir plus
   d'informations sur ce qui s'est passé avant que l'impression échoue :

    1. Ouvrez le fichier de configuration principal de CUPS
       /etc/cups/cupsd.conf avec un éditeur de texte.

    2. Changez la ligne qui contient LogLevel warn en LogLevel debug.

    3. Sauvegardez le fichier de configuration et quittez l'éditeur de texte.

    4. Relancez le serveur CUPS avec la commande suivante :

       /etc/init.d/cupsys restart                                      

   Vous pourrez consulter le fichier d'historique de CUPS avec la commande
   suivante  :

   /usr/bin/tail -f /var/log/cups/error_log                           

   Vous devriez voir une ligne disant Scheduler shutting down due to SIGTERM.
   Cela indique que le serveur CUPS a été correctement arrêté.

   Relancez votre travail d'impression et recherchez des messages
   intéressants pour le diagnostic du problème.

   Un exemple de message de débogage intéressant est :

   GNU Ghostscript 7.05 : Can't start ijs server 'hpijs'.             

   Dans ce cas, la solution est d'installer le paquet hpijs.

   Si vous ne pouvez pas déterminer la cause de l'échec, effectuez une
   recherche sur internet avec les mots clefs du message d'erreur que vous
   avez trouvé ; il y a des chances que quelqu'un aie déjà résolu votre
   problème auparavant. Vous pouvez aussi essayer de mettre à jour les
   paquets listés dans la section 2.2, « Logiciels requis » si une version
   plus à jour est disponible.

  6.1. Licence & droits d'utilisation

  Avertissement

   Ceci est la version française non officielle de la licence selon laquelle
   ce document est distribué. Seule la version anglaise de cette licence
   (ci-dessous) fait foi.

   Copyright © 2003 Ian Ward.

   Copyright © 2003 Vincent Chartier, Claude Thomassin and Jean-Philippe
   Guérard pour la version française.

   Ce document est un logiciel libre ; vous pouvez le redistribuer ou le
   modifier selon les termes de la licence publique générale GNU (GPL), tel
   que publiée par la Free Software Foundation ; que ce soit dans sa version
   2 ou bien, à votre choix, selon toute version ultérieure.

   Il est distribué dans l'espoir qu'il se révélera utile, mais sans aucune
   garantie ; sans même les garanties implicites liés aux produits
   commerciaux ou d'adaptation à un but particulier. Reportez-vous à la
   licence publique générale GNU (GPL) pour plus d'informations.

   Une copie de la licence publique générale GNU (GPL) est disponible dans le
   fichier /usr/share/common-licenses/GPL livré avec la distribution
   Linux/GNU Debian. Cette licence est également disponible sur la Toile à
   l'adresse http://www.gnu.org/copyleft/gpl.html. Vous pouvez également
   obtenir une copie de cette licence en écrivant (en anglais) à Free
   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
   02111-1307, États-Unis d'Amérique.

  6.2. License

  Avertissement

   Ceci est la version originale officielle de la licence selon laquelle ce
   document est distribué. Seule cette version fait foi. Une version
   française non-officielle est disponible ci-dessus.

   Copyright © 2003 Ian Ward.

   Copyright © 2003 Vincent Chartier, Claude Thomassin and Jean-Philippe
   Guérard for the french translation.

   This manual is free software; you may redistribute it and/or modify it
   under the terms of the GNU General Public License as published by the Free
   Software Foundation; either version 2, or (at your option) any later
   version.

   This is distributed in the hope that it will be useful, but without any
   warranty; without even the implied warranty of merchantability or fitness
   for a particular purpose. See the GNU General Public License for more
   details.

   A copy of the GNU General Public License is available as
   /usr/share/common-licenses/GPL in the Debian GNU/Linux distribution or on
   the World Wide Web at http://www.gnu.org/copyleft/gpl.html. You can also
   obtain it by writing to the Free Software Foundation, Inc., 59 Temple
   Place, Suite 330, Boston, MA 02111-1307, USA.

   --------------

   ^[1] C'est-à-dire en retirant le caractère dièse (« # ») en début de
   ligne.