Imprimante scanner Linux avec Ubuntu, CUPS et SANE

Quand une imprimante ou un scanner sous Linux cesse de fonctionner, le problème vient rarement d’une seule cause. Sur Ubuntu ou Linux Mint, on voit souvent un périphérique visible mais inutilisable, un scanner détecté mais sans numérisation, une imprimante réseau introuvable, ou au contraire une imprimante ajoutée deux fois à cause d’un mauvais pilote. Avec Epson et Canon, le vrai dépannage consiste à distinguer quatre couches : la connexion physique ou réseau, CUPS pour l’impression, SANE pour la numérisation, puis le choix entre pilote constructeur, driverless ou IPP Everywhere. Tant qu’on ne sépare pas ces couches, on réinstalle au hasard et on perd du temps.

  1. Vérifie d’abord si le périphérique est vu en USB ou sur le réseau.
  2. Contrôle ensuite CUPS avec lpstat et l’interface web http://localhost:631.
  3. Teste la détection scanner avec scanimage -L et sane-find-scanner.
  4. Évite d’empiler plusieurs pilotes Canon ou Epson si l’imprimante supporte déjà driverless.
  5. Si impression et scanner échouent tous les deux, remonte d’abord au câble, au Wi-Fi ou à l’adresse IP.
  6. Si seul le scanner échoue, concentre-toi sur SANE, sane-airscan et les permissions.

Pourquoi Epson ou Canon se bloque souvent sous Linux

Sous Linux, une multifonction peut échouer à plusieurs niveaux différents :

  • USB instable ou câble défectueux ;
  • Wi-Fi perdu après redémarrage de la box ;
  • périphérique ajouté avec un mauvais protocole ;
  • ancien pilote Canon/Epson qui entre en conflit avec le mode driverless ;
  • service CUPS arrêté ou file d’impression bloquée ;
  • couche SANE absente pour le scanner ;
  • droits utilisateur incomplets sur certains périphériques ;
  • appareil ancien mal supporté sans paquet constructeur.

Le piège classique : l’utilisateur voit l’imprimante dans les paramètres et pense que tout est correctement installé. En réalité, Linux peut afficher une imprimante détectée mais configurée sur le mauvais backend, avec une mauvaise URI ou un pilote générique inadapté. C’est encore plus fréquent quand une Epson ou une Canon fonctionne un jour en USB, puis plus le lendemain en Wi-Fi.

Sous Linux, il faut toujours distinguer impression et numérisation. Une imprimante peut imprimer via CUPS tout en restant invisible dans les outils scanner, ou l’inverse.

Imprimante scanner Linux : comment identifier le vrai point de blocage

Avant d’installer quoi que ce soit, fais un diagnostic rapide et note précisément le symptôme.

SymptômeCause probablePremier test utile
Rien n’apparaît quand tu branches l’USBcâble, port, alimentationlsusb
Imprimante visible mais impossible d’imprimerCUPS, file d’attente, mauvais pilotelpstat -p -d
Scanner absent dans Simple ScanSANE, backend, réseauscanimage -L
Imprimante réseau introuvableIP changée, Wi-Fi, mDNSping, lpinfo -v
Scanner OK mais impression KOCUPS seulementsystemctl status cups
Impression OK mais scan KOSANE ou sane-airscansane-find-scanner

1. Vérifier l’USB ou le réseau avant tout

Pour une imprimante USB :

lsusb

Tu dois voir une ligne Epson, Canon ou le chipset USB correspondant. Si rien n’apparaît, inutile de toucher à CUPS pour l’instant :

  • change de câble ;
  • teste un autre port USB ;
  • évite les hubs passifs ;
  • redémarre l’imprimante ;
  • teste sur un autre PC si possible.

Pour une imprimante réseau, récupère son adresse IP depuis l’écran de l’appareil ou la box, puis teste :

ping -c 4 192.168.1.50

Si le ping échoue, ton problème est d’abord réseau : Wi-Fi perdu, mauvaise bande, IP changée, ou imprimante sur un autre VLAN/réseau invité.

2. Vérifier si Linux voit les backends d’impression

La commande suivante est très utile :

lpinfo -v

Tu dois y voir selon les cas :

  • usb://...
  • ipp://...
  • ipps://...
  • parfois dnssd://...
  • parfois airprint://...

Si ton imprimante Epson ou Canon apparaît en driverless, c’est souvent le meilleur choix sur du matériel récent. Beaucoup de pannes viennent d’un ancien pilote constructeur installé alors que le périphérique fonctionne mieux via IPP Everywhere.

3. Vérifier l’état de CUPS

systemctl status cups --no-pager
lpstat -p -d

Le service doit être actif. lpstat doit aussi montrer une imprimante prête ou au moins une destination par défaut cohérente.

Si CUPS est arrêté ou dans un état incohérent :

sudo systemctl restart cups
sudo systemctl enable cups

4. Vérifier le scanner avec SANE

scanimage -L
sane-find-scanner
  • sane-find-scanner détecte souvent le périphérique matériel.
  • scanimage -L vérifie si le backend SANE sait vraiment l’utiliser.

Si sane-find-scanner voit quelque chose mais pas scanimage -L, le souci est presque toujours logiciel : paquet manquant, backend absent, ou conflit entre méthodes de détection.

Les causes les plus fréquentes avec Epson et Canon sous Ubuntu ou Linux Mint

Mauvais choix de pilote ou conflit avec le mode driverless

Sur des imprimantes assez récentes, Linux détecte souvent correctement le périphérique via IPP, AirPrint ou driverless. Installer en plus un vieux paquet constructeur peut casser une configuration qui fonctionnait déjà.

Cas typiques :

  • Canon ajoutée à la fois en usb:// et en ipp:// ;
  • Epson présente deux fois, une entrée marche, l’autre non ;
  • pilote constructeur installé pour l’impression mais scanner non géré ;
  • file bloquée parce que le mauvais PPD est utilisé.

Dans le doute, mieux vaut souvent :

  1. supprimer les files d’impression en doublon ;
  2. garder une seule configuration ;
  3. privilégier driverless si l’imprimante est récente ;
  4. tester ensuite la page de test.

Service CUPS bloqué ou file d’impression corrompue

Si une erreur ancienne reste dans la file, l’imprimante semble “cassée” alors que seul un job bloque tout.

Commandes utiles :

lpstat -W not-completed
cancel -a
sudo systemctl restart cups

Ensuite, ouvre aussi l’interface web CUPS :

http://localhost:631

Tu peux y vérifier :

  • la destination réellement utilisée ;
  • l’état de la file ;
  • les erreurs de filtre ;
  • les doublons de périphériques.

Scanner absent parce que SANE ou airscan n’est pas installé

Sur beaucoup de multifonctions Wi-Fi, l’impression passe mais pas le scanner. Le bon réflexe est d’installer les outils de base :

sudo apt update
sudo apt install cups sane-utils simple-scan sane-airscan ipp-usb printer-driver-gutenprint

Tous ces paquets ne sont pas toujours nécessaires, mais ce socle couvre beaucoup de cas courants :

  • cups pour l’impression ;
  • sane-utils et simple-scan pour le scan ;
  • sane-airscan pour les scanners réseau modernes ;
  • ipp-usb pour certains périphériques USB récents exposés en IPP ;
  • printer-driver-gutenprint pour du support additionnel sur certains modèles.

Imprimante réseau détectée puis perdue

Quand l’imprimante fonctionne un jour puis disparaît, pense à :

  • IP dynamique qui a changé ;
  • reconnexion au mauvais Wi-Fi ;
  • box redémarrée ;
  • résolution mDNS capricieuse ;
  • veille réseau de l’imprimante.

Dans ce cas, une configuration sur IP fixe ou réservation DHCP aide souvent plus qu’une réinstallation du pilote.

Solutions détaillées étape par étape

Étape 1 : nettoyer l’existant avant de réinstaller

Liste les imprimantes connues :

lpstat -e

Si tu vois plusieurs variantes du même périphérique Epson ou Canon, supprime les files inutiles depuis http://localhost:631 ou avec lpadmin quand tu sais exactement ce que tu fais.

But : une seule file d’impression propre, pas trois doublons qui se mélangent.

Étape 2 : tester le mode driverless avant le pilote constructeur

Pour une imprimante récente connectée au réseau, commence par la méthode la plus simple : ajout via les paramètres système ou CUPS en choisissant une entrée driverless, IPP ou AirPrint.

Si une page de test sort correctement, inutile d’ajouter un pilote plus lourd.

Cette approche est souvent la meilleure sur :

  • Ubuntu récent ;
  • Linux Mint récent ;
  • imprimantes multifonctions Wi-Fi ;
  • modèles Canon ou Epson compatibles IPP Everywhere.

Étape 3 : si nécessaire, installer les paquets utiles

sudo apt update
sudo apt install cups cups-client printer-driver-gutenprint sane-utils simple-scan sane-airscan ipp-usb

Puis redémarre les services principaux :

sudo systemctl restart cups

Déconnecte/reconnecte ensuite l’USB ou redémarre l’imprimante réseau.

Étape 4 : tester l’impression séparément du scan

Page de test et infos d’état :

lpstat -p -d
lpq

Si l’impression fonctionne mais pas le scan, ne touche plus à CUPS. Passe directement au diagnostic SANE.

Étape 5 : tester le scanner proprement

scanimage -L

Si rien n’apparaît :

sane-find-scanner

Interprétation simple :

  • rien dans les deux : souci USB/réseau ou appareil non vu ;
  • vu par sane-find-scanner mais pas scanimage -L : backend SANE manquant ;
  • vu dans scanimage -L mais pas dans Simple Scan : souci côté application ou session utilisateur.

Étape 6 : vérifier les journaux quand CUPS refuse d’imprimer

journalctl -u cups -n 100 --no-pager

Cherche surtout :

  • filtres manquants ;
  • backend inaccessible ;
  • permissions ;
  • URI invalide ;
  • erreurs de conversion ou PPD.

Si tu vois des erreurs répétées sur une file ancienne, supprime cette file et recrée-la proprement au lieu d’empiler les correctifs.

Étape 7 : cas fréquent Canon ou Epson anciens

Sur du matériel plus ancien, le mode driverless ne suffit pas toujours. Dans ce cas, il faut parfois :

  • utiliser le paquet constructeur adapté ;
  • récupérer le pilote Debian/Ubuntu compatible ;
  • vérifier si le scanner dépend d’un paquet séparé ;
  • éviter les pilotes trop vieux non maintenus.

Le bon ordre reste :

  1. tester d’abord le support natif ;
  2. n’installer le constructeur que si nécessaire ;
  3. ne conserver qu’une seule méthode fonctionnelle.

Que faire si l’imprimante Canon ou Epson est détectée mais n’imprime pas

Quand Linux voit le périphérique mais qu’aucune page ne sort, vérifie :

  • la bonne destination par défaut ;
  • le protocole choisi (ipp, ipps, usb) ;
  • une file bloquée ;
  • un faux statut hors ligne ;
  • un pilote générique trop limité.

Checklist rapide :

  • l’imprimante répond au ping si elle est en réseau
  • systemctl status cups est actif
  • lpstat -p -d montre la bonne file
  • pas de file dupliquée pour le même modèle
  • une page de test a été lancée après nettoyage de la queue
  • le protocole driverless a été essayé si disponible

Que faire si le scanner ne fonctionne pas mais l’imprimante oui

C’est un cas très courant sur Linux. L’impression et la numérisation ne partagent pas la même pile logicielle.

Commence par :

sudo apt install sane-utils simple-scan sane-airscan
scanimage -L

Si le scanner est en réseau et compatible AirScan/eSCL, sane-airscan débloque souvent la situation sans pilote exotique. À l’inverse, sur un vieux modèle USB, il faut parfois un backend constructeur spécifique.

Si plusieurs méthodes de scan coexistent, garde celle qui marche et évite de réinstaller en boucle.

Prévention : éviter que le problème revienne

Pour éviter de recasser une configuration imprimante scanner Linux qui fonctionne enfin :

  • garde une réservation DHCP pour l’imprimante réseau ;
  • note le protocole qui marche vraiment ;
  • évite d’installer plusieurs pilotes “pour tester” ;
  • ne laisse pas plusieurs files CUPS du même appareil ;
  • imprime une page de test après chaque changement majeur ;
  • garde Ubuntu/Linux Mint à jour, mais sans multiplier les dépôts non officiels pour les pilotes.

Un autre bon réflexe : si un modèle récent fonctionne en driverless, n’ajoute pas ensuite un ancien pilote téléchargé au hasard. C’est une cause classique de régression.

Checklist récapitulative

  • vérifier USB avec lsusb ou réseau avec ping
  • lister les backends avec lpinfo -v
  • contrôler CUPS avec systemctl status cups et lpstat -p -d
  • vider les jobs bloqués avec cancel -a
  • tester le scanner avec scanimage -L
  • installer sane-airscan si le scan réseau échoue
  • supprimer les doublons Epson/Canon dans CUPS
  • préférer driverless ou IPP si le matériel le supporte
  • tester une page de test avant de conclure à une panne matérielle

Erreurs courantes à éviter

Installer trois pilotes différents pour le même périphérique

Plusieurs utilisateurs ajoutent une Epson en USB, puis en Wi-Fi, puis avec un paquet constructeur. Résultat : trois files, aucune certitude sur celle utilisée, et des erreurs difficiles à lire.

Confondre panne scanner et panne imprimante

Si l’impression fonctionne, le problème n’est probablement plus CUPS. Ne repars pas de zéro côté imprimante sans raison.

Ignorer l’adresse IP réelle de l’imprimante réseau

Une IP qui change casse beaucoup de configurations. Réinstaller le pilote ne règle pas ce cas si l’URI pointe toujours vers l’ancienne adresse.

Forcer un pilote constructeur alors que driverless marche déjà

Sur des Canon ou Epson récentes, le support natif Linux est parfois plus stable que l’ancien package du fabricant.

FAQ

Pourquoi mon imprimante Canon fonctionne sur Windows mais pas sur Ubuntu ?

Parce que Windows embarque souvent le bon pilote ou le télécharge automatiquement, alors que sous Ubuntu il faut parfois choisir la bonne méthode : driverless, IPP, USB, ou paquet constructeur. Le problème n’est pas forcément Linux lui-même, mais une configuration moins tolérante aux doublons et aux mauvais protocoles.

Comment savoir si le problème vient de CUPS ou de SANE ?

Si l’impression échoue, regarde d’abord CUPS avec lpstat, lpq et systemctl status cups. Si l’impression fonctionne mais pas le scanner, bascule sur SANE avec scanimage -L et sane-find-scanner. Les deux couches sont distinctes.

Faut-il installer les pilotes Epson ou Canon manuellement ?

Pas toujours. Sur beaucoup de modèles récents, driverless ou IPP Everywhere suffit. Installe un pilote constructeur seulement si le support natif ne fonctionne pas ou si une fonction précise manque, surtout pour certains scanners anciens.

Pourquoi Simple Scan n’affiche aucun périphérique alors que l’imprimante est bien installée ?

Parce que Simple Scan dépend de SANE, pas de CUPS. Ton imprimante peut être parfaitement configurée pour imprimer et pourtant le scanner rester invisible si sane-utils ou sane-airscan manque, ou si le backend ne reconnaît pas le modèle.

Que faire si l’imprimante réseau disparaît régulièrement ?

Attribue-lui une IP stable via réservation DHCP, vérifie qu’elle reste sur le bon Wi-Fi, puis mets à jour la file CUPS si l’ancienne URI pointe vers une autre adresse. C’est plus efficace qu’une simple réinstallation du poste.

Linux Mint et Ubuntu se comportent-ils différemment pour ce type de panne ?

La logique de fond reste très proche, car Linux Mint repose sur Ubuntu. L’interface change un peu, mais les commandes de diagnostic, CUPS et SANE restent pratiquement les mêmes pour ce dépannage.

Conclusion

Quand une imprimante scanner Linux ne fonctionne plus, le plus important est d’éviter la réinstallation au hasard. Vérifie d’abord la connexion, puis CUPS pour l’impression, ensuite SANE pour la numérisation, et enfin le choix entre driverless, IPP ou pilote constructeur. Sur Epson et Canon, cette méthode évite la majorité des faux diagnostics et permet souvent de remettre le périphérique en service sans tout reconstruire.


Besoin d’aide ? Si malgré ces étapes ton imprimante ou ton scanner reste inutilisable sous Linux, contacte-moi pour un diagnostic à distance ou sur site (Montpellier / Île-de-France). Tu peux aussi consulter Imprimante non détectée, Imprimante hors ligne ou Migrer Windows vers Linux.