Les principaux composants que nous utiliserons sont :
CUPS
Le système commun d'impression UNIX (The Common UNIX Printing System) est un système de gestion des impressions et un ensemble de programmes permettant d'utiliser et d'administrer les imprimantes.
Samba
Samba est un logiciel permettant aux ordinateurs sous un autre système que Windows de se comporter en réseau comme des machines sous Windows. En effet, Samba met en œuvre les protocoles de partage de fichiers et d'imprimantes utilisés par Windows.
Pilotes d'imprimantes
LinuxPrinting.org offre le plus grand choix de pilotes d'imprimantes et gère une base de données des imprimantes compatibles Linux. Vous devrez télécharger un pilote d'imprimante pour chaque modèle d'imprimante que vous voudrez utiliser sous Linux. Un pilote d'imprimante est constitué d'un fichier PPD et d'un filtre, ou bien uniquement d'un fichier PPD dans le cas des imprimantes compatibles PostScript.
Tous les programmes et les bibliothèques requis sont inclus en standard dans l'archive Debian. Vous pouvez télécharger et installer ces paquets en utilisant les outils classiques de gestion des paquet de Debian. Ce qui suit est une liste des paquets dont vous aurez besoin :
Le serveur CUPS
Les commandes BSD de CUPS
Les programmes clients de CUPS
Les pilotes d'imprimante de LinuxPrinting.org
Le serveur SMB et CIFS Samba pour UNIX
Le client SMB et CIFS Samba pour UNIX
Ce paquet n'est pas disponible dans la distribution Debian GNU/Linux 3.0 (aussi appelée woody), utilisez plutôt gs
Le logiciel A2PS de GNU
Les commandes suivantes installeront ces logiciels :
apt-get update apt-get install cupsys cupsys-bsd cupsys-client foomatic-bin \ samba smbclient gs-esp a2ps |
Des paquets additionnels peuvent être nécessaires pour certaines imprimantes spécifiques. Par exemple, le paquet hpijs doit être installé pour permettre le fonctionnement correct des imprimantes InkJet de HP.
La commande lpadmin est utilisée pour configurer les imprimantes. L'exemple suivant illustre comment configurer une imprimante laser avec CUPS :
/usr/sbin/lpadmin -p Laser -v parallel:/dev/lp0 -P /root/laser.ppd /usr/bin/enable Laser /usr/sbin/accept Laser /usr/sbin/lpadmin -d Laser |
L'interpréteur de commandes bash a une commande intégrée appelée enable. Les utilisateurs de bash devront donc utiliser le chemin complet de la commande (/usr/bin/enable) pour activer l'imprimante.
La première commande crée une nouvelle imprimante appelée Laser qui est connectée au premier port parallèle et utilise le fichier PPD suivant : /root/laser.ppd.
Laser est alors activée et configurée pour accepter les tâches d'impression avec les commandes enable et accept.
La dernière commande configure Laser comme imprimante par défaut. Des informations plus détaillées concernant la configuration d'imprimante sont disponibles dans la documentation de CUPS.
Les documents sont envoyés dans la file d'attente via la commande lpr ou lp suivie du nom de fichier. Vous pouvez voir la file d'attente et consulter le statut de l'imprimante avec les commandes lpstat -o et lpstat -p. Pour annuler une impression, utilisez la commande cancel ou lprm suivie du numéro identifiant l'impression.
Le serveur d'impression CUPS est appelé cupsd. Il convertit des documents vers le format PostScript, puis les convertit dans un format natif compréhensible par l'imprimante (voir le schéma de la figure 1, « Imprimer en local »). Les imprimantes qui ne comprennent pas le format PostScript utilisent un format tramé (de matrice de points ou bitmap) pour les documents. Les formats tramés peuvent être beaucoup plus lourds que le PostScript original, et mettront plus de temps à être envoyés à l'imprimante.
Les filtres sont des programmes utilisés pour convertir des documents d'un format vers un autre. Le gestionnaire d'impression CUPS fera de son mieux pour trouver un filtre qui convienne pour les documents que vous lui fournirez. Si aucun filtre adapté n'est installé, vous recevrez un message d'erreur ressemblant à lpr : impossible d'imprimer le fichier : client-erreur-format-document-non-supporté.
Beaucoup d'applications n'offrent pas de de filtres correspondant à leur format de documents. Les documents crées avec ces applications ne peuvent être imprimés que depuis l'application elle-même, à moins d'exporter le document vers un format PostScript ou un autre format standard.