Linux fait souvent rimer impression avec flexibilité, et c’est là qu’intervient CUPS, le serveur d’impression incontournable pour les distributions comme Ubuntu. Ce système open source est devenu la clé de voûte pour gérer ses imprimantes locales ou réseau, s’appuyant sur le protocole IPP, un standard universel d’impression. Que ce soit pour organiser efficacement la gestion des files d’attente, piloter une imprimante ultime ou déployer un serveur d’impression dans un environnement complexe, CUPS conjugue puissance, modularité et simplicité grâce à son interface web et ses commandes en ligne. Voici comment dompter ce géant discret du monde Linux.
L’article en bref
Explorez comment configurer CUPS, le serveur d’impression phare sur Linux, pour maîtriser impression locale et réseau avec efficacité.
- Installation simplifiée : Installer CUPS facilement via apt sur Ubuntu.
- Configuration fine : Modifier /etc/cups/cupsd.conf pour adapter le serveur.
- Gestion efficace : Administration via interface web et commandes lpadmin.
- Support étendu : Pilotes et protocoles pour toutes imprimantes, USB et réseau.
Maîtriser CUPS, c’est ouvrir la porte à une impression Linux fluide et évolutive.
Comprendre l’essentiel du serveur d’impression CUPS sur Linux
Sur les distributions Linux modernes, dont Ubuntu en tête, CUPS (Common UNIX Printing System) s’est imposé comme le standard ultime pour gérer l’impression. Ce système open source, porté par le projet OpenPrinting, orchestre les tâches d’impression et assure leur passage fluide en file d’attente, quelle que soit la complexité du réseau. L’un des atouts majeurs de CUPS réside dans son intégration du protocole IPP (Internet Printing Protocol), un canal garantissant l’interopérabilité entre machines et imprimantes. Ses capacités vont du pilotage simple d’imprimantes locales par USB à la gestion avancée des imprimantes réseau, incluant la découverte automatique et la prise en charge poussée des pilotes grâce aux fichiers PPD (PostScript Printer Description).
Installation rapide du serveur CUPS sous Ubuntu
Pour entamer l’aventure CUPS sur Ubuntu, l’efficacité est reine : une simple ligne de commande suffit. En tant qu’administrateur, il suffit d’ouvrir un terminal et de taper sudo apt install cups. Cela déclenche l’installation de CUPS et de toutes ses dépendances, avec démarrage automatique du service. Un point à garder en tête : pour « imprimer » dans un fichier PDF, additionnez cups-pdf à l’installation.
En cas de pépin, les fichiers logs situés dans /var/log/cups/error_log deviennent vos alliés pour diagnostiquer finement les erreurs.
Configurer CUPS pour une impression réseau efficace et sécurisée
Modifier le comportement de CUPS passe essentiellement par le fichier /etc/cups/cupsd.conf, qui partage la même syntaxe que les fichiers Apache, ce qui le rend accessible aux habitués des serveurs web. Il est crucial de sauvegarder l’original avant toute modification, histoire d’avoir un plan B proprement rangé.
- ServerAdmin : Indiquez l’adresse mail de l’administrateur, un classique pour centraliser les alertes.
- Listen : Par défaut, CUPS n’écoute que l’interface loopback (127.0.0.1). Pour ouvrir le serveur à votre réseau local, ajoutez une directive
Listenavec l’adresse IP de votre serveur (ex. Listen 192.168.10.250:631). - Port : En option, vous pouvez spécifier que CUPS écoute toutes les interfaces sur le port 631.
À chaque changement dans cette config, n’oubliez pas de redémarrer le service avec sudo systemctl restart cups.service pour appliquer les modifications.
Gestion des files d’attente et administration par interface Web
CUPS allie efficacité et convivialité : son interface web accessible à http://localhost:631/admin permet de créer, modifier ou supprimer des files d’impression. Cela simplifie la gestion d’environnement multi-imprimantes. Pour y accéder en mode administration, il faudra être super-utilisateur ou membre du groupe lpadmin, ce qui élargit les droits sans passer par root systématiquement.
Pour ajouter un utilisateur à ce groupe, la commande est limpide : sudo usermod -aG lpadmin votre_utilisateur.
Pilotes, protocoles et outils CLI pour une maîtrise totale du serveur d’impression Linux
Votre serveur d’impression CUPS ne serait rien sans un support robuste des pilotes et protocoles. En 2026, la tendance est au sans pilote, avec AirPrint et IPP Everywhere prenant de l’ampleur, permettant d’imprimer sans configurations complexes. Cependant, pour les imprimantes plus anciennes ou spécifiques, la base réside toujours dans les fichiers PPD et filtres gérés via le paquet cups-filters.
| Type d’imprimante | Interface | Support par CUPS | Fonctionnalités clés |
|---|---|---|---|
| USB | Direct | Automatique (via lsusb) | Détéction locale, URI usb://, usage de filtres spécifiques |
| Parallèle | Port parallèle (lp0) | Modules noyau lp, parport | Connexion legacy, gestion manuelle URI |
| Réseau | TCP/IP, mDNS (Avahi), SMB | IPP, AirPrint, Samba | Partage réseau, découverte, authentification |
| Impression PDF | Virtuel | cups-pdf | Impression dans fichier PDF |
Le duo de commandes lpadmin et lpoptions reste la pierre angulaire de la gestion en ligne de commande, pour créer des files, définir des imprimantes par défaut ou ajuster les options comme le format de papier ou le mode recto verso.
- Ajouter une imprimante :
lpadmin -p nom_imprimante -E -v URI -m modèle - Supprimer une imprimante :
lpadmin -x nom_imprimante - Lister les périphériques disponibles :
lpinfo -v - Modifier les options :
lpoptions -p nom_imprimante -o option=valeur
Dépannage et bonnes pratiques pour un serveur CUPS performant
Comme dans tout bon RPG technique, il y aura des boss à vaincre. Les fichiers logs, bien fichus et accessibles, combinés aux commandes de diagnostic telles que lpstat (état des files), lprm (annulation d’impressions), et cupsctl (contrôles serveur), vous permettront de dompter les éventuelles erreurs d’impression.
Quelques astuces pour éviter les pièges classiques :
- Évitez les doubles filtrages en configurant la file d’attente client ou serveur en mode « raw » si vous partagez une imprimante entre machines.
- Privilégiez l’activation socket sous systemd pour ne lancer CUPS qu’à la demande, économisant ainsi les ressources.
- Maintenez vos pilotes à jour, notamment avec
cups-filterset les bases PPD (OpenPrinting, Gutenprint).
Comment modifier le fichier de configuration cupsd.conf en toute sécurité ?
Sauvegardez toujours le fichier d’origine avec une copie, puis protégez cette copie en écriture. Utilisez des éditeurs comme nano ou vim pour modifier /etc/cups/cupsd.conf.
Quel est l’intérêt du groupe lpadmin ?
Les membres du groupe lpadmin peuvent administrer les imprimantes via l’interface web CUPS sans être root, ce qui facilite la gestion et renforce la sécurité.
Comment identifier une imprimante USB connectée ?
Utilisez la commande lsusb qui liste les périphériques USB, incluant les imprimantes détectées en mode presque automatique par CUPS.
Peut-on utiliser CUPS pour imprimer vers un serveur distant ?
Oui, en configurant l’URI du serveur distant dans le client CUPS. Il faut installer libcups et définir la variable d’environnement CUPS_SERVER ou/et configurer /etc/cups/client.conf.
Quels sont les avantages d’imprimer via IPP ?
IPP est un protocole standardisé qui assure compatibilité, gestion fine des files d’impression, sécurité et prise en charge des fonctionnalités avancées.




