Dominique Meeùs
Dernière modification le
retour à la table des matières
— à l’index
— à ma page de départ
Installer dans des partitions trop petites peut conduire à de sérieux problèmes. Les expériences ci-dessous remontent
à mes débuts avec des disques nettement plus petits que ceux qu’on trouve aujourd’hui.
Il faut de la place pour /usr
parce qu’on installera de plus en plus d’applications de plus en plus lourdes. Certaines
s’intalleront peut-être en /opt
. Les /var
et /tmp
sont par essence très variables. Il faudrait une place généreuse pour chacune si
on leur fait des partitions séparées. La partition racine se remplit aussi des nombreuses
versions de noyaux Linux reçues dans des mises à jour. Les mises à jour des applications
remplacent les anciennes versions, mais les noyaux de Linux s’accumulent si on ne
pense pas à les effacer (garder les deux dernières ?) ce qui constitue une menaces
pour la partition racine /
. Je me demande s’il ne vaut pas mieux après tout se limiter, en dehors du swap
, à deux grandes partitions : /home
pour les raisons que j’ai déjà dites, et la racine /
pour tout le reste. Consulter des discussions récentes à ce sujet.
J’ai d’abord installé Ubuntu (lors de sa sortie en 2004) dans une partition de 2 Go,
plus une partition de ½ Go de swap. Cela s’installe sans problème (j’ai oublié de
noter l’espace utilisé) mais ça risque de se remplir vite ! J’ai très vite déplacé
/home
vers une autre partition. Je ne croyais pas avoir installé des masses de choses mais
deux mois après, à l’occasion d’une mise à jour, je me suis retrouvé avec 0 octets
de libre ! Il n’était plus possible de démarrer l’interface graphique Gnome. J’ai
donc dû, en catastrophe, à partir de la console, déplacer le contenu de /usr
vers une autre partition et éditer fstab
(j’ai dû apprendre vi
en catastrophe — aujourd’hui, j’utiliserais plutôt nano
) pour monter cette partition en /usr
. Je n’ai pas fait de faute et j’ai retrouvé mon système en redémarrant. Il vaudrait
donc mieux avoir préparé des partitions avant l’installation et installer directement
dans cet éventail de partitions. Quelqu’un qui n’y connaît rien ne peut installer
que sur l’ensemble du disque. Pour celui qui sait ce qu’est une partition ou qui a
le courage d’apprendre, il est beaucoup moins risqué d’installer d’emblée sur plusieurs
partitions en indiquant des points de montage /
, /home
et /usr
que de déplacer après coup leur contenu et d’éditer le fichier fstab
avec le risque de faire une erreur qui rendrait le système difficilement accessible.
Un âne ne bute pas deux fois sur la même pierre. Moi oui, ce qui prouve que je ne
suis pas un âne (je m’en doutais un peu à vrai dire). La page que j’ai déjà citée dit explicitement « Consider putting /var
[…] on a separate filesystem. This protects your root filesystem from overflowing
in the case of a runaway log. An overflowed root filesystem is a Bad Thing. » Je ne l’avais pas fait. J’avais déjà pourtant eu la blague avec /usr
. Je suis maintenant tout à fait convaincu que si le système de fichiers racine est
bouché, c’est vraiment « a Bad Thing » (avec les majuscules). Plus aucune grosse application,
plus aucune application graphique ne démarre parce qu’elle doivent toutes écrire quelque
chose quelque part et qu’il n’y a pratiquement plus un octet de libre. Je voulais
alors passer de Ubuntu 4.10 à la nouvelle version 5.04 le jour de sa sortie le 8 avril
2005. J’ai changé mes dépots de Warty à Hoary dans Synaptic (ce qui n’est d’ailleurs
par une bonne manière de changer de version) et j’ai lancé la mise à jour complète
du système. Il y avait 850 fichiers à charger. Ils sont stockés dans /var/cache
pour être installés ensuite. Après 300 fichiers, il n’y avait plus de place (« impossible
to write to the output file » ou quelque chose de ce genre — il a fallu un certain
temps pour que je devine où était le problème). Le système était engorgé. Pratiquement
plus rien ne fonctionnait sous Gnome. Même scénario que ci-dessus. Je suis repassé
(Ctrl-Alt-F1
) à la première console texte. (J’ai dû faire de sérieux efforts de mémoire et de
lecture de notes pour me rappeler des commandes de base de Linux.) J’ai monté la partition
/dev/hda8
(simplement mount /dev/hda8
parce qu’elle était inscrite dans /etc/fstab
). J’ai regardé ce qu’il y avait dedans (ls /mnt/hda8
). C’étaient de vieux fichiers utilisateur dont je n’avais plus besoin (ils avaient
déjà été recopiés quelque part dans /home
). J’ai démonté (umount /dev/hda8
). J’ai fait le grand nettoyage en reformatant la partition (mkfs -t ext3 /dev/hda8
). Je l’ai remontée. J’y ai recopié le contenu de /var
(cp -r /var/* /mnt/hda8
). J’ai vérifié que c’était réussi (ls /mnt/hda8
). J’ai effacé le contenu de /var
(rm -rf /var/*
). J’ai édité /etc/fstab
pour que /dev/hda8
soit monté en /var
au lieu de /mnt/hda8
. J’ai redémarré (shutdown -r now
). Tout remarchait. (Linux, c’est quand même très fort ! Et moi, je fais des erreurs
mais je suis quand même assez malin pour m’en dépétrer.) J’ai pu continuer ma mise
à jour.