Annexe A. Introduction aux partitions de disque

Note

Cette annexe ne s'applique pas forcément aux architectures autres que AMD64 et Intel 64. Toutefois, les concepts généraux mentionnés ici sont probablement applicables.
Cette section traite des concepts de disque de base, des stratégies de repartitionnement de disque, du modèle d'appellation des partitions utilisé par les systèmes Linux et de sujets connexes.
Si vous vous êtes familiarisé avec les partitions de disque, vous pouvez passer à la Section A.2, « Stratégies de repartitionnement de disques » pour obtenir plus d'informations sur le processus de libération d'espace disque préalable à une installation de Red Hat Enterprise Linux.

A.1. Concepts de base concernant le disque dur

Les disques durs ont une fonction très simple — ils permettent de conserver des données et de les récupérer de façon fiable à la demande.
Concernant les questions telles que le partitionnement de disques, il est important de connaître le matériel sous-jacent utilisé. Cependant, au vu de la complexité et de l'exhaustivité de la théorie, seuls les concepts de bases seront expliqués ici. Cette annexe utilise un ensemble de diagrammes de disques simplifiés afin d'expliquer les processus et théories des partitions.
La Figure A.1, « Disque dur non utilisé » illustre un disque dur qui n'a pas encore été utilisé.
Disque dur non utilisé

Figure A.1. Disque dur non utilisé

A.1.1. Systèmes de fichiers

Pour stocker des données sur un disque, il est avant tout nécessaire de formater le disque. Le formatage (aussi connu sous le nom de « création d'un système de fichiers ») écrit des informations sur le disque, créant un ordre à partir de l'espace vide sur un disque non-formaté.
Disque dur avec système de fichiers

Figure A.2. Disque dur avec système de fichiers

Comme la Figure A.2, « Disque dur avec système de fichiers » l'indique, l'ordre imposé par un système de fichiers entraîne un certain nombre de compromis :
  • Un faible pourcentage de l'espace disponible du pilote est utilisé pour stocker des données concernant le système de fichiers et peut être considéré comme espace supplémentaire.
  • Un système de fichiers sépare l'espace restant en petits segments de taille cohérente. Sur Linux, ces segments sont connus en tant que blocs. [4]
Veuillez noter qu'il n'existe pas de système de fichiers unique et universel. Comme l'illustre la Figure A.3, « Disque dur avec un système de fichiers différent », un disque dur peut contenir un système de fichiers parmi de nombreux autres. Les différents systèmes de fichiers ont tendance à être incompatibles ; cela signifie qu'un système d'exploitation prenant en charge un système de fichiers (ou une poignée de types de systèmes de fichiers apparentés) ne pourra peut-être pas en prendre en charge un autre. Cependant, Red Hat Enterprise Linux prend par exemple en charge un vaste éventail de systèmes de fichiers (dont beaucoup sont couramment utilisés par d'autres systèmes d'exploitation), ce qui facilite l'échange de données.
Disque dur avec un système de fichiers différent

Figure A.3. Disque dur avec un système de fichiers différent

L'écriture d'un système de fichiers sur le disque n'est que la première étape. Ce processus a pour objectif de stocker et de récupérer des données. Le graphique ci-dessous montre un disque après écriture de certaines données :
Disque dur sur lequel figurent des données

Figure A.4. Disque dur sur lequel figurent des données

Comme l'illustre la Figure A.4, « Disque dur sur lequel figurent des données », certains des blocs précédemment vides contiennent à présent des données. Il est cependant impossible de déterminer le nombre de fichiers se trouvant sur cette unité ; il peut y en avoir un seul ou plusieurs, étant donné que tous les fichiers utilisent au moins un bloc et que certains fichiers utilisent plusieurs blocs. Un autre point important est que les blocs utilisés n'ont pas la forme d'une zone continue ; les blocs utilisés et inutilisés peuvent être intercalés. C'est ce qu'on appelle la fragmentation. Celle-ci peut jouer un rôle en cas de tentative de redimensionnement d'une partition existante.
Comme toutes les technologies en rapport avec l'informatique, les disques durs évoluent en permanence. Cela se traduit notamment par une augmentation de leur taille, non de leur taille physique, mais de leur capacité de stockage d'informations. C'est précisément ce gain de capacité qui a induit une évolution fondamentale dans le mode d'utilisation des disques durs.

A.1.2. Partitions : transformation d'un disque dur en plusieurs disques

Les disques peuvent être divisés en partitions. Chaque partition est accessible comme s'il s'agissait d'un disque distinct. Ceci est possible grâce à l'ajout d'une table des partitions.
Voici plusieurs raisons d'allouer de l'espace disque sur des partitions disque séparées :
  • Séparation logique des données du système d'exploitation à partir des données utilisateur
  • Capacité à utiliser différents systèmes de fichier
  • Capacité à exécuter plusieurs systèmes d'exploitation sur une machine
Il existe actuellement deux agencements standard de partitionnement pour les disques durs physiques : MBR (Master Boot Record) et la table de partition GPT (GUID Partition Table). MBR est une ancienne méthode de partitionnement de disque utilisée avec des ordinateurs basés BIOS. GPT est un agencement de partitionnement plus récent faisant partie de l'UEFI (Unified Extensible Firmware Interface). Cette section et la Section A.1.3, « Partitions à l'intérieur de partitions — Présentation des partitions étendues » décrivent principalement le modèle de partitionnement de disque MBR (Master Boot Record). Pour en savoir plus sur l'agencement de partitionnement GPT (GUID Partition Table), voir la Section A.1.4, « Table de partition GPT (GUID Partition Table) ».

Note

Même si les schémas de ce chapitre montrent la table des partitions comme étant distincte du disque dur réel, ce n'est pas rigoureusement exact. En réalité, elle est stockée au tout début du disque, avant tout système de fichiers ou toute donnée de l'utilisateur. C'est par souci de clarté que nous l'avons séparée du reste de l'unité sur les schémas.
Disque dur avec table des partitions

Figure A.5. Disque dur avec table des partitions

Comme l'indique la Figure A.5, « Disque dur avec table des partitions », la table des partitions est divisée en quatre sections ou quatre partitions primaires. Une partition primaire est une partition sur un disque dur qui ne peut contenir qu'un seul lecteur logique (ou section). Chaque section peut accueillir les informations nécessaires pour la définition d'une simple partition, ce qui signifie que la table des partitions ne peut pas définir plus de quatre partitions.
Chaque table des partitions contient un ensemble d'informations portant sur les caractéristiques importantes de la partition telles que :
  • Les points du disque où la partition commence et se termine
  • Le caractère « actif » ou non de la partition
  • Le type de la partition
Les points du début et de la fin définissent la taille et la location de la partition sur le disque. L'indicateur « active » est utilisé par les chargeurs de démarrage de certains systèmes d'exploitation. En d'autres termes, le système d'exploitation se trouvant dans la partition marquée comme étant « active » est démarré.
Le type est un nombre identifiant l'utilisation anticipée de la partition. Certains systèmes d'exploitation utilisent le type de partition pour dénoter un type de système de fichiers en particulier, pour indiquer que la partition est associée à un système d'exploitation en particulier, pour indiquer que la partition contient un système d'exploitation de démarrage, ou pour indiquer une combinaison de ces trois possibilités.
Pour obtenir un exemple de disque dur ayant une seule partition, voir la Figure A.6, « Disque dur avec partition unique ».
Disque dur avec partition unique

Figure A.6. Disque dur avec partition unique

Très souvent, une seule partition occupe tout le disque, ce qui correspond à la méthode utilisée avant l'existence des partitions. La table des partitions n'utilise qu'une seule entrée pointant sur le début de la partition.
Nous avons étiqueté cette partition comme étant de type « DOS ». Même si ce n'est que l'un des différents types de partitions possibles qui sont répertoriés dans la Tableau A.1, « Types de partition », il est en accord avec la discussion qui suit.
Tableau A.1, « Types de partition » contient la liste de quelques types de partitions courantes (et obscures), avec leurs valeurs numériques hexadécimales.

Tableau A.1. Types de partition

Type de partition Valeur Type de partition Valeur
Vide 00 Novell Netware 386 65
DOS 12-bit FAT 01 PIC/IX 75
XENIX root 02 Anciennes MINIX 80
XENIX usr 03 Linux/MINUX 81
DOS 16-bit <=32M 04 Swap Linux 82
Étendue 05 Natif Linux 83
DOS 16-bit >=32 06 Linux étendue 85
OS/2 HPFS 07 Amoeba 93
AIX 08 Amoeba BBT 94
AIX de démarrage 09 BSD/386 a5
Gestionnaire de démarrage OS/2 0a OpenBSD a6
Win95 FAT32 0b NEXTSTEP a7
Win95 FAT32 (LBA) 0c BSDI fs b7
Win95 FAT16 (LBA) 0e Swap BSDI b8
Win95 étendue (LBA) 0f Syrinx c7
Venix 80286 40 CP/M db
Novell 51 accès DOS e1
PReP Boot 41 DOS R/O e3
GNU HURD 63 DOS secondaire f2
Novell Netware 286 64 BBT ff

A.1.3. Partitions à l'intérieur de partitions — Présentation des partitions étendues

Si quatre partitions ne vous suffisent pas, vous pouvez utiliser des partitions étendues pour créer des partitions supplémentaires. Pour cela, définissez le type de partition comme « étendu ».
Une partition étendue est similaire à un lecteur de disque — elle possède une table de partition faisant référence à une ou plusieurs partitions (maintenant appelées partitions logiques, contrairement aux quatre partitions primaires) entièrement contenue(s) dans la partition étendue elle-même. La Figure A.7, « Disque dur avec partition étendue » montre un lecteur de disque avec une partition primaire et une partition étendue contenant deux partitions logiques (ainsi que de l'espace libre non-partitionné).
Disque dur avec partition étendue

Figure A.7. Disque dur avec partition étendue

Comme le montre cette illustration, il existe une différence entre une partition primaire et une partition logique (il ne peut y avoir que quatre partitions primaires, mais le nombre de partitions logiques est illimité). Cependant, étant donné la manière utilisée pour accéder aux partitions sous Linux, il est déconseillé de définir plus de 12 partitions logiques sur un seul disque dur.

A.1.4. Table de partition GPT (GUID Partition Table)

La table de partition GPT (GUID Partition Table) est un nouveau modèle de partitionnement basé sur l'utilisation de GPT (Globally Unique Identifiers). GPT a été développé pour gérer les limitations de la table de partitions MBR, plus particulièrement l'espace de stockage adressable maximum limité d'un disque. Contrairement à MBR, qui est utilisable pour adresser un espace de stockage supérieur à 2,2 téra-octets, GPT peut être utilisé avec des disques durs supérieurs à cela ; la taille de disque adressable maximum est de 2,2 zéta-octets. De plus, GPT prend en charge par défaut la création de 128 partitions primaires. Ce chiffre peut être plus important en allouant plus d'espace à la table de partition.
Les disques GPT utilisent LBA (Logical Block Addressing) et leur agencement de partition est comme suit :
  • Pour conserver la compatibilité rétroactive avec des disques MBR, le premier secteur (LBA 0) de GPT est réservé aux données MBR et est appelé « protective MBR ».
  • Le premier en-tête GPT commence sur le deuxième bloc logique (LBA 1) du périphérique. L'en-tête contient le GUID du disque, l'emplacement de la première table de partition, l'emplacement du deuxième en-tête GPT et ses sommes de contrôle CRC32 ainsi que la première table de partition. Il spécifie également le nombre d'entrées de partitions de la table.
  • La table GPT principale inclut, par défaut, 128 entrées de partition, chacune avec une taille d'entrée de 128 octets, son GUID de type de partition et un GUID de partition unique.
  • La table GPT secondaire est identique à la table GPT principale. Elle est généralement utilisée comme table de sauvegarde au cas où la première table de partition soit endommagée.
  • Le second en-tête GPT se situe sur le dernier secteur logique du disque et il peut être utilisé pour récupérer les informations d'une table GPT en cas d'endommagement du premier en-tête. Il contient le GUID du disque, l'emplacement de la seconde table de partitions, l'emplacement du deuxième en-tête GPT et ses sommes de contrôle CRC32 ainsi que la seconde table de partitions, et le nombre d'entrées de partitions de la table.

Important

Il doit y avoir une partition de démarrage du BIOS pour que le chargeur de démarrage soit installé avec succès sur un disque qui contient une GPT (GUID Partition Table). Cela inclut des disques initialisés par Anaconda. Si le disque contient déjà une partition de démarrage du BIOS, il peut être réutilisé.


[4] Les blocs sont dimensionnés de façon uniforme, contrairement à ce que semblent indiquer nos illustrations. Gardez à l'esprit qu'une unité moyenne de disque contient des milliers de blocs. Ces images ont par conséquent été simplifiées dans le cadre de cette présentation.