Traduction hint

parisot.dominique at libertysurf.fr parisot.dominique at libertysurf.fr
Ven 17 Mai 05:18:19 PDT 2002


Salut,

voici une traduction : ma première ;-) 
Elle concerne le hint intitulé inittab

-- 
dOm
Marre de Windows ??? Passez à Linux ...
-------------- section suivante --------------
TITRE :       Ajouter des trucs supplémentaires à inittab
VERSION LFS : 3.0-rc1
AUTEUR :      Laurence Withers <lwithers at lwithers.demon.co.uk>

SYNOPSIS :
	Ajouter des trucs supplémentaires à inittab vous donne accès à des possibilités
	comme ajouter plus de consoles (si 6 ne sont pas suffisantes !), l'affichage sur
	des terminaux virtuels de fichiers log, ou de programmes comme `top'.

GUIDE :


0. Contenu
-----------

    1. Introduction
    2. Ajouter des consoles supplémentaires
    3. Fichiers log sur un terminal virtuel
    4. Top sur un terminal virtuel
    5. Caveats

    Appendice A. Explication du format de /etc/inittab



1. Introduction
---------------

    En éditant /etc/inittab, vous pouvez accomplir toutes sortes de choses 
astucieuses et utiles. Ce fichier est la configuration de `init', l'utilitaire
qui contrôle le démarrage, l'arrêt, etc. ; consultez le livre LFS pour plus 
de détails, et examinez aussi le fichier /etc/inittab.

    Dans ce guide, je vais vous montrer comment ajouter des consoles supplémentaires
(si, comme moi, vous appréciez d'avoir au moins dix consoles disponibles), comment
avoir un terminal virtuel qui affiche un fichier log, et comment exécuter `top' (ou 
tout autre utilitaire que vous désirez) sur un terminal virtuel.

    Remarquez que les terminaux virtuels utilisés dans ce guide, /dev/tty1 à 
/dev/tty12, correspondent aux écrans que vous obtenez en appuyant sur Alt+F1 à
Alt+F12. Si un terminal virtuel n'est pas utilisé, alors il n'apparaitra pas lorsque
vous appuyez sur ses touches ; il n'apparaitra que les données qui lui ont été envoyées.


2. Ajouter des consoles supplémentaires
---------------------------------------

    Avec le fichier /etc/inittab qui est fournit avec LFS, vous avez six consoles (de
VT 1 à 6). Tout d'abord, décidez quels terminaux vous désirez faire fonctionner.
Ensuite, ajoutez la ligne suivante au fichier /etc/inittab pour chaque console 
que vous voulez :

XXX:2345:respawn:/sbin/agetty ttyXXX 9600

(remplacez XXX par le numéro du terminal virtuel, 7-12).

    Si, comme moi, vous ne voulez pas que d'autres personnes puissent voir ce qui
était sur l'écran après que vous ayez terminé d'utiliser votre console, vous pouvez
utiliser quelques ruses pour effacer l'écran après vous être déconnecté. 
Tout d'abord, créez un script :

# cat >/sbin/agetty-init.sh <<EOF
>#!/bin/sh
># /sbin/agetty-init.sh
>#  pour nettoyer l'écran après vous être déconnecté
>
>/sbin/agetty tty$1 9600
>clear >/dev/tty$1
>
>EOF
# chmod +x /sbin/agetty-init.sh

    Ensuite, dans /etc/inittab, changez les lignes concernant les consoles. 
Elles sont dans le même format qu'au-dessus. Le fichier LFS orignial contient 
des entrées commencant par 1:, 2:, 3:, 4:, 5: et 6: (pas l1: et al.; c'est 
quelque chose d'autre). Trouvez chacune de ces lignes et supprimez-les. 
Maintenant ajoutez la ligne suivante pour chaque console que vous voulez :

cXXX:2345:respawn:/sbin/agetty-init.sh XXX

(remplacez XXX par le numéro du terminal virtuel que vous voulez, de 1 à 12).

    Souvenez-vous que agetty va imprimer le contenu de /etc/issue sur l'écran
avant son invitation de connexion ; vous pouvez utiliser ceci pour personnaliser
l'apparence de votre écran de connexion. De plus, vous pouvez ajouter n'importe
quelle autre action dans `agetty-init.sh' (avant ou après que agetty soit appelé) ;
ceci vous permet de personnaliser votre système encore plus.

3. Fichiers de log sur un terminal virtuel
-----------------------------------------

    Si vous voulez qu'un terminal virtuel affiche le contenu d'un fichier log, vous
pouvez utiliser un entrée simple dans /etc/inittab. Ajoutez une ligne comme ceci :

log:2345:respawn:/usr/bin/tail -f --retry /var/log/sys.log >/dev/ttyXXX

    Remplacez les caractères `log:' du début par n'importe quelle suite de quatre
caractères que vous désirez ; tant que chaque indentifiant est unique, il n'y a pas
de problèmes. Par exemple, vous pouvez utiliser `9x3d:', si cela signifie 
quelque chose pour vous. Remplacez le nom de fichier à la fin par le nom du fichier
log que vous désirez examiner. Enfin, remplacez XXX par le numéro du terminal virtuel
sur lequel vous désirez faire la sortie.


4. Top sur un terminal virtuel
------------------------------

    `top' est un programme qui est sympa de faire fonctionner sur un terminal virtuel 
séparé ! Cela vous permet de voir quels processus sont en cours d'exécution, quel est 
l'utilisation du CPU, combien de mémoire est utilisé, et bien d'autres choses. Pour le 
faire fonctionner sur un terminal virtuel séparé, utilisez la ligne suivante dans 
/etc/inittab :

top:2345:respawn:/usr/bin/top d 1 s S c >/dev/ttyXXX </dev/ttyXXX

    Remplacez XXX par le numéro du terminal virtuel que vous désirez utiliser. Remarquez
aussi le paramètre que nous passons à top : `d 1' définit le temps écoulé entre deux 
mises à jour à une seconde (changez cette valeur si vous le désirez), `s' exécute top en
mode sécurisé (voir la page de manuel man pour plus de détails ; simplement, cela empêche
n'importe quel utilisateur de tuer des processus), et `S c' sont des options esthétiques.
Voir `man top' pour plus d'informations.

    Vous pouvez utiliser ce type de ligne pour ajouter n'importe quel programme que vous
voulez sur un terminal virtuel. Remarquez que vous devez rediriger à la fois l'entrée et
la sortie pour faire fonctionner un programme interactif comme top.


5. Caveats
----------

    Si vous désirez essayer quelque chose de plus ambitieux, lisez s'il vous plait 
les informations de l'Appendice A, ci-dessous. Elle explique le format de 
/etc/inittab, ce qui vous permettra de réduire les risques de faire une erreur.
De plus, avant de commencer à triturer votre /etc/inittab, vous avez certainement
interêt à avoir un moyen de secours pour démarrer votre système (par exemple,
j'utilise une vieille distribution SuSE 6.3 démarrable depuis le CD-ROM).

    Bien que rien de désastreux ne puisse arriver avec ce genre de
manipulation, quelquefois vos terminaux virtuels peuvent être perturbés
par des programmes comme X et n'importe quel type de gestionnaire de connexion
graphique. Je ne sais pas quand cela se produit, ni comment s'en prévenir ou
corriger le problème, mais cela ne m'a jamais pausé aucun problème. Remarquez,
cependant, que je n'utilise pas une connexion en mode graphique.

    
    Jurgen Nagel a rapporté que ses consoles supplémentaires ne fonctionnent
pas correctement. Il a résolu cela en ajoutant un champ d'initialisation à 
l'appel de agetty :

c2:2345:respawn:/sbin/agetty -I  tty2 9600

    L'initialisation est <escape>[H<escape>[J et cela résout son problème.
Je n'ai pas pû reproduire cela sur aucun de mes systèmes mais si vous avez
ce problème, ajoutez juste le parametre -I à l'appel à agetty. Merci Jurgen !


Appendice A. Explication du format de /etc/inittab
--------------------------------------------------

    Pour cette version d'init utilisée dans LFS, le fichier /etc/inittab
doit avoir le format suivant :

identifiant:niveauxExécution:typeAction:commande

`identifiant' est un identifiant unique, de 1 à 4 caractères. Assurez-vous
que vous ne dupliquez pas d'identifiants dans votre fichier. L'identifiant
n'a pas de d'influence sur le fonctionnement d'init ; les noms n'ont
pas à avoir de significations précises.

`niveauxExécution' est une liste des niveaux d'exécution dans les quels cette ligne
doit être activée. Consultez `man init' pour plus de détails sur les niveaux
d'exécution.

`typeAction' doit avoir l'une des valeurs suivantes :
    respawn         relance la commande à chaque fois qu'elle se termine.
    wait            lance la commande lors de l'entrée dans le niveau d'exécution
                    et attend qu'elle se finisse avant de passer à la suite.
    once            lance la commande une fois entré dans le niveau d'exécution.
    boot            exécuté seulement lors du démarrage du système (ignore le
                    niveau d'exécution)
    bootwait        comme précédemment, et attend sa fin.
    off             ignore cette entrée
    initdefault     cela spécifie actuellement quel niveau d'exécution est considéré
                    comme le niveau par défaut sur le système (habituellement 3)
    sysinit         exécuté lors du démarrage, avant boot/bootwait
    ctrlaltdel      ce qui sera fait lorsque l'utilisateur appuie sur ctrl+alt+del

    Il y a quelques valeurs d'action en plus, mais elles sont plus avancées. Plus de 
détails sont disponibles (voir `man inittab' et aussi `man init').

`commande' est la ligne de commande à exécuter. Remarquez que la variable d'environnement
PATH n'est pas définie : vous devez spécifier le chemin complet pour chaque fichier 
exécutable.




More information about the lfs-traducfr mailing list