Annexe F. Faire marcher une imprimante

Table des matières
1. Préliminaires
1.1. Mon imprimante est-elle supportée sous Linux ?
1.2. Un peu de théorie
1.3. Noter le driver recommandé
2. Installer et configurer CUPS
2.1. Charger les modules noyau
2.2. Installer CUPS
2.3. Installer le fichier PPD
2.4. Configurer CUPS
3. Imprimer !
3.1. Les commandes de base
3.2. Imprimer depuis une application
4. Transformer l'ordinateur en serveur d'impression
4.1. Configuration du serveur d'impression
4.2. Configuration des clients sous Debian GNU/Linux

Attention

Cette annexe est toute nouvelle, et n'a été que très peu testée. Mon expérience avec les imprimantes sous Linux étant extrêmement réduite, je ne garanti pas le résultat... mais toutes les remarques sont les bienvenues !

1. Préliminaires

1.1. Mon imprimante est-elle supportée sous Linux ?

Faire marcher une imprimante sous Linux fait partie des choses difficiles : c'est à mon avis plus difficile que de recompiler un noyau ou de faire marcher un serveur graphique !

Tout d'abord, il faut partir aux renseignements pour savoir si votre imprimante est supportée sous Linux ou non. Pour cela, rendez-vous sur le site LinuxPrinting.org et cliquez sur Printer listings : sélectionnez la marque et le modèle de votre imprimante, et vous affiche alors une page qui vous informe sur la qualité du support de votre imprimante sous Linux. Si cette page vous dit que votre imprimante est Paperweight avec un pingouin barré comme logo, alors ce n'est pas la peine d'aller plus loin ! Dans les autres cas, si vous avez un, deux ou trois pingouins, c'est que vous devez pouvoir faire quelque chose de votre imprimante sous Linux... continuez à lire ce chapitre !

D'une manière générale, la qualité du support d'une imprimante sous Linux dépend surtout du bon vouloir du constructeur : certains constructeurs comme HP et Epson collaborent avec la communauté du logiciel libre et leurs imprimantes sont bien supportées, alors que d'autres comme Canon ou Lexmark ne veulent pas dévoiler les spécifications techniques de leurs imprimantes, ce qui empêche l'écritures de pilotes pour Linux. Pour plus de détails sur le niveau de coopération du constructeur de votre imprimante avec la communauté du logiciel libre, consultez la page Vendor Info.

L'idéal est de vérifier ce critère avant d'acheter une imprimante. LinuxPrinting.org propose une page Suggested printers qui vous aide à choisir une bonne imprimante qui sera bien supportée sous Linux.

1.3. Noter le driver recommandé

Maintenant que vous avez les bases théories requises, retournez dans Printer listing sur le site LinuxPrinting.org, sélectionnez à nouveau votre imprimante et notez le driver recommandé pour faire marcher votre imprimante sous Linux :

  • si le driver recommandé est Postscript, cliquez sur view PPD, puis enregistrez le fichier PPD sous le nom conseillé dans les commentaires au début du fichier ;

  • si le driver recommandé est Gimp-print, faites de même ;

  • si ... [TODO : compléter]

2. Installer et configurer CUPS

2.1. Charger les modules noyau

Avant d'installer CUPS, il faut charger les modules du noyau qui vont permettre à votre ordinateur de communiquer avec votre imprimante. Si vous avez bien suivi mes consignes au chapitre Configuration du noyau Linux, vous avez du compiler les modules requis, il ne reste plus qu'à les charger à la main :

  • si vous avez une imprimante USB :

    
# modprobe usblp
    
  • si vous avez une imprimante sur port parallèle :

    
# modprobe lp
    

Une fois que vous aurez configuré votre imprimante dans CUPS, ce dernier se chargera d'insérer les modules requis au démarrage du système.

2.4. Configurer CUPS

La configuration de CUPS se fait via une interface Web, qui, par défaut, n'est accessible qu'en local. Ouvrez donc votre navigateur web favori (si vous n'avez pas de serveur graphique, vous pouvez utiliser un navigateur web en console comme w3m) et tapez l'URL http://localhost:631/admin/.

Il va vous demander de vous authentifier : entez root comme login et votre mot de passe root (comme vous accédez à l'interface web en local sur la machine, votre mot de passe root ne sera pas transmis en clair à l'extérieur).

Note

Si vous voulez qu'un utilisateur qui ne connaît pas le mot de passe root puisse administrer CUPS par l'interface web, ajoutez-le au groupe lpadmin ; il pourra alors y accéder avec son login et son mot de passe.

Vous arrivez alors dans l'interface d'administration de CUPS :

Cliquez sur Ajouter une imprimante et suivez l'assistant :

  1. donnez un nom (sans espace) à votre imprimante (et éventuellement un emplacement et une description) ;

  2. sélectionnez le périphérique d'accès à l'imprimante : si c'est une imprimante sur port parallèle, sélectionnez Parallel port #1, si c'est une imprimante sur port USB, sélectionnez USB printer #1 ;

  3. sélectionnez la marque de votre imprimante ;

  4. sélectionnez le modèle de votre imprimante : si le nom exact n'apparaît pas, rappelez-vous du nom du driver qui était recommandé par LinuxPrinting.org.

Il vous informe alors que l'imprimante a été ajoutée avec succès. Cliquez sur le nom de l'imprimante pour aller directement à la page de status de celle-ci :

Si le champ d'état de l'imprimante indique qu'elle est à l'arrêt, cliquez sur Démarrer l'imprimante. Ensuite, cliquez sur Configurer l'imprimante pour régler un certain nombre de paramètres (taille du papier, résolution, ...). Enfin, cliquez sur Imprimer page de test pour voir si vous êtes capable de faire cracher quelque chose à votre imprimante sous Linux !

3. Imprimer !

4. Transformer l'ordinateur en serveur d'impression

Maintenant que l'impression en local marche, il est facile de transformer l'ordinateur en serveur d'impression ; les autres ordinateurs du réseau pourront alors se servir de l'imprimante à distance !