Installer Mandriva sur eeePC (Magnum n°3)
Un article de Wiki de la communauté Mandriva.
Pas Mandriva : Mandreeeva !
L'EeePC arrive, avec un Linux préinstallé d'office ! BRA-VO ! Quelle grande nouvelle. ASUS a fait le pari qu'un tel ordinateur pouvait être sous Linux nativement.
Cependant, chacun ayant ses petites habitudes, il était temps d'enlever la Xandros au profit d'une Mandriva, sur cet ultraportable.
[modifier] Choix de la version
La 2008.1 Spring va sortir dans peu de temps. Il paraissait plus facile de partir des bêtas ou des Rcs. En effet, les divers drivers nécessaires au bon fonctionnement du Eee sont présents dans ces versions.
Pour des questions de facilité, j'ai fait le choix de la One car l'Eee est équipé d'une carte wifi qui fonctionne avec le driver madwifi, disponible directement sur ce CD. On peut aussi partir d'une Free, mais ceci demande alors un peu plus de temps pour la mise en marche du wifi.
[modifier] Installation
Utilisation d'un lecteur de CD externe bricolé (un lecteur de CD-ROM interne branché sur un boitier de dd externe IDE) pour booter sur la One. Une flash 2008.1, si elle existait aurait bien fait l'affaire.
Une fois le LiveCD lancé, installation sur le SSD (solid state disk, disque dur en mémoire flash) en une demi-heure.
- - partitionnement personnalisé : tout / sur le SSD
- - pas de SWAP
- - le /home sera mis sur une carte SDHC externe (voir personnalisation)
[modifier] Redémarrage
Tout fonctionne presque directement. Cependant, il y a quelques petites améliorations à apporter pour avoir un Eee 100% fonctionnel.
[modifier] Gestion de l'énergie :
Afin de bénéficier du contrôleur de fréquence "ondemand" qui permet de choisir la vitesse du processeur en fonction de la charge : (en root)
modprobe p4-clockmod echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
ces deux lignes peuvent être rajoutées dans /etc/rc.local
NB : si ce mode peut être intéressant quelquefois, il procure une mauvaise sensation lorsque l'on travaille avec le Eee. Pour économiser de la batterie et avoir une impression de fluidité, je préfère me mettre en contrôle utilisateur :
echo "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
et définir la fréquence vers 450 MHz:
echo "450000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
Eteindre l'ordinateur quand il n'y a plus assez de batterie :
Une batterie lithium-Ion comme dans le Eee, ne supporte pas d'être vidée complètement.
Pour éviter ce problème, changer immédiatement la politique d'arrêt dans kpowersave (applet en bas à droit avec l'icône de batterie ou de prise électrique)
clic droit
-> configurer kpowersave -> paramètres généraux -> battery -> éteindre quand inférieur à 7% -> paramètres généraux -> Button events -> lid close button -> arrêt
(ceci permet que, quand on ferme l'écran, l'Eee s'éteigne vraiment.)
[modifier] Gestion de l'espace disque
Le Eee ne dispose, dans sa version 4G que de 4 gigas de mémoire solide (SSD, solid state disk, disque dur en mémoire flash). Il faut donc veiller aux paquetages installés.
[modifier] Repérer les plus gros fichiers
Cette commande liste tous les fichiers de plus de 10 Mo dans un répertoire et ses sous-répertoires (à lancer en utilisateur) :
$ find . -size +10M
Équivalent graphique : konqueror > Outils > Chercher un fichier (onglet "Propriétés").
Il suffit ensuite de supprimer ou déplacer sur un support externe les fichiers dont on veut se passer.
Précaution : À utiliser en utilisateur, jamais en root.
[modifier] Supprimer les plus gros paquets RPM
Cette commande classe les rpms par taille (à lancer en utilisateur) :
$ rpm -qa --queryformat '%{name} %{size}\n' | sort -n +1 | column -t
Il vous suffit de décider ce dont vous pouvez vous passer, et les désinstaller en lançant le gestionnaire de paquets. Voici un fichier qui liste toutes les traductions qui ne m'étaient pas nécessaires.
J'ai gagné près de 600 Mo avec.
[modifier] Supprimer les paquets RPM plus utilisés
L'utilitaire rpmorphan liste les paquetages sans dépendances (orphelins). Utilisé avec précaution il aide à supprimer les paquets logiciels inutilisés (notamment mais pas seulement après une mise-à-jour). L'option "-tk" permet de lancer rpmorphan avec une petite interface graphique.
Voici comment désinstaller les bibliothèques (libraries en anglais) inutiles (en root) :
# rpmorphan -use-cache -tk -guess-lib
liste toutes les librairies sans dépendances. Par exemple, libbeagle0 (pour Eagle, que j'ai désinstallé), libmozilla-firefox2.0.0.11 (je suis passé à Firefox-2.0.0.12), libquicktime (je compte pas compiler d'appli) etc. Le bouton info permet d'afficher les détails sur le package sélectionné, et le bouton remove de le désinstaller. Rien qu'en désinstallant 8 librairies j'ai récupéré 90 Mo d'espace disque.
Précaution : Ne désinstallez aucun package "à la louche" à moins de vouloir détruire le système. !
[modifier] Se passer de swap
L'achat d'un Eee va souvent de pair aussi avec l'achat d'une barrette de 1 ou 2 Go de RAM. (so dimm DDR2 5300 à 667 MHz) ceci permet, par exemple, de se passer de SWAP.
Pour se passer de swap, éditez /etc/fstab et annotez la ligne mentionnant "swap" en ajoutant un "dièse" devant :
#/dev/sda2 swap swap defaults 0 0
[modifier] Monter /tmp et /var/log dans la mémoire RAM
L'achat d'une barrette de 1 ou 2 Go de RAM permet aussi de monter en mémoire les répertoires /tmp et /var/log, /var/tmp au choix. Ceci signifie qu'à chaque fois que l'on éteint l'Eee, les données présentes dans ce répertoire sont perdues. Or toutesles données écrites dans ces partitions sont temporaires par essence. Néanmoins /var/log conserve les logs, souvent utiles pour déboguer une application. Si vous le montez dans la RAM, seuls les logs de la session en cours (depuis le dernier redémarrage) seront disponibles.
Pour monter /tmp et /var/tmp dans la RAM, modifiez /etc/fstab :
tmpfs /var/tmp tmpfs noatime 0 0 tmpfs /tmp tmpfs noatime 0
[modifier] Gestion du /home
L'achat d'un eee se fait souvent complémentairement à une carte SDHC de grosse capacité (8 ou 16 Gigas...).
L'intérêt étant d'utiliser cet espace pour son /home (ou autre).
Cependant, j'avais une problématique particulière : je souhaitais que quand j'insère la carte SDHC le home se monte mais pas quand j'introduisais une autre carte SD (pour le transfert de photos par exemple).
Impossible de mettre dans le /etc/fstab : /dev/sdb1 /home etc. D'autant qu'une clef usb branchée avant le boot pourrait aussi poser problème.
Il faut alors utiliser les UUID, qui marquent de manière unique un disque ou une partition.
Pour connaître l'UUID de la partition, il faut la chercher dans /dev :
ls -lh /dev/disk/by-uuid
on repère alors celle qui convient :
lrwxrwxrwx 1 root root 10 2008-02-21 09:40 8f2009db-c352-49bb-aecb-d88f65afa1f8 -> ../../sdb1 lrwxrwxrwx 1 root root 10 2008-02-21 09:40 b621977f-5ce0-42be-b5b3-c58e48d6ab4f -> ../../sdb5 lrwxrwxrwx 1 root root 10 2008-02-21 09:40 d596721e-c9e2-4a2e-95f5-9fc050f03753 -> ../../sda
en ce qui me concerne, il s'agit de /dev/sdb1 soit 8f2009db-c352-49bb-aecb-d88f65afa1f8
Enfin, il faut remplir le /etc/fstab avec("kdesu kwrite" en console ou avec un autre éditeur) pour que ce soit monté au démarrage de l'ordinateur:
UUID=8f2009db-c352-49bb-aecb-d88f65afa1f8 /home ext2 noatime 0 0
NB : vous aurez remarqué que cette partition est en ext2 et pas en ext3... plusieurs opinions s'affrontent sur le web. Privilégiant le gain de place, j'ai mis en ext2. (le journal prend quelques pourcents)
NB2: sur une xandros, je n'ai pas l'arborescence: /dev/disk/by-uuid Il est donc bon de connaître l'outil adéquat (sur mandriva ou xandros): blkid . Il suffit de taper : /sbin/blkid
[modifier] Autres personnalisations du système
Certains utilisent Métisse pour gagner de la place sur l'écran.
/etc/sysctl.conf peut être modifié pour expressément dire à Linux de ne pas swapper et aussi de ne pas écrire tout le temps sur le disque :
vm.swappiness=1 vm.vfs_cache_pressure=50
sont à rajouter dans /etc/sysctl.conf
[modifier] Ce qui reste encore à améliorer
La gestion du bouton wifi : l'appui sur le bouton désactive bien le wifi (le bouton s'éteint mais il n'y a plus de réseau)
[modifier] Ce qui fonctionne mais nécessite un petit réglage
Le son : la carte son est supportée, ainsi que le micro, mais vous devez préciser le modèle dans /etc/modprobe.conf :
options snd-hda-intel model=3stack-dig
La sortie VGA. Elle fonctionne immédiatement, mais ne permet pas le changement de résolution plus grande que 800x600 (dommage, hein ? ;) )
Pour cela il suffit d'ajouter dans /etc/X11/xorg.conf dans la section "Screen", subsection "Display" correspondant à votre profondeur de couleur -j'ai d'ailleurs mis 24 au lieu de 16- :
virtual 2048 2048
exemple :
Section "Screen" Identifier "screen1" Device "device1" Monitor "monitor1" DefaultColorDepth 24
Subsection "Display" Depth 24 Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240" virtual 2048 2048 EndSubsection EndSection
[modifier] Ce qui fonctionne et ne nécessite aucun réglage
- Clavier
- Touchpad
- Le suspend to RAM
- Webcam
(NB : pour activer et désactiver la webcam, taper (respectivement) :
$echo 1 > /proc/acpi/asus/camera $echo 0 > /proc/acpi/asus/camera
Pour l'environnement gnome vous pouvez activer et désactiver la webcam graphiquement en utilisant l'applet eecamtray qui apparaîtra à côté de l'icône réseaux. La petite icône de caméra sera verte pour allumée et rouge pour éteinte.
[modifier] Procédure d'installation du eecamtray
Ouvrir un émulateur de terminal tapez:
su
Saisir le mot de passe de l'administrateur. Ensuite tapez successivement les lignes suivantes :
cd /usr/bin wget http://berkus.madfire.net/eeecamtray.gz gunzip eeecamtray.gz chmod +x eeecamtray ./eeecamtray
Puis pour exécuter automatiquement ce programme dès le démarrage, il suffit d'aller graphiquement dans Système → Préférences → Sessions, dans l'onglet « Programme au démarrage », cliquez sur « Ajouter ». Nom : « EEEcamtray ». Commande : « /usr/bin/eeecamtray ». Mettez un commentaire si vous le souhaitez et vérifiez que le processus que l'on vient de créer est coché et redémarrez votre session gnome.)
[modifier] Installation à partir du DVD FREE
Seul le wifi nécessite un driver propriétaire. Le reste est pris en compte directement. Pourquoi donc s'embêter avec le CD de la ONE et sa pléthore de drivers non utiles (virtualbox etc.)
Il faudra donc installer les dépôts 2008.1 (ou cooker si pas encore sortie) pour tout y compris PLF.
Ensuite, il faudra installer le noyau et le nécessaire de compilation qui conviennent bien :
urpmi kernel-laptop-latest kernel-laptop-devel-latest
puis installer madwifi :
urpmi dkms-madwifi
et voilà... le wifi est pris en compte.