Voilà, je suis en train de me refaire une machine perso, tranquille, et j’essayes de la construire optimale.
Je sais que le partitionnement est affaire de contexte, mais je me suis dit que ça ne serait pas mal de discuter un peu des critères, et de séparer les “on dit” des vraies optimisations.
Voici donc comment je partitionne et pourquoi, et n’hésitez donc pas à critiquer, et surtout confirmer/infirmer ce que je dit.
Dans mon cas, je dispose d’un disque vierge IDE de 80Go, et j’ai déja des partitions de données multimédia fat32 ailleurs ainsi qu’un petit disque annexe me servant actuellement de /usr/src/ amovible pour plusieurs machines.
Pour simplifier mettons que le disque soit hda.
Je dispose d’1 Go de RAM.
Dans la suite, je décide de mettre des partitions un peu n’importe où sur le disque. Pour faire ça facilement, j’utilises qtparted, plutot que de me prendre la tête avec les cylindres et les blocs sous fdisk, mais il y a surement d’autres outils.
1/j’ai cru lire quelquepart que l’accés aux partitions primaires était plus rapides que les partitions logiques extended, je vais faire trois primaires, et une extended. On verra aprés ce que je mets sur l’extended.
2/j’ai cru lire que l’accés au disque était plus rapide en fin de disque qu’au début, mais à priori les mouvements du bras jouant un rôle important (cf infra.), il vaut mieux concentrer autour du swap les partitions à acés rapide, et, le swap étant d’un accés fréquent, essayer de minimiser la distance entre le swap et les autres partitions.
Je vais donc positionner mon swap au milieu du disque, et si ma stratègie ne me le permet pas tout à fait, je repousserais à la fin du disque.
3/j’ai lu que la quantité optimale de swap était de 2.5 fois la taille de la RAM. le manuel de mkswap annonce à 2 Go la quantité utile sur 386 avec du swap “new style” (cf. infra): je mettrais donc 2 Go de swap.
4/Je souhaites protèger / contre les débordements de certains répertoires (/home, /var, /temp), et accélèrer particulièrement l’accés à d’autres (/usr). Je vais donc les isoler, et en examinant l’utilisation dans ces répertoire sur ma vieille debian surchargée, je m’apercois (avec ‘sudo du -s /*’) qu’en enlevant toutes ces arbos, ce qui reste à la racine ne dépasse pas 2 Go, l’essentiel (~ 7 Go) étant dans /usr. Je décides donc d’une partition / de 10Go et d’une /usr de 15 Go.
5/comme je ne vois pas ce qui nécessite un accés rapide dans / (puisque j’en sors /var et /temp), je décide de la mettre en tête du disque.
6/par contre, /usr, qui pour lequel je souhaites accèlérer l’accés aux executables, va passer en fin de disque, juste aprés le swap.
7/ces deux partitions ne contiennent que peu de données critiques (mon /etc va être sauvegardé régulièrement), et ne sont écrites que quand j’installe un logiciel. Je vais donc me passer d’entretenir un journal, et accepter les checkdisk en cas de reboot, pour accélèrer les accés et baisser l’usage de la mêmoire: je les formate en ext2.
Avec ces deux partitions, ce qui reste est forcément une extended:
=> partition / ext2 de 10Go sur hda1
=> partition extended sur hda2 avec l’espace libre entre hda1 et hda3
=> partition hda3 de swap de 2.5 Go
=> partition /usr ext2 de 15Go sur hda4
bon, maintenant, l’extended:
le swap n’est pas vraiment centré, mais en positionnant sur l’extended /var juste à coté, et tmp pas trop loin non plus, le reste étant dédié à /home, je respecte à peu prés le regroupement.
Alors ça va donner quelquechose comme ça (j’affinerais plus tard le choix ext2/ext3, on peut toujours choisir plus tard de changer):
=> partition /home ext3 sur hda5 avec l’espace laissé libre par /var et /tmp
=> partition /tmp ext2 de (soyons large, j’encode) 15 Go
=> partition /var ext2 de 10 Go
et voilà, aprés structuration et formatage sous qtparted, et passage sous fdisk pour bien réeordonner les partitions, activer hda1, et simplement réecrire la table de partition (c’est bizarre, je fais pas trop confiance aux tables écrites par parted/qtparted), aprés ça disais je, une petite “labellisation”, et hop:[code]
emeraude:~$ sudo tune2fs -L / /dev/hdb1
tune2fs 1.39-WIP (31-Dec-2005)
emeraude:~$ sudo mkswap -L swap /dev/hdb3
Initialisation de la version de l’espace de swap 1, taille = 2146791 kB
LABEL=swap, UUID=32ba066d-4130-4e75-9ccd-583c314c7cbd
emeraude:~$ sudo tune2fs -L /usr /dev/hdb4
tune2fs 1.39-WIP (31-Dec-2005)
emeraude:~$ sudo tune2fs -L /home /dev/hdb5
tune2fs 1.39-WIP (31-Dec-2005)
emeraude:~$ sudo tune2fs -L /tmp /dev/hdb6
tune2fs 1.39-WIP (31-Dec-2005)
emeraude:~$ sudo tune2fs -L /var /dev/hdb7
tune2fs 1.39-WIP (31-Dec-2005)
emeraude:~$ sudo fdisk -l /dev/hdb
Disque /dev/hdb: 80.0 Go, 80026361856 octets
255 têtes, 63 secteurs/piste, 9729 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Périphérique Amorce Début Fin Blocs Id Système
/dev/hdb1 * 1 1305 10482381 83 Linux
/dev/hdb2 1306 7510 49841662+ 5 Extended
/dev/hdb3 7511 7771 2096482+ 82 Linux swap / Solaris
/dev/hdb4 7772 9729 15727635 83 Linux
/dev/hdb5 1306 4246 23623519+ 83 Linux
/dev/hdb6 4247 6204 15727603+ 83 Linux
/dev/hdb7 6206 7510 10482412+ 83 Linux
[/code]
bon, je passe à l’install depuis ma distrib courante, mais c’est une autre histoire.