La réponse de kyodake est correcte, mais elle est aussi plutôt centrée sur MBR. Sous GPT, les mêmes principes s'appliquent - c'est-à-dire qu'un code de type de partition identifie l'usage prévu d'une partition. La différence est que les codes de type GPT sont des GUID sur 128 bits, par rapport aux codes sur 8 bits utilisés sous MBR. La nature des GUID signifie qu'il n'est pas nécessaire d'enregistrer les codes auprès d'une autorité centrale pour éviter les collisions ; il est statistiquement très peu probable que deux GUID soient identiques par accident.
À ma connaissance, il n'existe pas de référentiel officiel des codes de type GPT, mais ils sont documentés sur la page Wikipédia sur GPT. Un inconvénient des codes de type GPT est que, en tant que GUID, ils sont longs et maladroits - par exemple, 0FC63DAF-8483-4772-8E79-3D69D8477DE4 pour les données du système de fichiers Linux, par rapport à 0x83 pour l'équivalent MBR. Ainsi, la plupart des outils de partitionnement des disques GPT utilisent une forme de "raccourci" ou de "traduction en langage naturel" dans leurs interfaces utilisateur. Je suis l'auteur de GPT fdisk et mon objectif en l'écrivant était de créer quelque chose qui soit aussi similaire que possible à (MBR) fdisk
, j'ai donc pris l'approche d'utiliser les codes MBR comme base ; cependant, étant donné que la correspondance entre les codes de type GPT et MBR n'est pas de 1:1, j'ai multiplié les codes de type MBR par 0x100 pour obtenir les équivalents GPT. Ainsi, 0x83 du MBR est devenu 8300. Cela permet également d'avoir des codes de suivi liés qui n'existent pas en MBR, comme 8301, 8302, etc. Ces codes sont faciles à utiliser pour les personnes qui sont déjà familières avec les équivalents MBR, mais ils sont certainement arbitraires pour ceux qui ne connaissent pas les codes MBR. En interne, GPT fdisk traduit ces codes en GUID. Vous pouvez voir les GUID réels en consultant les informations détaillées sur la partition (via l'option i
dans gdisk
, par exemple). Vous pouvez également saisir un GUID arbitraire au lieu d'utiliser les codes à quatre caractères de GPT fdisk, si vous le souhaitez ou si vous devez utiliser un code que GPT fdisk ne prend pas en charge.
D'autres outils utilisent d'autres approches. La bibliothèque libparted (et donc parted
, GParted, et d'autres outils basés sur libparted) traduit certain codes de type en "drapeaux" et masque complètement d'autres codes. Cela aide à simplifier les choses pour certains utilisateurs, mais rend certaines tâches impossibles - par exemple, vous ne pouvez pas définir un code de type arbitraire avec quelque chose basé sur libparted. L'utilitaire de disque d'OS X traduit les GUID connus en descriptions en texte brut. (De ce que je me souvienne, lors de la création d'une partition, il définissait un code de type approprié en fonction du système de fichiers créé dans une partition, de manière similaire à ce que fait GParted.)
Pour la plupart, Linux n'utilise pas de codes de type, que ce soit pour MBR ou GPT. Autrement dit, vous pouvez placer votre système de fichiers Linux standard sur une partition 8300 (GPT fdisk), ou utiliser 0700 (comme c'était courant par le passé), ou assigner votre propre GUID aléatoire. Des commentaires similaires s'appliquent au RAID, LVM, swap et autres types de partitions. Il y a quelques exceptions à cette règle, cependant. Pour commencer, les programmes d'installation de distributions examinent souvent et définissent des codes de type, il se peut donc que vous ayez besoin du bon code de type sur une partition avant qu'elle ne soit utilisée correctement. Une autre exception est que systemd commence à utiliser des codes de type comme solution de secours si /etc/fstab
n'est pas correctement configuré. (C'est là que la plupart des codes 830x de GPT fdisk trouvent leur origine - ils font partie de la Spécification des Partitions Découvrables, qui est une initiative Freedesktop/systemd.) Actuellement, Ubuntu n'utilise que le code de type de système de fichiers Linux principal (8300 dans GPT fdisk) pour les systèmes de fichiers, ainsi que les codes appropriés pour LVM, RAID, swap, etc. Une grande exception aux règles "Linux n'utilise pas de codes de type" est le code de partition de démarrage BIOS (21686148-6449-6E6F-744E-656564454649 ; ef02 dans GPT fdisk ou le drapeau bios_grub
dans libparted). Ce code de type identifie une partition utilisée par GRUB et lorsque vous exécutez grub-install
, GRUB installera une partie de lui-même sur cette partition. Lorsque vous installez GRUB sur un système démarrant en mode BIOS avec un disque GPT, une partition BIOS Boot doit normalement être présente. (Il existe cependant des moyens de contourner cette règle.) Plus important encore, si vous définissez accidentellement ce code de type sur la mauvaise partition, cette partition sera endommagée lorsque vous installerez GRUB ! J'ai vu un bon nombre de personnes commettre cette erreur dans divers forums en ligne.
Les codes de type deviennent plus importants lorsqu'il s'agit d'autres systèmes d'exploitation. Windows et OS X, par exemple, ont tendance à ne pas toucher aux partitions avec des codes de type qu'ils ne reconnaissent pas. Leur liste de codes de type exclut les codes de type spécifiques à Linux, donc l'utilisation d'un code de type spécifique à Linux aide à réduire le risque que Windows ou OS X endommagent votre installation Ubuntu. Ces systèmes d'exploitation se moquent que vous utilisiez le code 8300 ou fd00 de GPT fdisk, cependant. Des problèmes peuvent survenir si vous utilisez des codes reconnus par ces autres systèmes d'exploitation. Par exemple, à un moment donné, l'GUID du type de système de fichiers Linux (0FC63DAF-8483-4772-8E79-3D69D8477DE4) n'existait pas. Je l'ai créé et l'ai intégré à la fois dans mon propre GPT fdisk et dans libparted car la pratique courante d'utiliser le code de type "Microsoft Basic Data" (EBD0A0A2-B9E5-4433-87C0-68B6B72699C7) causait des problèmes dans les configurations de dual-boot. Plus précisément, certains outils Windows pensaient que la partition Linux était une partition Windows endommagée ou non initialisée et proposaient de la préparer. Une erreur de l'utilisateur à ce moment serait désastreuse. Consultez cette page de ma part pour en savoir plus sur ce sujet.