[Toulibre] Linux sur Netbook ACER ASPIRE ONE 522
Thomas Petazzoni
thomas.petazzoni at enix.org
Mar 6 Sep 09:53:22 CEST 2011
Bonjour Pascal,
Le Tue, 6 Sep 2011 09:32:29 +0200,
Pascal Wijsbroek <pascal.wijsbroek at gmail.com> a écrit :
> Bonjour à tous, je vais répondre à ma question tout seul, j'ai trouvé
> sur un forum une soluce (que j'ai appliqué sans la comprendre, vous
> pouvez hurler).
>
> Le driver dans la version 11.04 d'Ubuntu bugge avec l'Acer Aspire One
> 522. C'est connu, ça fait bloquer le bouzin. Contrairement à la
> version d'avant (mais c'était l'éthernet qui ne marchait pas).
>
> J'ai trouvé sur un forum la soluce suivante :
>
> Aller dans le fichier /etc/modprobe.d/blacklist.conf
> Ajouter la ligne "blacklist atl1c" (sans les guillemets)
> Taper dans un terminal "sudo update-initramfs -u" (sans les
> guillemets) Redémarrer.
>
> C'est fini. Le Wifi marche toujours, l'ethernet marche toujours, MAIS
> ça ne freeze plus quand la machine tente de se connecter au Wifi.
>
> Et là je fais appel aux pros de Linux : que fait donc cette ligne ?
Il va falloir donner un peu contexte. Allons-y.
Dans le système Linux, les pilotes de périphériques (drivers) pour la
plupart des périphériques font partie du noyau Linux. C'est par exemple
le cas pour les drivers d'interfaces réseau filaires ou sans-fil. Ces
drivers peuvent être compilés sous la forme de "module", c'est à dire
de petit bout de code que l'on peut charger/décharger dynamiquement
pendant l'exécution du système, sans avoir à redémarrer. Ici, "atl1c"
désigne un de ces modules du noyau Linux. Le fait d'ajouter:
blacklist atl1c
dans le fichier /etc/modprobe.d/blacklist.conf interdit à la commande
"modprobe" (qui sert à charger/décharger un module) de charger ce
module. Du coup, ce driver "atl1c" devient interdit. Je n'ai pas
regardé, mais il est probable qu'il y ai plusieurs drivers possibles
pour ton interface réseau, et qu'atl1c ayant un bug, utiliser un autre
driver résolve le problème. J'ai effectivement eu ce problème avec un
autre driver Wifi sur un Asus EEE.
Pour finir, la commande "sudo update-initramfs -u". Pour simplifier de
manière très grossière, quand tu démarres une distribution comme
Ubuntu, une fois que le noyau Linux est chargé et initialisé, le
système n'exécute pas directement les applications présentes dans ton
disque dur. Il y a un espèce de "système intermédiaire", stocké dans un
initramfs, c'est à dire un système de fichiers en mémoire, chargé en
même temps que le noyau par Grub. Ce "système intermédiaire" contenant
les modules noyau et le fichier /etc/modprobe.d/blacklist.conf que nous
venons de modifier, il faut mettre à jour ce "système intermédiaire",
et c'est ce que fait la commande update-initramfs.
Encore une fois, c'est vraiment une explication très simpliste de ce
qu'est un initramfs.
Bonne journée,
Thomas
--
Thomas Petazzoni http://thomas.enix.org
MapOSMatic http://www.maposmatic.org
Logiciels Libres à Toulouse http://www.toulibre.org
Embedded Linux http://www.free-electrons.com
Plus d'informations sur la liste de diffusion Toulouse-ll