1er démarrage, 1er bug

Et oui déjà un problème au démarrage !!

 

Le problème vient en fait de mon clavier Microoft wireless photo qui a des touches qui envoie des mauvais ordres à la console linux

Du coup je ne peux rien écrire sans que des messages du type setkeycodes e001 apparaissent ! c’est très ennuyant.

Il faut donc faire comme ça pour réparer ce petit bug 

Voici comment éviter d’avoir à exécuter setkeycodes en ouvrant une console après un démarrage ou un redémarrage.

Identifier les codes mal interprétés

Ouvir un terminal et exécuter la commande suivante :

Code:
dmesg | grep atkbd.c

Cette commande retournera, si telle est la situation, une information comme celle-ci 
 

Code:
atkbd.c: Unknown key released (translated set 2, code 0×81 on isa0060/serio0).
atkbd.c: Use ‘setkeycodes e001 ‘ to make it known.

Trouver une clé d’assignation disponible

Ouvrir une console en utilisant la séquence de touches Ctrl + Alt + F1.

Dans la console, s’identifier comme administrateur du système. 
 

Code:
… login: root
Password: (Taper le mot de passe du root + ENTER)
 

 
Exécuter la commande dumpkeys  – - keys-only 
 

Code:
dumpkeys – -keys-only | more
 

Faire défiler la liste pour touver une clé disponible ou, si vous préférez, une clé non assignée par le système. Ce type de clé se présente ainsi :
 

Code:
keycode no =
 

no est le numéro de la clé, par exemple 255. Il y a 256 clés en tout numérotées de 0 à 255.

Noter autant de clés disponibles que vous en avez besoin et revenir dans l’interface graphique (bureau) avec la séquence de touches Ctrl + Alt + F7.

Sauvegarder le fichier /etc/init.d/bootmisc.sh

Ouvrir un terminal en mode administrateur et taper :
 

Code:
cp /etc/init.d/bootmisc.sh /etc/init.d/bootmisc.sh.bak
 

Modifier le fichier /etc/init.d/bootmisc.sh

Toujours dans le terminal ouvert en root, taper la commande :
 

Code:
gedit /etc/init.d/bootmisc.sh
 

Remplacer gedit par kedit si vous utilisez KDE. Autrement la commande nano s’applique autant à GNOME qu’à KDE.

Insérer la ou les commande(s) setkeycodes à la fin du premier bloc case de do_start () {
 

Code:
do_start () {
        #
        # If login delaying is enabled then create the flag file
        # which prevents logins before startup is complete
        #
        case "$DELAYLOGIN" in
          Y*|y*)
                echo "System bootup in progress – please wait" > /var/lib/initscripts/nologin
                ;;
        esac
setkeycodes e059 255
setkeycodes e001 254
 

Sauvegarder le fichier. Redémarrer et vous verrez que cette modification a corrigé l’erreur d’interprétation. Vous en doutez ? Alors refaites la commande dmesg tel qu’indiqué plus haut et jugez-en par vous-mêmes.
 

 

Cette entrée a été publiée dans Debian. Vous pouvez la mettre en favoris avec ce permalien.

Les commentaires sont fermés.