Les différences qui existent entre les nombreuses distributions font
que l'on ne peut ici être exhaustif. Je pense que beaucoup de gens
utilisent maintenant les distributions type slackware
et on peut
raisonnablement s'appuyer sur cet exemple.
Pensez à inclure lpd
dans le fichier rc.local après le
démarrage éventuel de syslogd
. Voici les fichiers
tels que l'on peut les trouver:
-r-sr-xr-x 1 root lp 9308 Aug 23 21:45 /usr/bin/lpq*
-r-sr-xr-x 1 root lp 10056 Aug 23 21:45 /usr/bin/lpr*
-r-sr-xr-x 1 root lp 8900 Aug 23 21:45 /usr/bin/lprm*
-r-x------ 1 root lp 1596 Aug 23 21:45 /usr/bin/lptest*
-r-xr-sr-x 1 root lp 17160 Aug 23 21:45 /usr/sbin/lpc*
-rwxr--r-- 1 root lp 34072 Aug 23 21:45 /usr/sbin/lpd*
et pour chaque répertoire de spool:
/usr/spool/lp/lpr0/
total 5
drwxr-xr-x 2 root lp 1024 Feb 12 15:15 ./
drwxr-xr-x 3 root lp 1024 Sep 2 1993 ../
-rw-r----x 1 root lp 4 Feb 12 15:15 .seq
-rw-r--r-- 1 root lp 3 Feb 13 20:46 lock
-rw-rw-r-- 1 root root 27 Feb 12 15:15 status
Ces trois fichiers sont créés par lpr
et
lpd
. Ils peuvent être absents si vous ne les avez encore
jamais lancés. Avec d'anciennes versions il fallait exécuter
touch
sur ces fichiers ou bien modifier leurs droits. Les bugs
concernant ces fichiers ont maintenant été corrigés
dans les versions récentes.
Il est à noter également que le groupe d'appartenance
était daemon
avec d'anciennes versions, et est maintenant
lp
.
Ne soyez pas surpris de trouver des choses légèrement différentes sur votre système. D'un autre côté, si quelque chose ne fonctionne pas, pensez à soupçonner ces droits avant d'affoler nos boîtes aux lettres (Si vous saviez le nombre de courriers électroniques reçus et dont la solution se trouve là !).
On peut trouver le programme lpr
avec ou sans le bit setuid(root). En
fait ce n'est pas si évident que cela. Tout dépend des
droits et permissions des répertoires de spool. Autant que je sache,
il y a une totale sécurité avec lpr
, même si il
est setuid(root). Donc, à la limite, positionnez le bit pour ne pas
vous soucier des droits d'accès au répertoire de spool.
Vous êtes libre de mettre les binaires dans les répertoires
que vous voulez, bien qu'ils se trouvent couramment dans /usr/bin
ou /usr/sbin
. (lpc
et lpd
peuvent se trouver
par exemple dans /etc
). Certaines commandes étant
intéressantes pour tout utilisateur, il est bon de les laisser aux
endroits habituels.
Attention toutefois, car les gens qui conçoivent les distributions sont également libres de choisir. Pensez à supprimer les anciennes versions, si vous changez de distribution.
L'emplacement du fichier de verrouillage principal du démon lpd
(lpd.lock
), est fixé en dur dans le code. Il se trouve
dans /var/spool/lpd/lpd.lock
. Donc, vous devrez prévoir un
répertoire /var/spool/lpd
même si votre
répertoire de spool est différent. Les binaires anciens
mettaient ce fichier dans /var/spool/lpd.lock
/
Typiquement, chez moi, on trouve
/var/spool/lpd/
drwxr-xr-x 4 root lp 1024 Aug 18 1994 ./
drwxr-xr-x 18 root root 1024 Aug 17 1994 ../
-rw-r--r-- 1 root root 3 Feb 14 20:12 lpd.lock
/var/spool/lp/lpr0
drwxr-xr-x 2 root lp 1024 Feb 12 15:15 ./
drwxr-xr-x 3 root lp 1024 Sep 2 1993 ../
-rw-r----x 1 root lp 4 Feb 12 15:15 .seq*
-rw-r--r-- 1 root root 3 Feb 14 20:12 lock
-rw-rw-r-- 1 root root 27 Feb 12 15:15 status
Etant donné que l'on jongle en permanence entre /usr
et
/var
, il est clair qu'un lien doit exister entre les deux. Soit
vous définissez vos répertoires dans
/usr/spool/
... et définissez le lien /var
vers
/usr
, soit vous mettez tout sous /var/spool/lpd
... et
définissez le lien /usr/spool
vers /var/spool
.
Si vous avez, comme moi, une partition root (/) et une partition /usr, les
deux cas ne sont pas identiques. Dans le premier, vos fichiers seront
stockés dans la partition de root, /var
etant
créé sous /
, dans l'autre, ce sera dans la partition
/usr
, puisque /usr
est monté. Vous pouvez aussi
avoir un système de fichiers /var
réservé.
Le fichier de configuration principal est /etc/printcap
. Il existe
aussi, pour l'impression distante, les fichiers /etc/hosts.allow
et /etc/hosts.lpd
.
Désormais, le répertoire /etc
est le
répertoire où sont situés les fichiers de
configuration. Vous pouvez choisir de les mettre ailleurs, mais
définissez toujours un lien symbolique de /etc
vers vos
fichiers. Si votre système comporte des binaires qui vont toujours
chercher leur configuration dans /usr/etc
ou /etc/inet
,
ils sont sûrement très anciens et vous gagneriez à
mettre votre système à jour.