Page suivantePage pr�c�denteTable des mati�res

7. Configurer les services d'impression

La configuration minimale pour un syst�me d'impression permet de mettre des fichiers en file d'impression puis de les imprimer. Il ne pr�te aucune attention au fait que votre imprimante puisse les imprimer (les comprendre m�me) et ne vous permettra pas d'imprimer des choses extraordinaires. N�anmoins, c'est un premier pas.

7.1 Le fichier /etc/printcap

Le fichier /etc/printcap d�crit toutes les imprimantes que votre syst�me doit conna�tre. Il peut �tre modifi� avec votre �diteur pr�f�r�, doit appartenir � root et avoir les droits suivants:

 -rw-r--r--   1 root     system        164 Oct 25 21:23 /etc/printcap

Le contenu du fichier semble assez incompr�hensible � premi�re vue. Il respecte effectivement une syntaxe particuli�re et malgr� les apparences, assez simple lorsque l'on conna�t ! Il n'y a pas toujours de manuels concernant ce fichier, et cela complique un peu les choses. Un petit conseil en passant : essayez, dans la mesure du possible de rendre votre fichier le plus lisible possible, avec des commentaires. Vous pouvez consulter les pages du manuel en ligne concernant printcap(5) (ou empressez-vous de les r�cup�rer si vous ne les avez pas). Plus loin sont d�crits les param�tres importants.

Une entr�e de printcap d�crit une imprimante, c'est-�-dire une correspondance nom logique - imprimante physique, puis d�crit la fa�on de transmettre les donn�es. Par exemple, une entr�e va d�crire le p�riph�rique physique � utiliser, le r�pertoire de spool, les traitements � effectuer sur les donn�es avant impression, ou encore le r�pertoire dans lequel seront notifi�es les erreurs. Vous pouvez aussi limiter la quantit� de donn�es pour un job, ou m�me limiter l'acc�s d'une imprimante � une classe d'utilisateurs. Vous trouverez dans la partie suivante la description des champs.

Il est tout � fait possible d'avoir plusieurs entr�es d�crivant diff�rentes fa�ons d'envoyer des donn�es � une m�me imprimante physique. Par exemple, une imprimante physique peut supporter les formats HP LaserJet et PostScript, en fonction de la s�quence de caract�res envoy�e au d�but d'un travail. Vous d�finirez donc deux entr�es, l'une permettant de traiter le format HP, l'autre le format PostScript. Les programmes g�n�rant des donn�es ``HP'' les enverront � l'imprimante HP, ceux g�n�rant des donn�es PostScript les enverront � l'imprimante PostScript. Toutes les deux repr�sentent la m�me imprimante physique.

Les programmes qui modifient les donn�es avant de les envoyer � l'imprimante physique sont des filtres.

Exemple d'entr�e d'un fichier /etc/printcap:

 # LOCAL djet500
 lp|dj|deskjet:\
 :sd=/var/spool/lpd/dj:\
 :mx#0:\
 :lp=/dev/lp0:\
 :sh:

Ceci d�finit une imprimante dont les noms sont lp (par d�faut), dj et deskjet. Les deux derniers sont des alias de la m�me imprimante. La file (on dit tr�s souvent le spool, m�me en fran�ais...) de cette imprimante de trouve dans le r�pertoire /var/spool/lpd/dj (sd signifie spool directory). Le p�riph�rique utilis� est /dev/lp0. La page d'en-t�te est supprim�e (sh) et aucune limite de taille de fichier n'est fix�e (mx)

Notez que la m�me entr�e pourrait s'�crire:

 lp|dj|deskjet:sd=/var/spool/lpd/dj:mx#0:lp=/dev/lp0:sh:

mais c'est moins beau.

Vous pouvez consultez la page de manuel de printcap sur

http://www.picante.com/~gtaylor/pht/man/printcap.html. Toutes les options y sont d�crites.

Tous les champs except�s les noms d'imprimantes sont entour�s de deux-points et rep�r�s par un symbole de deux lettres suivi du signe �gal. Ensuite est indiqu�e la valeur qui peut �tre de type num�rique, bool�enne ou cha�ne de caract�res:

 champ           type            signification
 lp              string          designe le peripherique d'impression
 sd              string          designe le repertoire de spool
 lf              string          designe le fichier de rapport d'erreurs
 if              string          specifie le nom du filtre d'entree
 rm              string          designe le nom d'un site d'impression distant
 rp              string          designe le nom d'une imprimante distante
 sh              booleen         indique s'il faut supprimer les en-tetes
 sf              booleen         indique s'il faut supprimer les sauts de pages
 de fin de travaux
 mx              numerique       indique la taille maximum d'un job
 (en blocs = 1Ko sous linux)

D�tails sur le champ lp

Si vous sp�cifiez /dev/null comme p�riph�rique, tous les traitements se feront, mais tout partira � la poubelle. Ca semble ridicule, mais cela vous permet par exemple de tester une configuration. Lisez le chapitre ``Imprimantes qui ne sont pas de simples p�riph�riques''. Si vous d�signez une imprimante distante avec rp et rm, lp doit contenir :lp=:.

Ne laissez pas ce champ vide en cas d'impression locale, le d�mon signalerait une erreur.

D�tails sur le champ lf

Tout fichier sp�cifi� ici doit exister, sinon le rapport d'erreurs ne se ferait pas.

D�tails sur le champ if

Les filtres d'entr�e sont des utilitaires transformant les donn�es qu'il re�oivent sur leur entr�e standard en un format particulier qu'il sortent sur leur sortie standard. Typiquement, la conversion texte - PostScript d�j� mentionn�e.

Si vous sp�cifiez un filtre d'entr�e, le d�mon n'envoie pas directement les donn�es au p�riph�rique. Il ex�cute le filtre en dirigeant les donn�s sur son entr�e standard et en d�signant le p�riph�rique de sortie comme sortie standard.

D�tails sur les champs rm et rp

Envoyer des donn�es � une imprimante rattach�e � une machine distante est tr�s simple: il suffit de sp�cifier le nom de la machine avec rm et le nom de l'imprimante avec rp. S'assurer que l'entr�e lp est vide. A noter que les donn�es seront d'abord mises dans le spool local avant d'�tre transf�r�es. M�me si votre imprimante est distante, il faudra �galement un spool local.

D�tails sur les champs sh et sf

Les banni�res concernent �ventuellement les utilisations � plusieurs personnes. Elles identifient les jobs.

La suppression de ces banni�res vous permet d'�conomiser du papier. Par contre la gestion des sauts de page sera plus int�ressante, surtout si vous utilisez des traitements de textes qui formatent toujours des pages pleines. Dans ce cas, pas besoin de saut de page suppl�mentaire. Vous auriez sinon une page blanche en fin de chaque travail. Si vous utilisez des listings ou autres documents, ajouter un saut de page garantit que chaque travail commancera bien en d�but de page.

D�tail sur le champ mx

Ce champ permet de limiter la taille des donn�es pour chaque job. Le nombre � sp�cifier est en blocs de BUFSIZE (pardon, de 1 Ko) sous Linux. La valeur 0 rend la taille illimit�e, permettant la soumission de travaux limit�e uniquement � la taille du disque. Notez que la limite concerne la taille des donn�es mises en spool, et non pas les donn�es envoy�es � l'imprimante physique. Si la limite est d�pass�e, le fichier est tronqu� avec l'�mission d'un message disant: lpr: <fichier>: copy file is too large.

Cela peut �tre int�ressant pour des imprimantes physiques en mode texte, notamment si des utilisateurs ou des programmes cr�ent accidentellement des donn�es trop volumineuses.

Si vous manquez de m�moire de masse, pourquoi n'inventeriez-vous pas un filtre qui d�compresse ce qu'il a � envoyer � l'imprimante ? Vous soumettriez alors des donn�es compress�es.


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:43