Partition (informatique)

En informatique, une partition, région ou un disque est une section d'un support de stockage (disque dur, SSD, carte-mémoire...). Le partitionnement est l'opération qui consiste à diviser ce support en partitions dans lesquelles le système d'exploitation peut gérer les informations de manière séparée, généralement en y créant un système de fichiers, une manière d’organiser l’espace disponible.

Pour les articles homonymes, voir Partition.

Exemple schématique de partitionnement d'un support mixte Linux/Windows, avec des liens entre les partitions.

Chaque système d’exploitation a une manière différente de désigner les partitions qu’il détecte :

  • les systèmes Windows les désignent par des lettres suivies du signe deux-points (C:, D:, etc.) ;
  • les systèmes Mac OS les désignent par un identifiant sous la forme diskNsM, avec N le numéro du support et M le numéro de la partition sur le support (par exemple disk2s3 pour la troisième partition du disque 2) ;
  • les systèmes Unix ou Gnu/Linux, les désignent par un identifiant sous la forme sdXN, avec X une lettre représentant le support et N le numéro de la partition sur le support (par exemple sdb3 pour la troisième partition du disque b).

Le CIM Schema, sous-ensemble de Common Information Model, représente une partition avec la classe CIM_DiskPartition[1],[2].

On nomme « partition d'amorçage » (parfois par abus de langage « partition primaire ») celle dans laquelle le micro-code, après avoir accompli l'initialisation du matériel, va chercher les premières instructions à exécuter pour continuer le processus de démarrage. En général, ce micro-code y trouve un chargeur d'amorçage qui lui permet, soit de démarrer l'unique système d'exploitation présent sur l'ordinateur, soit de présenter à l'utilisateur un choix entre différents systèmes chargeables.

Un support de stockage peut être partitionné pour différentes architectures. On trouve ainsi le partitionnement de type MBR (partitionnement Intel) longtemps employé sur la majorité des ordinateurs personnels de type PC pour les supports d'une capacité inférieure ou égale à 2 To (le partitionnement MBR étant limité par l'adressage en 32 bits), ou GPT pour des architectures plus récentes (Macintosh, Linux, et PC depuis les années 2010) conçues pour exploiter pleinement les supports de capacité supérieure à 2 To.

Type de partition

Sur un ordinateur de type PC, un type associé à chaque partition signale quel type de système de fichiers elle abrite. Cet identificateur occupe un octet, avec la table de correspondance suivante[3] :

IDType
00Vide
01FAT12
02XENIX root
03XENIX /usr
04FAT16 <32Mio (adressage CHS)
05Étendue
06FAT16
07NTFS (et son prédécesseur HPFS)
08AIX, voir JFS
09AIX bootable
0aOS/2 Boot Manager
0bWin95 OSR2 FAT32 (adressage CHS)
0cWin95 OSR2 FAT32 (adressage LBA, appelée aussi FAT32X )
0eWin95 FAT16 (adressage LBA)
0fÉtendue (adressage LBA)
10OPUS
11Hidden FAT12
12Compaq diagnostic
14Hidden FAT16 <32M
16Hidden FAT16
17Hidden HPFS/NTFS
18AST SmartSleep
1bHidden Win95 FAT32
1cHidden Win95 FAT32 (LBA)
1eHidden Win95 FAT16 (LBA)
24NEC DOS
2fSmart File System
30AROS RDB
39Plan 9
3cPartitionMagic Recoverable Partition (PqRP)
40Venix[4] 80286
41PPC PReP Boot
42SFS
4dQNX4.x
4eQNX4.x 2de partition
4fQNX4.x 3e partition
50OnTrack DM
51OnTrack DM6 Aux
52CP/M
53OnTrack DM6 Aux
54OnTrackDM6
55EZ-Drive
56Golden Bow
5cPriam Edisk
61SpeedStor
63GNU HURD or Sys
64Novell Netware
65Novell Netware
70DiskSecure Mult
75PC/IX
80Ancien Minix
81Minix / ancien Linux
82Swap Linux / pool ZFS
83Ce type de partition est utilisé par les systèmes de fichiers ext2, ext3, ext4, ReiserFS et JFS
84OS/2 hidden C:
85Linux étendu
86FAT16 volume set
87NTFS volume set
8eLinux LVM
93Amoeba
94Amoeba BBT
9dSDF
9fBSD/OS
a0IBM Thinkpad hi
a5FreeBSD
a6OpenBSD
a7NeXTSTEP
a8Darwin UFS
a9NetBSD
abDarwin boot
afHFS+
b7BSDI fs
b8BSDI swap
bbBoot Wizard hid / Acronis Hidden
bcAcronis Secure Zone
beSolaris boot
c0Fichier CrashDump.sys CTOS-III PC (CTOS = système d'exploitation x86 [i386]
multi-tâche & multi-utilisateur de Bull & Unisys, porté sur PC au milieu des années 1990)
c1DRDOS/sec (FAT-
c4DRDOS/sec (FAT-
c6DRDOS/sec (FAT-
c7Syrinx
cdSystème de fichiers (disque système ou disque de données) CTOS-III PC
(CTOS = système d'exploitation x86 [i386] multi-tâche & multi-utilisateur de Bull & Unisys, porté sur PC au milieu des années 1990)
daNon-FS data
dbCP/M / CTOS /.
deDell Utility
dfBootIt
e1DOS access
e3DOS lecture seule
e4SpeedStor
ebBeOS file system
eeEFI GPT
efPartition système EFI (formatée en FAT12 ou FAT16 ou FAT32)
f0Linux/PA-RISC b
f1SpeedStor
f4SpeedStor
f2DOS secondaire
f7MVTFS
fdLinux raid auto
feLANstep
ffBBT

Identification des partitions dans le système d'exploitation

Trois procédés distincts sont utilisables pour désigner une partition.

Adressage matériel

Historiquement, on désignait un périphérique de stockage par le contrôleur qu'il utilisait, et dans ce périphérique la partition par son numéro.

Exemple en Linux : /dev/sdb3 : /dev est le repertoire des "devices" (=périphériques), s signifie "SCSI" ou encore "serial" (par opposition à h désignant les disques IDE à accès parallèle), d signifie "disk" ou "drive" ou "device", b désigne le deuxième disque trouvé au boot dans cette catégorie, et 3 désigne le numéro de partition sur ce disque.

Cette méthode est bien adaptée aux périphériques fixes, malgré des disparités de dénomination (Grub les numérote à partir de 0, d'autres à partir de 1).

Elle devient plus hasardeuse avec des périphériques externes (par exemple : disque dur SCSI ou USB), dont le numéro de montage va dépendre de leur ordre de branchement.

Adressage par étiquette (« label »)

Une solution pour adresser les partitions sans ambiguïté est d'assigner à chacune une étiquette, ou « label ». Une partition sera ainsi identifiable de façon claire par l'utilisateur ou l'administrateur (en Linux, les labels utilisés par e2label sont limités à 16 caractères et tronqués au-delà).

Cette solution est la plus confortable dans le cas d'un système ayant un utilisateur unique. Dans le cas de plusieurs utilisateurs, il leur revient de se mettre d'accord pour éviter les conflits possibles dus à une collision d'étiquettes.

L'homonymie d'étiquettes peut aussi être un effet recherché pour substituer aisément à un disque un autre disque avec des partitions possédant le même contenu (mais éventuellement des tailles différentes : remplacement d'un support par un autre proposant davantage d'espace, substitution d'une copie de secours ou de test, etc.).

Adressage par UUID

L'UUID Universally unique identifier ») est un identificateur de 128 bits généré automatiquement au formatage d'une partition. Le risque de collision de deux identificateur est infime (2128 = 340 282 366 920 938 463 463 374 607 431 768 211 456), ce qui permet d'exclure tout risque de collision – excepté dans le cas d'une partition clonée bit à bit.

On perd évidemment la lisibilité du label. Un UUID est généralement représenté en hexadécimal avec des tirets pour aider sa lecture. En usage domestique, les quatre derniers caractères pourront suffire pour identifier rapidement le périphérique sur une étiquette papier.

Exemple : e8bac219-c30c-4315-9dc5-f47075bf697e

En Linux, la commande (administrateur) blkid permet de disposer des trois informations, si elles existent, pour chaque périphérique de stockage présent sur le système :

mint17 ~ # blkid
/dev/sda1: SEC_TYPE="msdos" LABEL="DellUtility" UUID="3030-3030" TYPE="vfat" 
/dev/sda2: LABEL="RECOVERY" UUID="FC10BC6C10BC2F8E" TYPE="ntfs" 
/dev/sda3: LABEL="OS" UUID="00B8457CB8457168" TYPE="ntfs" 
/dev/sdb1: UUID="c298c9ac-f202-4d1d-81a9-31dd69f62992" TYPE="ext4" 
/dev/sdb2: LABEL="Mint 17.2 Mate64" UUID="c236a94f-6696-49b5-9892-3d4f4324eee4" TYPE="ext4" 
/dev/sdb3: LABEL="homecommon" UUID="e8bac219-c30c-4315-9dc5-f47075bf697e" TYPE="ext4" 
/dev/sdc1: LABEL="SAMSUNG" UUID="C43CC9B13CC99EB4" TYPE="ntfs" 

Types de partitionnement

Il existe différents types de partitionnement d’un support de stockage, selon le format de la table de partitionnement utilisée. En 2015, les deux principaux formats de table de partitionnement, tous deux conçus par Intel sont celui utilisant le MBR (datant de 1983) et celui utilisant des GUID[5] (datant de 2002[6]).

Partitionnement MBR

Cette partie traite de la façon historique de partitionner les supports de stockage (à l'origine des disques durs exclusivement) d'ordinateurs compatibles PC. Cette méthode a été fixée dans les années 1980 et perdure encore de nos jours (2015). Cependant, le remplacement des BIOS des ordinateurs personnels par l'EFI devrait achever la transition vers le mode de partitionnement GPT.

Tables de partitions

Les informations sur les partitions sont enregistrées sur le support lui-même dans des zones appelées tables de partitions. La table de partitions principale est contenue dans le tout premier secteur du support (dit secteur d'amorçage dans le cas MBR il contient également le code du programme d'amorçage) ou dans les premiers (dans le cas GPT avec une copie de secours à la fin du support). Chaque entrée d'une table de partitions contient l'adresse de début de la partition et sa taille. Il peut s'agir de partitions primaires, qui contiendront un système de fichiers, ou (dans le cas MBR) de partitions étendues, qui contiendront à leur tour une table de partitions ayant la même structure que la table principale.

Partitions primaires

La partition d'amorçage d'un système Windows est forcement la première partition primaire.

La partition d'amorçage d'un système GNU/Linux peut être n'importe où, y compris sur un support externe.

Il existe des restrictions sur les tables de partitions, certaines liées à la place occupée dans le secteur d'amorçage, d'autres destinées à simplifier le fonctionnement du système d'exploitation. Dans la table de partitions principale, on peut créer au plus quatre partitions, qui sont ou bien quatre partitions primaires, ou bien une à trois partitions primaires associée(s) à une partition étendue (généralement la dernière). Une partition étendue permet de s'affranchir de la limite historique de quatre partitions par support.

Partition étendue, partitions secondaires, etc.

Lorsque l'on a besoin de plus de quatre partitions, il faut donc créer une partition étendue. Cette dernière est simplement une partition primaire spéciale qui va contenir à son tour des partitions secondaires (souvent appelées partitions logiques). L'outil fdisk sous Linux gère jusqu'à 60 partitions : trois partitions principales et une partition étendue contenant 56 partition logiques.

Ces partitions secondaires ne se distinguent nullement pour un programme utilisateur (ni pour le système) des autres partitions. Cependant seules les partitions primaires sont directement reconnues par le BIOS, qui prend le contrôle au démarrage, lors de la séquence de boot, avant d'en passer le contrôle soit directement à un système d'exploitation, soit à un sélecteur de système d'exploitation souhaité parmi ceux installés.

La table de partition étendue est contenue dans l'EBR. L'EBR peut lui aussi, si besoin, contenir une partition étendue qui contiendra à ce moment-là des partitions tertiaires et ainsi de suite. Cette possibilité théorique est toutefois rarement requise en 2015.

Partitionnement GPT

Auparavant les ordinateurs Apple utilisaient un système spécifique de partitionnement, lisible sur tous les types de Macintosh mais ne permettant pas le démarrage sur un Mac Intel, lequel ne fonctionne que sur un PowerPC.

Depuis le déploiement des ordinateurs Apple équipés de processeurs Intel ainsi que des serveurs équipés de processeurs Itanium, le type de partitionnement employé par ces systèmes a été supplanté par le GPT (GUID Partition Table). Ce nouveau format de partitionnement, qui n'est pas lisible directement par un compatible PC équipé d'un BIOS ou par un Macintosh à PowerPC ou 680x0, s'est progressivement généralisé sur PC avec l'apparition des cartes-mères gérées par UEFI au lieu du BIOS originel.

Outils

Outils de partitionnement ou formatage

Voici une liste non exhaustive d'outils permettant de créer des partitions et (pour certains d'entre eux) de formater ces partitions :

  • fdisk : Utilitaire utilisé sous DOS, Linux, macOS et certains systèmes UNIX (comme FreeBSD) pour manipuler les partitions et la table de démarrage. Bien que le nom de cet outil soit identique sur ces quatre systèmes, il ne s'agit pas du même programme. Sous DOS, l'utilitaire est présenté sous forme de menus ; sous Linux, sous forme d'un outil en ligne de commande ; sous macOS, il faut ouvrir une fenêtre Terminal pour l'utiliser de manière interactive et sous FreeBSD (par exemple), il prendra la forme d'un programme en console.
  • diskpart est l'utilitaire de partitionnement en ligne de commande de Windows depuis Windows 2000.
  • diskmgmt.msc est l'utilitaire MMC de gestion des disques durs et autres supports de stockage de Windows depuis Windows 2000.
  • DiskDrake est un utilitaire de Mandriva et de Mageia permettant de créer, enlever, redimensionner les partitions via une interface visuelle.
  • Utilitaire de disque est le gestionnaire de supports de stockage livré avec macOS pour manipuler les partitions (nommées « volumes » sur le système Mac).
  • sfdisk est un utilitaire disponible sous Linux pour manipuler les partitions. C'est l'un des seuls utilitaires à pouvoir être utilisé en mode non interactif. Des problèmes sont rapportés lors de la création de partitions.
  • cfdisk est un utilitaire disponible sous Linux pour manipuler les partitions. Il est présenté sous forme de menus à la manière de fdisk sous DOS.
  • pdisk est un utilitaire disponible sous Linux pour manipuler des partitions Macintosh sur architecture PowerPC.
  • PartitionMagic est un utilitaire payant de manipulation de partitions fonctionnant sous DOS ou Windows, développé par PowerQuest puis par Symantec Corporation.
  • EASEUS Partition Master est un logiciel, gratuit à l'origine mais devenu payant, et fiable sous Windows permettant de gérer toutes les partitions, créer, déplacer, redimensionner sans pertes de données.
  • O&O PartitionManager.
  • GNU Parted est un éditeur de partitions. Il contient la bibliothèque libparted ainsi qu'un frontal en ligne de commande. Une interface graphique le transforme sous Linux en Gparted, beaucoup plus simple d'emploi.
  • GNU fdisk se définit comme une alternative à GNU parted.
  • QtParted se définit comme « un clone de Partition Magic écrit en C++ en utilisant la bibliothèque graphique Qt ». Ce dernier est en fait une implémentation graphique de GNU parted.
  • GParted est une autre implémentation graphique de GNU parted. Il utilise la bibliothèque graphique GTK et peut manipuler de nombreux formats de systèmes de fichiers. À noter que Gparted existe en version LiveCD qui permet de préparer/modifier des partitions sans système installé sur la machine.
  • TestDisk est un programme qui permet de récupérer une partition dont la table aurait été effacée.
  • Atola Partition find and mount[7] est un programme gratuit qui permet de récupérer et réparer une partition sur un disque dur. Il est sans risque, ce qui n'est pas le cas de Testdisk.[non neutre] Fonctionne sous Windows.
  • fat32format, de Ridgecrop Consultants Ltd, permet de formater une partition de plus de 32 Gio en FAT32.
  • MiniTool Partition Wizard, gratuiciel comportant divers outils de partitionnement pour Windows[8].
  • Disk director suite d'Acronis, édité en France par Micro Application sous le nom Partition suite 9, est très complet. Il permet le formatage, le déplacement sans pertes de données, la création, le redimensionnement, la copie, etc. des partitions de formats courants et moins courants. De plus un logiciel de gestion « multi-OS » est fourni afin de faciliter les changements de système sans redémarrage.
  • Partition Expert est un programme payant édité par Micro Application qui permet la gestion, le partitionnement, le nettoyage des disques durs. Il est très complet mais on rapporte des dysfonctionnements avec Microsoft Windows Vista.
  • Partition Manager 10 Professional, est un programme édité par Micro Application, qui permet la gestion complète des partitions : création, fusion, redimensionnement, copie, restauration des partitions perdues, effacées ou endommagées, gestion multi-OS, défragmentation. La gestion est effectuée sans pertes de données. Outil complet.
  • BootIt NG est un utilitaire payant édité par TeraByte Unlimited. Il permet de créer, copier et redimensionner des partitions. Il inclut un gestionnaire de démarrage permettant de définir plusieurs configurations différentes. Parmi ses spécificités, la possibilité de gérer plus de 4 partitions primaires via la création d'un MBR étendu (EMBR) et la possibilité de réaliser des backups de partitions complètes.
  • FIPS est un des premiers programmes (si ce n'est le premier) permettant de redimensionner une partition FAT16 ou FAT32 sans l'effacer. On le trouvait sur les CD d'installation des distributions Linux (Red Hat 5.2 par exemple), pour réduire les partitions de systèmes MS-DOS ou Windows. Il fonctionne sous MS-DOS[9].

Outils de lecture de partition

  • explore2fs permet de lire le contenu d'une partition ext2 ou ext3 depuis Windows ;
  • ext2ifs Ext2 Installable File System for Windows
  • les Mtools permettent d'accéder au contenu de partitions FAT depuis UNIX ;
  • MacDrive permet de lire et d'écrire le contenu de disques durs / SSD et CD-ROM Macintosh (HFS Extended (HFS+) et HFS Standard (HFS)) depuis Windows.

Notes et références

Liens externes

  • Portail de l’informatique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.