Configurer la console Linux

Cette section discute de la configuration du script de démarrage console, initialisant le plan de codage du clavier et la police de la console. Si des caractères non ASCII (par exemple, la livre anglaise et le caractère Euro) ne seront pas utilisés et que le clavier est un clavier US, passez cette section. Sans le fichier de configuration, le script de démarrage console ne fera rien.

Le script console lit le fichier /etc/sysconfig/console pour des informations de configuration. Il décide du plan de codage et de la police de la console à utiliser. Différents guides pratiques spécifiques aux langues peuvent aussi être d'une grande aide (voir http://www.tldp.org/HOWTO/HOWTO-index/other-lang.html). Un fichier /etc/sysconfig/console déjà rempli avec des paramétrages déjà connus pour différents pays a été installé avec la paquet LFS-Bootscripts, pour que la section adéquate puisse être décommentée si le pays est supporté. Si vous avez toujours des doutes, jetez un ½il dans le répertoire /usr/share/kbd pour des plans de codage valides et des polices pour écran. Lisez les pages man de loadkeys(1) et setfont(8) pour déterminer les bons arguments pour ces programmes. Une fois décidé, créez le fichier de configuration avec les commandes suivantes :

cat >/etc/sysconfig/console <<"EOF"
KEYMAP="[arguments pour loadkeys]"
FONT="[arguments pour setfont]"
EOF

Par exemple, pour les utilisateurs espagnols qui souhaitent aussi utiliser le caractère Euro (accessible avec la combinaison de touches AltGr+E), les paramétrages suivants sont corrects :

cat >/etc/sysconfig/console <<"EOF"
KEYMAP="es euro2"
FONT="lat9-16 -u iso01"
EOF
[Note]

Note

La ligne FONT ci-dessus est correct seulement pour l'ensemble de caractères ISO 8859-15. Si vous utilisez ISO 8859-1 et, du coup, un symbole de livre à la place de l'Euro, la ligne FONT correcte devrait être :

FONT="lat1-16"

Si la variable KEYMAP ou FONT n'est pas configurée, le script de démarrage console n'exécutera pas le programme correspondant.

Dans certains plans de codage, les touches Backspace et Delete envoient des caractères différents de ceux du plan de codage par défaut intégré au noyau. Ceci est une source de confusion pour certaines applications. Par exemple, Emacs affiche son aide (au lieu de supprimer le caractère situé avant le curseur) lors d'un appui sur Backspace. Pour vérifier si le plan de codage utilisé est pris en compte (ceci ne fonctionne qu'avec les plans de codage i386) :

zgrep '\W14\W' [/path/to/your/keymap]

Si le code de touche 14 est Backspace au lieu de Delete, créez le code supplémentaire suivant au plan de codage pour corriger ce problème :

mkdir -p /etc/kbd && cat > /etc/kbd/bs-sends-del <<"EOF"
                  keycode  14 = Delete Delete Delete Delete
              alt keycode  14 = Meta_Delete
        altgr alt keycode  14 = Meta_Delete
                  keycode 111 = Remove
    altgr control keycode 111 = Boot
      control alt keycode 111 = Boot
altgr control alt keycode 111 = Boot
EOF

Indiquez au script console de charger ce code après le plan de codage principal :

cat >>/etc/sysconfig/console <<"EOF"
KEYMAP_CORRECTIONS="/etc/kbd/bs-sends-del"
EOF

Pour compiler le plan de codage directement dans le noyau au lieu de le configurer à chaque fois avec le script de démarrage console, suivez les instructions données dans la section intitulée « Linux-2.6.11.12 ». Le faire vous assure que le plan de codage fonctionnera toujours comme attendu, même si vous démarrez en mode maintenance (en passant init=/bin/sh au noyau), parce que le script de démarrage console ne sera pas lancé dans cette situation. De plus, le noyau ne configurera plus la police de l'écran automatiquement. Ceci ne devrait pas poser beaucoup de problèmes car les caractères ASCII seront gérés correctement et il est improbable qu'un utilisateur aura besoin de caractères non ASCII en mode maintenance.

Comme le noyau configurera le plan de codage, il est possible d'omettre la variable KEYMAP à partir du fichier de configuration /etc/sysconfig/console. Il peut aussi aussi être laissé à sa place, si désiré, sans conséquence. Le garder pourrait être bénéfique si vous utilisez différents noyaux et qu'il est difficile d'être sûr que le plan de codage est bien compilé dans chacun d'entre eux.