Léa-Linux & amis :   LinuxFR   GCU-Squad   Zarb.Org   GNU
Empêcher la détection automatique des périphériques USB et de la carte SD au démarrage de l'EeePC


Empêcher la détection automatique des périphériques USB et de la carte SD au démarrage de l'EeePC

Par Jice

Lorsque vous utilisez une carte SD ou une clef ou un disque dur USB comme second disque dur de l'EeePC, à chaque démarrage une fenêtre s'affiche pour vous demander avec quelle application vous désirez ouvrir le périphérique.

C'est la même fenêtre qui s'affiche lorsque vous insérez à chaud une carte SD ou un périphérique de stockage USB.

Nous allons voir ci-dessous comment supprimer cette fenêtre pendant la phase de démarrage, et la réactiver ensuite (car dans le deuxième cas on préfère voir cette boîte de dialogue).

Le programme qui s'occupe d'afficher cette boîte de dialogue se nomme /usr/bin/xandros_device_detection_dialog. Nous allons le renommer, et créer un nouveau programme du même nom qui ne lancera l'ancien que sous certaines condition (en l'occurence lorsque la machine a été démarrée depuis au moins 30 secondes).

Ouvrez une console (Ctrl+Alt+T) et faites :

> sudo -s
# cd /usr/bin
# mv xandros_device_detection_dialog xandros_device_detection_dialog.orig
# kwrite xandros_device_detection_dialog

Dans la fenêtre de Kwrite, copiez/collez le script suivant :

#!/bin/sh
# quitter le programme si la machine est démarrée depuis moins de 30 secondes
if [ `cat /proc/uptime | cut -f1 -d.` -lt 30 ] ; then exit ; fi
# lancer le programme original en lui passant tous les arguments avec lesquels  on a été appelé
exec xandros_device_detection_dialog.orig "$@"

Enregistrez, fermez KWrite.

Dans la console, rendez le nouveau script exécutable par la commande :

# chmod a+x xandros_device_detection_dialog

C'est terminé. Au prochain démarrage vous ne devriez pas avoir la boîte de dialogue. Vous pouvez tester tout de suite que si vous insérez une clef USB par exemple, elle s'affiche encore.

Note : si la boîte de dialogue s'affiche quand même, augmentez le nombre de secondes pendant lesquelles la désactiver (30 ci-dessus). Par exemple en mode avancé, 40 ou 50 peuvent mieux fonctionner.

Note : dans le nouveau script, le code suivant :
cat /proc/uptime | cut -f1 -d.
sert à prendre le contenu du fichier /proc/uptime, qui contient le nombre de secondes depuis le démarrage sous forme d'un nombre décimal (en fait il y en a deux), et à récupérer sa partie entière. Ensuite, on compare cette valeur à 30 avec l'opérateur -lt ("plus petit que", ou en anglais "less than"). Si la valeur est plus petite que 30 on quitte le script (commande exit), sinon (ligne suivante) on lance le programme original.

Note : je ne sais pas pourquoi, mais chez moi dès que je déplace /usr/bin/xandros_device_detection_dialog vers /usr/bin/xandros_device_detection_dialog.orig, il ne fonctionne plus (en le lançant directement dans un shell on peu voir qu'il fait une erreur de segmentation). Même en lui redonnant son nom original. J'ai donc démarré en mode sans echec afin de supprimer la copie de ce fichier qui se trouvait dans /mnt_user/usr/bin/, et j'ai renommé la copie originale dans /mnt-system/usr/bin/xandros_device_detection_dialog.orig. Attention en faisant ce genre de manipulations directement sur /mnt-system, vous ne pourrez plus revenir en arrière sur cette action par F9 au démarrage, car vous modifiez la configuration d'usine. Faites donc bien attention. (Par contre, vous pourrez toujours revenir à la configuration d'origine avec F9 pour toutes les autres modifications faites de manière normale, que ce soit avant ou après la modification manuelle).

Et pour la désactiver complètement ?

Dans ce cas rien de plus simple. Pas besoin de créer un script, car il suffit de rendre le programme original non exécutable :

# chmod a-x /usr/bin/xandros_device_detection_dialog

Et pour la réactiver :

# chmod a+x /usr/bin/xandros_device_detection_dialog

Source : Forum EeeUser Flag-en.png

Dans le forum ils proposent le script suivant :

#!/bin/sh
awk '$1 < 30 { exit 1 }' /proc/uptime && xandros_device_detection_dialog.orig "$@" &

Mais je préfère pouvoir lire ce que j'écris, et cela me paraissait compliqué.



@ Retour à la rubrique Eee PC

Copyright

© 2008 Jean-Christophe Cardot

Creative Commons License
Creative Commons Attribution iconCreative Commons Share Alike icon
Ce document est publié sous licence Creative Commons
Attribution, Partage à l'identique 3.0 :
http://creativecommons.org/licenses/by-sa/3.0/
Views
Jump to: navigation, search
Personal tools

Serveur hébergé par ST-Hebergement et Lost-Oasis / IRC hébergé par FreeNode / NS secondaire hébergé par XName
Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons CC-BY-SA