Gentoo Logo

Imprimer sous Gentoo

Table des matières :

1.  Gentoo Linux et l'impression

Utiliser le bon outil

Les systèmes GNU/Linux savent très bien gérer les imprimantes. L'outil qui s'occupe de cette tâche est CUPS (Common Unix Printing System). Depuis le début du projet, en 1999, l'installation et la maintenance de CUPS se sont largement améliorées.

Dans ce document, nous verrons comment utiliser CUPS pour installer une imprimante locale et une imprimante réseau. Nous n'entrerons pas vraiment dans les détails car le projet possède une documentation détaillée pour les utilisations avancées.

2.  Configuration du noyau

Introduction

Pour installer une imprimante sur votre système, vous devez savoir de quelle manière celle-ci est connectée à celui-là. Est-ce par un port local, parallèle (LPT) ou USB, ou par un port réseau ? Dans ce dernier cas, est-ce qu'elle utilise le protocole d'impression par Internet (IPP) ou bien le protocole de partage Microsoft Windows (SMB-CIFS) ?

Les prochaines sections de ce chapitre décrivent la configuration minimale nécessaire du noyau. Bien entendu, cela dépend de la façon dont l'imprimante est reliée à votre système. Pour plus de clarté, nous avons séparé les instructions :

Pour configurer le noyau, placez-vous dans le répertoire /usr/src/linux et lancez make menuconfig pour entrer dans la configuration du noyau. Si vous utiliser genkernel pour fabriquer votre noyau, procédez tout de même à ces étapes pour vous assurer que rien n'a été oublié.

Dans les exemples suivants, nous compilerons les pilotes nécessaires dans le noyau et non pas en tant que modules. Cela n'est pas obligatoire ; vous pouvez bien sûr les compiler en modules, mais dans ce cas, n'oubliez pas de les charger.

Maintenant, lisez la section correspondant à votre cas pour vérifier les réglages de votre noyau.

Imprimante locale parallèle (LPT)

Pour compiler le pilote des imprimantes parallèles, il faut activer la prise en charge du port parallèle, ensuite celle du du port PC-style (sauf si vous êtes un utilisateur de station SPARC) et enfin celle des imprimantes parallèles.

Exemple de code 2.1 : activer le support des imprimantes à port parallèle

Device Drivers -->
  <*> Parallel port support
  <*>   PC-style hardware

Device Drivers -->
  Character Devices -->
    <*> Parallel printer support
       [*]      IEEE 1284 transfer modes)

Note : certains utilisateurs devront peut-être activer d'autres options dans la rubrique Parallel port support. Lisez la fonction d'aide (Help) du noyau pour plus d'information.

Voilà. Quittez la configuration du noyau et recompilez-le. Ensuite, n'oubliez pas de copier la nouvelle image dans /boot (en montant /boot auparavant si besoin) et mettez à jour votre gestionnaire de démarrage avant de redémarrer le système.

Maintenant, continuez avec l'installation et la configuration de CUPS.

Imprimante locale USB

Pour activer l'impression par USB, vous avez juste besoin de la prise en charge de l'USB dans le noyau :

Exemple de code 2.2 : activer la prise en charge des imprimantes USB

Device Drivers -->
  USB Support -->
    <*> Support for Host-side USB
    (...)
    --- USB Host Controller Drivers
    (Sélectionnez le pilote HCD utilisé par votre système. 
      Si vous ne le connaissez pas, lancez la commande "lspci -v | grep HCI" depuis un autre terminal)
    <*> EHCI HCD (USB 2.0) support ( or )
    <*> OHCI HCD support           ( or )
    <*> UHCI HCD (most Intel and VIA) support

Voilà. Quittez la configuration du noyau et recompilez-le. Ensuite, n'oubliez pas de copier la nouvelle image dans /boot (en montant /boot auparavant si besoin) et mettez à jour votre gestionnaire de démarrage avant de redémarrer le système.

Maintenant, continuez avec l'installation et la configuration de CUPS.

Imprimante réseau IPP

Pour vous connecter à une imprimante réseau en utilisant le protocole IPP, votre noyau n'a besoin de rien d'autre que le support du réseau. En supposant que vous l'ayez déjà, vous pouvez poursuivre avec l'installation et la configuration de CUPS.

Imprimante réseau Windows (SMB-CIFS)

Votre noyau doit contenir le pilote SMB CIFS :

Exemple de code 2.3 : activer la prise en charge des imprimantes SMB-CIFS

File systems -->
  Network File Systems -->
    <*> SMB file system support (to mount Windows shares etc.)
    <*> CIFS support (advanced network file system for Samba, Windows and other CIFS compliant servers)

Voilà. Quittez la configuration du noyau et recompilez-le. Ensuite, n'oubliez pas de copier la nouvelle image dans /boot (en montant /boot auparavant si besoin) et mettez à jour votre gestionnaire de démarrage avant de redémarrer le système.

Maintenant, continuez avec l'installation et la configuration de CUPS.

3.  Installer et configurer CUPS

Installation

L'installation de CUPS avec Gentoo est un jeu d'enfant. Le paquet de CUPS dispose de quelques fonctionnalités optionnelles qui pourraient vous intéresser. Pour activer ou désactiver une de ces fonctionnalités, utilisez l'option de la variable USE qui lui correspond.

Paramètre USE Impact sur CUPS
dbus Active la prise en charge du bus de messagerie système dbus.
jpeg Ajoute la prise en charge de l'impression des images JPEG.
nls Active la prise en charge des langues. Avec nls activé, CUPS est capable de vous délivrer des message de retour en différentes langues. Vous pouvez donc profiter de CUPS dans votre propre langue.
pam Si vous devez authentifier les travaux d'impression à l'aide d'un module PAM (Pluggable Authentication Modules), ce paramètre activera la prise en charge de PAM par CUPS.
php Active la prise en charge des scripts PHP.
png Ajoute la prise en charge de l'impression des images PNG.
ppds Permet l'utilisation de fichiers PPD (pilotes d'impression) créés automatiquement. Voir Installer le meilleur pilote.
samba Si vous voulez pouvoir partager des imprimantes locales vers des systèmes Windows sur votre réseau en utilisant le protocole SMB-CIFS ou si vous comptez utiliser une imprimante partagée via ce même protocole, vous aurez besoin de la prise en charge de Samba.
slp Dans un environnement organisé, l'imprimante sera peut-être disponible en tant que service. Avec le protocole de localisation de service (Service Location Protocol), vous pouvez facilement trouver et paramétrer un service sur votre système. Activez cette option de la variable USE si votre imprimante est disponible en tant que service ou bien si vous voulez la rendre disponible de cette façon.
ssl Si vous utilisez un système d'authentification distant ou si vous voulez protéger votre vie privée, vous devrez installer la prise en charge de SSL, qui chiffrera les connexions réseaux. La prise en charge de SSL doit être activée par tous les participants de votre réseau.
tiff Ajoute la prise en charge de l'impression des images au format TIFF.
X Vous permet d'ouvrir la page web d'administration de CUPS directement depuis le menu de votre gestionnaire de bureau.

Vérifiez vos options actuelles de la variable USE. Pour modifier certaines valeurs uniquement pour CUPS, ajoutez les options concernées dans le fichier /etc/portage/package.use.

Exemple de code 3.1 : options de la variable USE pour CUPS

# emerge -pv cups
[ebuild N     ] net-print/cups-1.2.6  "X dbus jpeg nls pam png ppds ssl -php -samba -slp -tiff" 0 kB

(Par exemple, pour activer la prise en charge de  Samba par CUPS :)
# nano -w /etc/portage/package.use
net-print/cups samba

Si vous êtes satisfait du résultat, installez CUPS.

Exemple de code 3.2 : installer CUPS

# emerge cups

Important : les utilisateurs qui ont besoin de pouvoir imprimer doivent appartenir au groupe lp. Ajoutez-les (en tant que super utilisateur root) grâce à la commande gpasswd -a username lp.

Si l'imprimante est connectée directement sur votre système, vous devez charger CUPS automatiquement au démarrage. Assurez-vous que l'imprimante est bien reliée et allumée avant de lancer CUPS.

Exemple de code 3.3 : démarrer CUPS automatiquement au démarrage du système

# /etc/init.d/cupsd start
# rc-update add cupsd default

Configuration

La configuration par défaut du serveur CUPS située dans le fichier /etc/cups/cupsd.conf est suffisante pour la majorité des utilisateurs. Cependant, certains devront effectuer quelques modifications.

Les prochaines sections détaillent certaines situations fréquentes :

  • Dans Accès à distance à l'imprimante, nous permettrons à d'autres systèmes d'accéder à l'imprimante reliée à notre station.
  • Dans Administration à distance de CUPS, nous permettrons l'accès à distance à l'interface d'administration depuis d'autres systèmes.
  • Dans Activer le support des pilotes PCL Windows, nous configurerons CUPS pour qu'il supporte les pilotes PCL de Windows. Cela est conseillé si vous voulez que les systèmes Windows puissent utiliser votre imprimante partagée avec Samba car pratiquement tous les pilotes Windows sont PCL.
  • Dans Configurer une imprimante réseau, nous installerons une imprimante partagée par un autre système (pas en tant que partage Windows) sur notre station.

Accès à distance à l'imprimante

Si vous voulez permettre à d'autres systèmes d'accéder à votre imprimante grâce au protocole IPP, vous devez le spécifier explicitement dans le fichier /etc/cups/cupsd.conf. Si vous voulez la partager avec Samba, cette modification n'est pas requise.

Ouvrez /etc/cups/cupsd.conf avec votre éditeur de texte favori et ajoutez-y une ligne Allow pour permettre aux systèmes concernés de pouvoir contacter votre imprimante. Dans l'exemple suivant, nous offrons un accès vers notre imprimante à la machine locale et à n'importe quel système dont l'adresse IP commence par 192.168.0.

Exemple de code 3.4 : autoriser l'accès distant vers votre imprimante

<Location />
Order Allow,Deny
Allow localhost
Allow from 192.168.0.*
</Location>

(Cette information est diffusée aux clients du réseau)
(C'est ce quileur permet de savoir qu'une imprimante est disponible)
BrowseAddress 192.168.0.*:631

Vous devez également spécifier sur quel port CUPS écoute, afin qu'il puisse répondre aux requêtes d'impression de la part des autres machines du réseau.

Exemple de code 3.5 : configurer le port dans /etc/cups/cupsd.conf

Listen *:631
(Vérifiez que « localhost » est bien commenté.)
#Listen localhost:631

Note : si vous utilisez toujours CUPS 1.1 (obsolète), vous devrez utiliser une syntaxe différente :

Exemple de code 3.6 : configurer le port avec CUPS 1.1 (obsolète)

Port 631
(Assurez-vous que les deux lignes suivantes sont bien commentées.)
#Listen 127.0.0.1:631
#Listen localhost:631

Administration à distance de CUPS

Si vous êtes intéressé par l'administration à distance, vous aurez besoin d'autoriser l'accès depuis d'autres systèmes que localhost à votre interface d'administration. Éditez le fichier /etc/cups/cupsd.conf et autorisez explicitement le système désiré. Par exemple, pour autoriser la machine locale ainsi que le système qui possède l'adresse IP 192.168.0.3 :

Exemple de code 3.7 : Autoriser l'accès à distance dans /etc/cups/cupsd.conf

<Location /admin>
(...)
 Encryption Required
 Order allow,deny
 Allow localhost
 Allow 192.168.0.3
</Location>

N'oubliez pas de redémarrer CUPS après avoir fait une modification au fichier /etc/cups/cupsd.conf en lançant la commande /etc/init.d/cupsd restart.

Activer la prise en charge des pilotes PCL de Windows

Les pilotes PCL envoient des données brutes au serveur d'impression. Pour activer ce type d'impression dans CUPS, éditez /usr/share/cups/mime/mime.types et décommentez la ligne application/octet-stream si elle ne l'est pas déjà. Faites de même dans le fichier /usr/share/cups/mime/mime.convs.

Exemple de code 3.8 : activer la prise en charge de l'envoi de données brutes directement aux imprimantes

# vim /usr/share/cups/mime/mime.types
(Décommentez la ligne :)
application/octet-stream

# vim /usr/share/cups/mime/mime.convs
(Décommentez la ligne:)
application/octet-stream     application/vnd.cups-raw    0    -

Après avoir effectuées ces modifications, n'oubliez pas de redémarrer CUPS en lançant la commande /etc/init.d/cupsd restart.

Configurer une imprimante réseau

Si l'imprimante est reliée à un serveur géré par CUPS, vous pouvez facilement configurer votre système pour qu'il utilise cette l'imprimante réseau en modifiant le fichier /etc/cups/client.conf.

Si on suppose que l'imprimante est attachée au système nommé serveurimpression.mondomaine, éditez /etc/cups/client.conf avec votre éditeur de texte favori et renseignez correctement la directive ServerName :

Exemple de code 3.9 : éditer client.conf

# vim /etc/cups/client.conf

(Remplacez serveurimpression.mondomaine par
le nom de votre serveur d'impression :)
ServerName serveurimpression.mondomaine

Vous utiliserez alors l'imprimante qui est configurée par défaut sur ce serveur d'impression. Pour choisir une autre imprimante que celle par défaut, utilisez lpoptions :

Exemple de code 3.10 : changer l'imprimante par défaut

(D'abord, afficher les imprimantes disponibles :)
# lpstat -a
hpljet5p accepting requests since Jan 01 00:00
hpdjet510 accepting requests since Jan 01 00:00

(On choisit la HP LaserJet 5P comme imprimante par défaut :)
# lpoptions -d hpljet5p

4.  Configurer une imprimante

Introduction

Si l'imprimante que vous souhaitez configurer est disponible depuis un autre serveur d'impression (sous CUPS), vous n'avez pas besoin de lire ces informations. Lisez plutôt Installer une imprimante réseau.

Détecter l'imprimante

Si vous avez une imprimante USB ou si votre imprimante à port parallèle était allumée lorsque vous avez démarré votre système Linux, vous pouvez récupérer les informations du noyau qui annonceraient la détection de l'imprimante. Cependant, ceci n'est qu'une simple indication.

Exemple de code 4.1 : récupérer les informations du noyau

(Pour une imprimante à port parallèle :)
$ dmesg | grep -i print
parport0: Printer, Hewlett-Packard HP LaserJet 2100 Series

(Pour une imprimante USB :)
$ lsusb
(...)
Bus 001 Device 007: ID 03f0:1004 Hewlett-Packard DeskJet 970c/970cse

Installer l'imprimante

Pour installer l'imprimante sur votre système, lancez votre navigateur web et aller sur l'adresse http://localhost:631. Vous serez accueilli par l'interface web de CUPS à partir de laquelle vous pourrez exécuter toutes les tâches d'administration.

Note : si vous utilisez une connexion HTTPS pour CUPS, la première fois que vous accéderez à l'interface, le temps d'attente de l'affichage la page peut être très long. Cela est dû au fait que la première requête déclenche la génération des certificats SSL pour CUPS, ce qui peut représenter un travail assez long.

Entrez dans la catégorie Administration et identifiez-vous sur la page en tant qu'administrateur root. Ensuite, une fois sur l'interface principale d'administration, cliquez sur Ajouter imprimante (ou Add Printer). Un nouvel écran vous proposera de lui fournir certains renseignements à propos de cette nouvelle imprimante que vous souhaitez ajouter :

  • Le Nom (ou spooler name), une description courte pour identifier l'imprimante sur votre système. Ce nom ne doit pas contenir d'espace ou de caractère spécial. Par exemple, pour notre HP LaserJet 5P, nous pouvons mettre hpljet5p.
  • L'Emplacement (ou location), une description pour indiquer où se trouve physiquement l'imprimante (par exemple, dans la chambre ou bien dans la cuisine à côté du four à micro-ondes...). C'est utile lorsqu'on gère plusieurs imprimantes.
  • Une Description qui peut être, par exemple, le nom complet du modèle de l'imprimante (comme « HP LaserJet 5P »).

L'écran suivant vous demande derrière quel périphérique se trouve l'imprimante. Un certain choix de périphériques est proposé, voici une liste non exhaustive des plus fréquents :

Périphérique Description
AppSocket/HP JetDirect Ce périphérique spécial permet à des imprimantes réseaux d'être accessibles en passant par une interface HP JetDirect. Seules des imprimantes spécifiques supportent cela.
Internet Printing Protocol (IPP ou HTTP) Utilisez celui-ci pour contacter votre imprimante réseau grâce au protocole IPP, soit directement (IPP), soit au travers de HTTP.
LPD/LPR Host or Printer Choisissez celui-là si l'imprimante réseau est derrière un serveur LPD/LPR.
Parallel Port #1 Ce périphérique désigne le port parallèle de votre système (LPT). Si l'imprimante est automatiquement détectée, son nom sera ajouté à la fin du nom du périphérique.
USB Printer #1 Enfin, le port USB. Le nom de l'imprimante devrait automatiquement être ajouté à la fin du nom du périphérique.

Si vous installez une imprimante réseau, le formulaire vous demandera l'URI de l'imprimante :

  • Un serveur d'impression LPD requiert la syntaxe : lpd://nomduserveur/queue.
  • Une imprimante JP JetDirect requiert la syntaxe : socket://nomdelimprimante.
  • Une imprimante IPP requiert la syntaxe ipp://nomduserveur/printers/nomimprimante ou http://nomduserveur:631/ipp/queue.

Ensuite, sélectionnez le fabricant de l'imprimante puis son modèle. Plusieurs pilotes peuvent être disponibles pour un type d'imprimante donné. Vous pouvez en choisir un de suite ou bien vous rendre sur la liste d'imprimantes de LinuxPrinting.org pour y chercher un bon pilote. Vous pourrez facilement changer le pilote par la suite.

Une fois le pilote choisi, CUPS vous confirmera l'ajout de l'imprimante dans sa base de données. Vous pouvez maintenant aller voir l'interface Administrer les imprimantes, qui se situe dans la catégorie Administration, pour Configurer (votre) imprimante (résolution, format de la page...).

Tester et reconfigurer l'imprimante

Pour vérifier que l'imprimante fonctionne correctement, rendez-vous sur la page d'administration, sélectionnez votre imprimante et cliquez sur Imprimer page test.

Si l'imprimante semble ne pas fonctionner comme il faut, cliquez sur Modifier imprimante pour la reconfigurer. Les mêmes écrans que lors de l'installation apparaîtront et vous pourrez ajuster vos réglages pour améliorer la situation.

Si vous ne savez pas du tout pourquoi votre imprimante ne fonctionne pas, vous pouvez jeter un coup d'œil au fichier /var/log/cups/error_log. Dans l'exemple suivant, nous voyons qu'il s'agit un problème de permission, probablement causé par une directive Allow mal configurée dans /etc/cups/cupsd.conf.

Exemple de code 4.2 : à la recherche des erreurs de CUPS

# tail /var/log/cups/error_log
(...)
E [11/Jun/2005:10:23:28 +0200] [Job 102] Unable to get printer status (client-error-forbidden)!

Installer le meilleur pilote

Plusieurs pilotes d'imprimante existent, il s'agit de trouver le meilleur pour votre imprimante. Consultez la liste d'imprimantes de LinuxPrinting, sélectionnez votre marque et modèle pour savoir quel pilote est recommandé par le site. Par exemple, pour la HP LaserJet 5P, le site recommande le pilote ljet4.

Téléchargez le fichier PPD directement depuis le site, placez-le dans le répertoire /usr/share/cups/model et relancez cups avec la commande /etc/init.d/cupsd restart en tant qu'administrateur root. Le pilote devrait être maintenant reconnu par CUPS dans l'interface web. Reconfigurez votre imprimante avec ce pilote, comme expliqué précédemment.

5.  Utiliser des pilotes d'imprimante spéciaux

Introduction

Quelques imprimantes doivent utiliser un pilote particulier, ne serait-ce que pour utiliser des fonctionnalités spéciales qui ne sont pas disponibles dans la configuration générique du pilote. Ce chapitre traite de certaines de ces imprimantes et de comment nous allons faire pour les faire marcher sous Gentoo Linux.

Nous parlerons des pilotes d'imprimante suivants :

Le pilote Gutenprint

Les pilotes gutenprint sont de haute qualité et libres, gèrent de nombreuses imprimantes Canon, Epson, HP, Lexmark, Sony, Olympus et PCL, prennent en charge CUPS, Ghostscript, The Gimp et encore d'autres applications.

L'arbre Portage de Gentoo contient un ebuild pour ces pilotes gutenprint. Vous n'avez qu'à utiliser emerge pour les installer. Notez que l'ebuild prend en compte un certain nombre d'options de la variable USE (tels que cups et ppds). Activez au moins ces deux options.

Exemple de code 5.1 : installer les pilotes gutenprint

# emerge gutenprint

Lorsqu'emerge a fini l'installation, les pilotes gutenprint sont disponibles dans l'interface web de CUPS.

Le pilote HPLIP

Le projet HPLIP utilise les pilotes d'imprimante hpcups. Il inclut également la gestion des scanners, des fax et des outils pour les équipements multi-fonctions. Pour obtenir le support d'impression, il est recommandé d'utiliser les nouveaux pilotes hpcups, grâce à l'option hpcups de la variable USE. L'ancien pilote hpijs est toujours disponible et sera utilisé si vous compilez hplip avec l'option hpijs de la variable USE.

L'installation par défaut permet de générer dynamiquement les fichiers ppd au moment de l'exécution. Certaines anciennes imprimantes peuvent avoir besoin de fichiers ppd statiques. Si vous rencontrez des problèmes avec l'utilisation de hp-setup, essayez d'activer l'option static-ppds de la variable USE et de recompiler hplip.

Dans le cas des imprimantes USB, net-print/cups doit être compilé avec l'option usb de la variable USE. De cette manière, il utilise l'outil espace utilisateur qui remplace la prise en charge de l'impression USB par le noyau (CONFIG_USB_PRINTER). En cas de difficultés, vous pouvez désactiver l'option usb de la variable USE pour net-print/cups et activer à nouveau la prise en charge par le noyau. Tous les utilisateurs désirant avoir accès à l'imprimante doivent être membres du groupe lp.

Pour être en mesure de configurer une imprimante réseau, net-print/cups doit être compilé avec l'option slp de la variable USE. Avec les versions récentes de net-print/hplip la méthode de recherche des imprimantes réseau est mDNS qui demande à ce que net-print/cups soit compilé avec l'option zeroconf de la variable USE. (Note: cette méthode ne marche pas avec la nouvelle série net-print/cups-1.4 ). Pour prendre en charge l'impression sur une imprimante réseau, net-print/hplip doit être compilé avec l'option snmp de la variable USE.

Exemple de code 5.2 : installer les pilotes hplip

# emerge -vp hplip

These are the packages that would be merged, in order:


Calculating dependencies            ... done!
[ebuild  N    ] net-print/hplip-3.10.9  USE="X hpcups hpijs libnotify qt4 udev-acl
-doc -fax -kde -minimal -parport -policykit -scanner -snmp -static-ppds" 21,307 kB

Total: 1 package (1 new), Size of downloads: 21,307 kB

# emerge hplip
(Assurez-vous que l'imprimante est branchée à l'ordinateur)
# hp-setup
# /etc/init.d/cupsd restart

Lorsqu'emerge aura fini l'installation, l'outil hp-setup tentera de détecter et d'installer les pilotes de votre imprimante sur le système. Une fois cela fait, votre imprimante sera disponible dans l'interface web de CUPS. Lors d'une mise à jour de net-print/hplip vous devriez exécuter la commande hp-setup -r pour supprimer toutes les imprimantes et les reconfigurer.

Le pilote PNM2PPA

PPA est une technologie de Hewlett-Packard qui consiste à faire faire les traitements de bas niveau au système plutôt qu'à l'imprimante, ce qui baisse le coût de l'imprimante en consommant un peu plus de ressources sur la machine.

Si le site LinuxPrinting vous dit que le pilote pnm2ppa est le meilleur choix pour vous, vous devez installer le filtre pnm2ppa sur votre système :

Exemple de code 5.3 : installer le filtre pnm2ppa

# emerge pnm2ppa

Une fois installé, téléchargez le fichier PPD depuis le site Linux Printing et sauvegardez-le dans le répertoire /usr/share/cups/model. Ensuite, configurez votre imprimante en utilisant les instructions déjà mentionnées.

6.  Imprimer depuis ou vers un Microsoft Windows

Note : pour des informations plus détaillées sur le paramétrage de CUPS avec Samba, reportez-vous à notre guide de Samba/CUPS.

Configurer un client Windows pour IPP

Microsoft Windows supporte IPP (Windows 9x et ME doivent être mis à jour). Pour installer sous Windows une imprimante qui est connectée à votre Linux, lancez l'assistant Ajouter une imprimante et sélectionnez Imprimante réseau. Lorsqu'on vous demandera l'adresse, utilisez la syntaxe http://nomduserveur:631/imprimantes/queue.

Assurez-vous que vos machines peuvent accéder à votre imprimante !

Configurer un client Windows pour accéder à une imprimante partagée avec Samba

Pour partager l'imprimante sur le réseau SMB-CIFS, Samba doit être installé et correctement configuré sur votre machine. La manière de procéder pour cela n'est pas du ressort de ce document, mais nous verrons rapidement la configuration de Samba pour les imprimantes partagées.

Ouvrez le fichier /etc/samba/smb.conf avec votre éditeur de texte favori et ajouter-y une section [printers] :

Exemple de code 6.1 : ajouter une section [printers]

[printers]
  comment      = Toutes les imprimantes
  path         = /var/spool/samba
  browseable   = no
  guest ok     = no
  writable     = no
  printable    = yes
  public       = yes
  printer name = hpljet5p

Maintenant, remontez dans le fichier smb.conf jusqu'à ce que vous soyez dans la section [global]. Cherchez les paramètres printcap name et printing et définissez-les à cups :

Exemple de code 6.2 : modifier la section [global]

[global]
  (...)
  printcap name = cups
  printing      = cups

Assurez-vous d'avoir activé la prise en charge des pilotes PCL de Windows par CUPS, puis redémarrez le service smb pour que les modifications deviennent effectives.

Configurer un client Linux pour utiliser un serveur d'impression Windows

Premièrement, assurez-vous que l'imprimante est bien partagée sur le système Windows.

Ensuite, dans l'interface web de CUPS, configurez l'imprimante comme décrit précédemment. Vous noterez que CUPS dispose d'un pilote appelé Windows Printer via SAMBA. Sélectionnez-le et utilisez la syntaxe smb://username:password@workgroup/server/printername ou smb://server/printername pour le champ d'adresse.

7.  Applications liées à l'impression

Introduction

Plusieurs outils sont disponibles pour vous aider à configurer une imprimante, utiliser des filtres supplémentaires, ajouter des fonctionnalités aux possibilités d'impression, etc. Le but de ce chapitre est d'en lister quelques-uns. La liste n'est pas complète et ne décrit pas en détail chaque outil.

Gtk-LP, un outil de configuration d'imprimante en Gtk

Avec Gtk-LP, vous pouvez installer, modifier et configurer votre imprimante à partir d'une application Gtk. Cette dernière utilise CUPS et met également à disposition toutes les possibilités fournies par CUPS. C'est vraiment un outil à essayer si vous n'aimez pas l'interface web de CUPS ou si vous voulez une application indépendante pour vos séquences d'impression quotidiennes.

Pour l'installer, utiliser emerge :

Exemple de code 7.1 : installer Gtk-LP

# emerge gtklp

8.  Résolution de problèmes

Erreur : Impossible de convertir le fichier en un format imprimable

Si vous n'arrivez pas à imprimer un document et si le fichier /var/log/cups/error_log contient cette erreur :

Exemple de code 8.1 : fichier d'erreurs de CUPS

Unable to convert file 0 to printable format

Vous devez réinstaller ghostscript-gpl avec l'option cups de la variable USE. Vous pouvez soit ajouter cups à vos options de USE dans /etc/portage/make.conf, soit l'ajouter uniquement pour ghostscript-gpl comme ci-dessous :

Exemple de code 8.2 : ajouter cups à ghostscript-gpl

# echo "app-text/ghostscript-gpl cups" >> /etc/portage/package.use

Puis relancez emerge ghostscript-gpl. Lorsque c'est terminé, assurez-vous de relancer cupsd.

Exemple de code 8.3 : redémarrer cupsd

# /etc/init.d/cupsd restart


Imprimer

Dernière mise à jour le 25 décembre 2012

La version originale de cette traduction n'est plus maintenue

Résumé : Ce document traite de l'installation et de la maintenance des imprimantes gérées par les systèmes CUPS et Samba. Nous verrons comment installer une imprimante locale, une imprimante réseau ou encore comment utiliser les imprimantes partagées par d'autres systèmes d'exploitation.

Sven Vermeulen
Auteur

Joshua Saddler
Correcteur

Camille Huot
Traducteur

Sébastien Baudru
Traducteur

José Fournier
Traducteur

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.