next up previous contents Next:  Formater les périphériques. Up: Partitions, systèmes de fichiers, Previous: Partitions étendues.   Table des matières  


20.2  Partitionnement d'un nouveau disque.

Un disque neuf n'est jamais formaté. En tapant fdisk, vous lancez un utilitaire interactif de partitionnement. La commande:

fdisk /dev/hda 


partitionnera votre premier maître.

Ce qui suit constitue un exemple de partitionnement d'un nouveau disque dur. La plupart des distributions présentent des outils graphiques pour partitionner des disques, ce qui fait que la commande fdisk n'est pas nécessaire lors d'une installation. Cependant, l'addition d'un nouveau disque ou les opérations de transfert/copie d'un système LINUX vers un nouveau disque requerront un partitionnement.

Sous UNIX, chaque partition possède son propre répertoire. Les fichiers présents dans un répertoire peuvent être répartis sur un disque différent ou sur une partition différente par rapport aux fichiers d'un autre répertoire. Typiquement, le répertoire /var et les sous-répertoires qui y sont associés, sont enregistrés sur une partition différente du répertoire /usr (et de tous les sous-répertoires qui y sont associés).

Le tableau 14 présente des conseils généraux quant à la manière dont un serveur devrait être monté (avec les ordinateurs familiaux, vous pouvez prendre davantage de liberté; la plupart des PCs familiaux se satisfont d'une partition d'échange ou swap, d'une partition / et d'une partition /home).

Lorsque vous installez un serveur, votre distribution devrait vous permettre de personnaliser vos partitions pour correspondre au tableau 14.


Tableau 14: Répertoires et tailles de partitons (cas d'un serveur).
Répertoire Taille (Mo) Motivations.
swap 2 fois la RAM C'est ici que la mémoire est étendue. La swap donne l'impression que vous avez plus de RAM qu'enréalité, par déplacement de données. L'accès au disque est évidemment lent par rapport à l'accès en RAM, mais lorsqu'il y a de nombreux programmes en attente, leur déplacement en swap permet d'alléger la RAM pour les programmes requièrent l'usage de cette dernière.
/boot 5-10 Ce répertoire ne doit pas forcément se trouver sur une autre partition de / (voir ci-dessous). Quoique vous choisissiez, il ne doit y avoir aucune possibilité qu'un fichier sous /boot puisse s'étendre sur des secteurs se trouvant au-delà de la limite des 1024 cylindres (c'est-à-dire au-delà des 500 premiers Mo de votre disque dur). C'est pourquoi /boot (ou/) sont souvent placés sur la première partition primaire du disque dur. Si cette contrainte n'est pas observée, vous obtiendrez la fameuse invite LId'un système non-amorçable. Voir la section 32.2.4.
/var 100-1000 Ici se trouvent les données variables, comme les journaux (logs), les fichiers d'attente du courriel (mail spool files), les fichiers de base de données et votre fichier cache mandataire web (web proxy cache) Ce fichier et les bases de données peuvent nécessiter un espace beaucoupplus grand, cependant). Dans le cas des distributions récentes, ce répertoire contient aussi toute donnée locale que la machine sert (fichiers FTP ou pages web). Si vous envisagez d'utiliser un fichier de cache web, enregistrez les informations dans une partition ou un disque séparés, ou prévoyez une très grande partition /var. Notez que la taille des fichiers de logs peut augmenter de manière considérable lorsque des problèmes surgissent. Vous ne désirerez pas qu'une partition pleine ou corrompue /varaffecte le reste de votre disque. D'où une partition dédiée.
/tmp 50 C'est ici que se siègent les données temporaires. Les programmes accèdent fréquemmement à ce répertoire et avec rapidité. Il est utile de faire une partition séparée car, régulièrement, les programmes doivent réellement créer un ficher temporaire, et cette pratique ne doit pas être entravée par le remplissage d'autres partitions. Cette partition est aussi celle qui a le plus de chance de se corrompre.
/usr 500-1500 C'est ici que votre distribution (Debian, Gentoo, RedHat, Mandriva, ...) se trouve. Elle est montée en lecture seule. Si vous avez un disque dont l'accès en écriture peut être désactivé physiquement (comme certains SCSI), vous pouvez mettre /usr sur un disque séparé. Ceci rendra votre système plus sûr.
/home Reste du disque Les répertoires /homedes utilisateurs sont logés ici.
/ 50-100 Tout ce qui n'est pas dans les autres répertoires se trouve sous /. Ce sont /bin (5Mo), (éventuellement) /boot (3Mo),/dev(0,1 Mo), /etc(4Mo),/lib(20 Mo), /mnt(0 Mo), /proc(0 Mo) and /sbin(4 Mo). Ces répertoires sont essentiels au démarrage du système et contiennent des utilitaires minimaux pour récupérer les autres partitions en cas d'urgence. Comme décrit ci-dessus, si /bootest dans une partition séparé, la racine (/) doit se trouver sous la limite des 1024 cylindres (c'est-à-dire dans les 500 premiers Mo de votre disque dur).

Si un autre système d'exploitation est déjà présent sur la première partition, vous pouvez taper p:

Command (m for help): p 
 
Disk /dev/hda: 255 heads, 63 sectors, 788 cylinders

Units = cylinders of 16065 * 512 bytes 
 
   Device  Boot     Start      End   Blocks   Id   System

/dev/hda1               1      312  2506108+  c   Win95 FAT32 (LBA)



Dans cette situation, vous pourrez ajouter d'autres partitions.

La même méthode vaut dans le cas des disques SCSI. La seule différence est que /dev/hd? est remplacé par /dev/sd? (voir la section 43.6.9 pour les informations sur les pilotes de périphériques SCSI).

Voici une session de partitionnement sur un disque vide avec la commande fdisk:

[root@cericon /root]# fdisk /dev/hda

Devices contains neither a valid DOS partition table, nor Sun or SGI disklabel

Building a new DOS disklabel. Changes will remain in memory only,

until you decide to write them. After that, of course, the previous

content won't be recoverable.



Avant tout, nous utilisons l'option p afin d'afficher la table des partitions courante (voir l'encadré suivant le tableau 14).

Command (m for help): p 
 
Disk /dev/hda: 255 heads, 63 sectors, 788 cylinders

Units = cylinders of 16065 * 512 bytes 
 
   Device  Boot     Start      End   Blocks   Id   System



Nous voyons qu'il n'y a pas encore eu de partionnement sur /dev/hda. A présent, ajoutons une nouvelle partition (introduisons d'abord n puis p):

Command (m for help): n 
Command action 
   e  extended

   p  primary partition (1-4) 
p



Nous voulons définir la première partition physique en la faisant commencer au début du premier cylindre:

Partition number (1-4): 1

First cylinder (1-788, default 1): 1



Nous souhaitons définir une partition de 80 Mo. fdisk calcule le dernier cylindre de manière automatique:

Last cylinder or +size or +sizeM or +sizeK (1-788, default 788): +80M


Notre partition suivante occupera le reste du disque et sera de type ``étendue'':

Command (m for help): n 
Command action 
   e  extended

   p  primary partition (1-4) 
e 
Partition number (1-4): 2 
First cylinder (12-788, default 12): 12 
Last cylinder or +size or + sizeM or +sizeK (12-788, default): 788



Nos partitions logiques correspondent à la partition étendue:

Command (m for help): n 
Command action 
   l  logical (5 or ever)

   p  primary partition (1-4) 
l 
First cylinder (12-788, default 12): 12 
Last cylinder or +size or + sizeM or +sizeK (12-788, default 788): +64M 
 
Command (m for help): n 
Command action 
   l  logical (5 or ever)



   p  primary partition (1-4) 
l 
First cylinder (21-788, default 21): 21 
Last cylinder or +size or + sizeM or +sizeK (21-788, default 788): +100M 
 
Command (m for help):n 
Command action 
   l  logical (5 or ever)

   p  primary partition (1-4) 
l 
First cylinder (34-788, default 34): 34 
Last cylinder or +size or + sizeM or +sizeK (34-788, default 788): +200M 
 
Command (m for help): n 
Command action 
   l  logical (5 or ever)

   p  primary partition (1-4) 
l 
First cylinder (60-788, default 60): 60 
Last cylinder or +size or + sizeM or +sizeK (60-788, default 788): +1500M 
 
Command (m for help): n 
Command action 
   l  logical (5 or ever)

   p  primary partition (1-4) 
l 
First cylinder (252-788, default 252): 252 
Last cylinder or +size or + sizeM or +sizeK (252-788, default 788): +788M


Le type de partition par défaut (partition type) consiste en un octet unique que le système d'exploitation prend en compte pour déterminer le type de fichier. Entrer la lettre L fournit les types connus:

Command (m for help): L 
 
0  Empty            16 Hidden FAT16    61 SpeedStor     a6 OpenBSD  [...] 
8  AIX              4d QNX4.x          82 Linux swap    db CP/M /  CTOS /  .

9  AIX bootable     4e QNX4.x 2nd part 83 Linux         e1 DOS access [...] 
12 Compaq diagnostic 56 Golden Bow     a5 BSD/386       ff BBT 
14 Hidden FAT16 <3  5c Priam Edisk 



Par défaut, fdisk fixe le type à Linux. Nous devons seulement déclarer explicitement le type de la partition swap:

Command (m for help): t 
Partition number (1-9): 5 
Hex code (type L to list codes): 82 
Changed system type of partition 5 to 82 (Linux swap)


A ce stade, nous devons activer l'indicateur ``bootable'' sur la première partition, vu que les sémaphores (flags) du BIOS ne permettront pas de démarrer un disque sans au moins une partition d'amorçage:

Command (m for help): a 
Partition number (1-10): 1


Pour résumer le partionnement:

Command (m for help): p 
 
Disk /dev/hda: 255 heads, 63 sectors, 788 cylinders 
Units = cylinders of 16065 * 512 bytes 
 
 Devices  Boot  Start    End      Blocks   Id  System

/dev/hda1    *      1     11       88326   83  Linux 
/dev/hda2          12    788     6241252+   5  Extended 
/dev/hda3          12     20       72261   82  Linux swap 
/dev/hda4          21     33      104391   83  Linux 
/dev/hda5          34     59      208813+  83  Linux 
/dev/hda6          60    251     1542208+  83  Linux 
/dev/hda7         252    788     4313421   83  Linux



A ce stade, rien n'a encore été écrit sur le disque. Nous pratiquons de la manière suivante (sachant que cette étape est irréversible):

Command (m for help): w 
The partition table has been altered! 
 
Calling iostl() to re-read partition table. 
Syncing disks. 
 
WARNING: If you have created or modified any DOS 6.x 
partitions, please see the fdisk manual page for additional 
information.


Même après avoir écrit (written) la table de partition, fdisk peut donner un avertissement au sujet du fait que le noyau ne connait pas l'existence des nouvelles partitions. Ceci arrive lorsque le disque est déjà en activité. Dans ce cas, vous devez relancer le système. Pour le partitionnement précédent, le noyau émettra l'information que voici lors du ré-amorçage de la machine (reboot) :

Partition check: 
hda: hda1 hda2 < hda5 hda6 hda7 hda8 hda9 >


L'expression <...> indique que la partition hda2 est étendue et subdivisée en cinq partitions de plus petite taille.


next up previous contents Next:  Formater les périphériques. Up: Partitions, systèmes de fichiers, Previous: Partitions étendues.   Table des matières  
1-01-2006