Imprimer
De Diablotins.org.
|
Connecter et utiliser une imprimante.
Imprimer sous FreeBSD est très simple, la ou les imprimantes ( lptx ) sont considérées comme un terminal ASCII.
Mais de nos jours, cette simple utilisation n'a quasiment plus cours et les imprimantes deviennent presque aussi complexes qu'une rotative.
Avant d'utiliser votre imprimante, vous allez devoir choisir votre gestionnaire d'impression, qui va contrôler un spool.
Ce choix va essentiellement dépendre de votre imprimante:
- lpr: c'est le gestionnaire de base du système. Il est simple à mettre en œuvre pour les imprimantes PostScript mais peu adapté aux imprimantes du commerce qui nécessitent un pilote spécifique.
- lprNg: Une nouvelle génération de lpd.
- Cups: Basé sur le protocole IPP, c'est la tentative du logiciel libre d'unifier les gestionnaires d'impression. Il tend à devenir le protocole le plus utilisé.
Sommaire |
Bases
Le système n'intègre que lpr, les autres gestionnaires sont des ports.
Chaque gestionnaire devra gérer un Spool, souvent placé dans /var/spool et liste ses imprimantes dans /etc/printcap.
L'imprimante par défaut étant nommée «lp», je vous conseille donc d'en nommer une ainsi dans ce fichier.
Lpr
Si vous utilisez une imprimante ASCII, Postscript ou tout autre protocole qui soit une succession de commandes ASCII vers l'imprimante, lpr est le moyen le plus simple d'imprimer. Le gestionnaire se contentant de diffuser le contenu ASCII du fichier à imprimer vers l'imprimante.
Si on peut le configurer pour un pilote d'impression propriétaire, la manipulation du fichier de configurer peut vous paraître barbare au premier abord.
Il est composé du démon lpd et de divers outils pour le piloter.
Ajoutez l'entrée suivante dans /etc/rc.conf pour le lancer au démarrage:
lpd_enable="YES"
Un script RC du monde est disponible dans /etc/rc.d/ pour le piloter.
Configurer
Créez simplement une imprimante dans /etc/printcap et définissez en les caractéristiques.
Pour utiliser un pilote d'impression particulier, fichier «.ppd» que vous avez chargé sur un site ou par les ports, il vous faut aussi installer des filtres, scripts qui vont convertir vos documents, PostScript en général, vers le format digéré par ce pilote.
En règle générale, les bannières d'entêtes ne vous sont pas agréables; Utilisez le champ «sh» pour les supprimer.
Locale
Une imprimante connectée sur le port parallèle:
lp|Mon Imprimante Parallèle:\ lp=/dev/lpt0:sh:
Une imprimante connectée sur le port USB:
lp_usb|Mon Imprimante USB:\ lp=/dev/ulpt0:sh:
Réseau
Une imprimante connectée sur réseau, nommée «lp» dans le fichier printcap de la machine 192.168.0.1 où elle est connectée:
lp_distante|Mon Imprimante réseau:\ lp=:\rm=192.168.0.1:\rp=lp:sh:
Les filtres
Obtenez un pilote pour votre imprimante.
Par exemple, le fichier «HP.ppd» pour une HP LaserJet récupéré sur [1].
Choisissez un filtre.
Dans le cas de l'imprimante HP LaserJet 4L, j'ai choisi le port print/foomatic-filters et placé «HP.ppd» dans /etc/foomatics:
lp|Laset Jet 4L|Laser Bureau:\ :lp=/dev/lpt0:\ :sd=/var/spool/lpd/l4:\ :if=/usr/local/bin/foomatic-rip:\ :af=/etc/foomatic/HP.ppd:\ :sh:
Imprimer
Dans la configuration précédente, le fichier doit être de format PostScript. Pour l'imprimer, entrez simplement:
lpr FichierAImprimer.ps
Ou
lpr -Plp_usb FichierAImprimer.ps
Vérifiez:
lpq 1st david 42 FichierAImprimer Impression n° 42 en attente
Ou
lpq -Plp_usb
Annulez l'impression:
lprm 42
ou toutes les impressions:
lprm
Utilisations multiples
Vous pouvez multiplier les entrées pour une même imprimante, chacune correspondant à un filtre en particlier:
lp|Laset Jet 4L|Impression PostScript:\ :lp=/dev/lpt0:sd=/var/spool/lpd/l4:\ :if=/usr/local/bin/foomatic-rip:af=/etc/foomatic/HP.ppd:\ :sh: lpRaw|Laser Sans Filtre|Impression ASCII:\ :lp=/dev/lpt0:sd=/var/spool/lpd/raw
Notez que chaque imprimante décrite doit avoir son propre répertoire de spool.
Cups
Installez le port print/cups.
Ce dernier installe le script RC pour piloter son démon: cupsd.
Ajoutez l'entrée suivante dans /etc/rc.conf pour le lancer au démarrage:
cupsd_enable="YES"
Cups est livré avec une interface Web sur le port 631 qui vous guidera dans sa gestion.
Configurer
Configurez cups dans /usr/local/etc/cups/cupsd.conf. Par défaut, il est utilisable dans un contexte local.
Cups décrit les imprimantes dans /usr/local/etc/printers.
Une fois installé, consultez la documentation du cups.
Ajoutez votre imprimante:
/usr/sbin/lpadmin -p HP -D LaserJet -L Bureau -E -v parallel:/dev/lp0 -m HP.ppd -p est le nom -v est la connexion. -m est le pilote. (par défaut dans /usr/local/etc/cups/ppd/)
Vérifiez que votre imprimante se trouve dans /etc/printcap:
HP|LaserJet|Bureau:rm=localhost:rp=HP:
Vous pouvez aussi utiliser l'interface WEB.
Virtuelle
Le port «print/cups-pdf» va vous permettre d'installer une imprimante virutelle qui va générer des fichiers PDF.
Par défaut, il place les fichiers dans “/var/spool/cups-pdf/utilisateur/”.
Pour mieux retrouver ses fichiers, placez les dans votre espace:
make OUTPUT_DIRECTORY=~/cups-pdf -DFORCE_PKG_REGISTER install clean
Ensuite, ajoutez simplement cette imprimante, avec un pilote GENERIC.
Depuis la version 1.2
Une interface WEB sécurisée est disponible.
Ensuite, un utilisateur et un groupe d'utilisateurs «cups» sont créés.
Il vous faut alors leur affecter les crédits sur les périphériques concernés par l'impression.
Soit, pour ceux qui sont connectés au démarrage de la machine, utiliser /etc/devfs.conf:
own lpt0 cups:cups port parallèle perm lpt0 0666
Ou, pour ceux que l'on connecte à la volée, comme les imprimantes USB, utilisez /etc/devfs.rules:
[system=10] add path 'unlpt*' mode 0660 group cups add path 'ulpt*' mode 0660 group cups
Camoufler
Pour camoufler cups dans le système, installez le port print/cups-lpr et ajoutez les entrées suivantes dans /etc/make.conf:
NO_LPD=true Ne pas construire lpd CUPS_OVERWRITE_BASE=yes Camouflage
Ceci a disparu avec les versions de cups délivrées à partir de la version 1.2.
Réseau
Ajoutez les clients à autoriser dans cupsd.conf sous la rubrique «location»:
<location> # Par défaut Order Deny,Allow Deny From All Allow From 127.0.0.1 # Ajoutez un client Allow From 192.168.0.2 </location>
Lprng
LPRng est un concurrent du précédent bien que plus inspiré de LPD.
Il permet de faire énormément de chose assez complexes pour prendre en compte les spécificités des imprimantes modernes, comme une une impression recto/verso à partir du bac 7 sur 3 feuilles en colonnes.
Installez le port sysutils/LPRng.
Configurer
La configuration est la même que pour LPR qui utilise /etc/printcap.
Mais sa configuraition est étendue à d'autres fichiers:

