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.