GUID Partition Table
aus Wikipedia, der freien Enzyklopädie
GUID Partition Table (GPT), zu deutsch GUID-Partitionstabelle, ist ein Standard für das Format von Partitionstabellen auf Festplatten oder anderen Datenträgern. Die Spezifikation ist Teil des EFI-Standards, der das BIOS in PCs ersetzen sollte. GPT ist somit der Nachfolger der MBR-Partitionstabellen.
Inhaltsverzeichnis |
[Bearbeiten] Aufbau
Das GPT-Schema teilt einen Datenträger in folgender Bereiche ein:
- MBR
- primäre GPT bestehend aus Header und Partitionseinträgen
- Partitionen
- sekundäre GPT bestehend aus Partitionseinträgen und Header
Die sekundäre GPT am Ende des Datenträgers ist eine Kopie der primären GPT am Anfang des Datenträgers. Durch diese Redundanz kann im Fehlerfall die Partitionstabelle wiederhergestellt werden. Da die GPT eine Prüfsumme enthält, kann festgestellt werden, welcher der beiden GPT konsistent ist.
[Bearbeiten] MBR-Partitionstabelle
Im ersten Block des Datenträgers (LBA 0) befindet sich der Master Boot Record (MBR). Dort befindet sich eine klassische MBR-Partitionstabelle mit einem Eintrag, der den Rest des Datenträgers belegt. Für ein Betriebssystem, das nur MBR- aber keine GPT-Partitionstabellen lesen kann, erscheint der gesamte Platz des Datenträgers als belegt.
[Bearbeiten] Header der GUID-Partitionstabelle
Im zweiten Block (LBA 1) befindet sich der Header der primären GPT. Der Header der sekundären GPT befindet sich im letzten Block (LBA −1).
Im Header der GPT sind folgende Informationen abgelegt:
- Signatur (8 Bytes) – „EFI PART“
- Revision (4 Bytes) – 0x00010000
- Header-Größe (4 Bytes)
- Header-Prüfsumme (4 Bytes)
- Reservierter Platz (4 Bytes) – darf nicht belegt sein
- Position der primären Partitionstabelle (8 Bytes)
- Position der sekundären Partitionstabelle (8 Bytes)
- Position des ersten benutzbaren Blocks (8 Bytes)
- Position des letzten benutzbaren Blocks (8 Bytes)
- GUID (16 Bytes)
- Position der Partitionstabelle (8 Bytes)
- Anzahl der Partitionen (4 Bytes)
- Größe des Partitionseintrags (4 Bytes)
- Partitionstabellen-Prüfsumme (4 Bytes) – CRC32
[Bearbeiten] Partitionseintrag
Die Partitionseinträge werden in den darauffolgenden 32 Blöcken (LBA 2 bis 33 bzw. LBA −33 bis −2) abgelegt. Ein Partitionseintrag besteht aus 128 Byte. Somit werden vier Partitionseinträge pro Block abgelegt.
Im Partitionseintrag selbst sind folgende Daten hinterlegt:
- Partitionstyp (ID) (16 Bytes)
- GUID der Partition (16 Bytes)
- Beginn der Partition (8 Bytes)
- Ende der Partition (8 Bytes)
- Attribute (8 Bytes)
- Partitionsname (72 Bytes)
[Bearbeiten] Begrenzungen
Die GPT verwendet Logical Block Addressing (LBA) mit 64 Bit, so dass Festplatten bei 512 Byte Sektorgröße bis zu einer Gesamtgröße von 8192 Exabyte adressiert werden und diese in bis zu 128 Partitionen aufgeteilt werden können.
[Bearbeiten] Unterstützung in Betriebssystemen
Für Betriebssysteme, die auf der IA64-Architektur laufen, ist die Unterstützung von GPT zwingend notwendig, da diese Rechner EFI zum Booten verwenden. Darunter fallen die entsprechenden 64-Bit-Versionen von FreeBSD, HP-UX, Linux, NetBSD, OpenVMS und Microsoft Windows. Auch Mac OS X unterstützt es seit Einführung der auf Intel-Doppelkern-Prozessoren basierenden Apple Macintosh Anfang 2006, sowie die seit Anfang 2005 verfügbare, auf IA64-Architektur angepasste Version von Solaris.
Die normalen, abwärtskompatiblen Versionen von Microsoft Windows XP, die noch für die 32-Bit-i386-Architektur entwickelt wurden, können auf einer GPT-Festplatte nur mit Einschränkungen installiert werden. Unter anderem benutzen sie nur den Master Boot Record (MBR), um Partitionierungsdaten zu erhalten. Es stehen so nur maximal drei Partitionen zur Verfügung, da der MBR nicht mehr als vier Einträge zulässt, die erste Partition für die EFI-Firmware reserviert ist, und erweiterte Partitionen, die mehrere logische Partitionen enthalten konnten, bei der GPT nicht mehr unterstützt werden.
Bis zum Erscheinen von Windows Vista Anfang 2007 gab es keine 64-Bit-Windows-Version, die an normale Anwender gerichtet war, trotz der bereits 2005 erschienenen Windows XP Professional x64 Edition. Jedoch war bei dessen Erscheinen die entsprechende Treiberunterstützung nur bei ausgesuchter Hardware vorhanden. Seit für die meiste Hardware auch 64-Bit-Vista-Treiber erscheinen ist die Unterstützung der x64-Version von XP deutlich besser geworden. Leider scheint sich auch das Treiberproblem bei der 2-TB-Grenze bei Festplatten größer 2 TB, wie bereits bei 128 GB, zu wiederholen[1] bei dem Daten in den ersten 2 TB überschrieben werden wenn auf einem Bereich über 2 TB geschrieben wird. Dies ist nur für die GPT unterstützenden Windows Versionen relevant, da frühere Versionen in 32 Bit, außer den letzten Serverversionen der 32-Bit-Versionen auf Windows XP basierend, keine GPT[2] Datenträger lesen können, und somit auch keine Unterstützung von Partitionen größer 2 TB bieten.
[Bearbeiten] GUIDs und deren Zuordnung
| Betriebssystem | Partitionstyp | GUID |
|---|---|---|
| (Kein Betriebssystem) | Unbenutzt | 00000000-0000-0000-0000-000000000000 |
| MBR | 024DEE41-33E7-11D3-9D69-0008C781F39F | |
| EFI System-Partition | C12A7328-F81F-11D2-BA4B-00A0C93EC93B | |
| Windows | von Microsoft reservierte Partition | E3C9E316-0B5C-4DB8-817D-F92DF00215AE |
| Basic Data Partition | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 | |
| Logical Disk Manager Partition für Meta-Daten | 5808C8AA-7E8F-42E0-85D2-E1E90434CFB3 | |
| Logical Disk Manager Partition für Daten | AF9B60A0-1431-4F62-BC68-3311714A69AD | |
| HP-UX | Partition für HP-UX-LVM | 75894C1E-3AEB-11D3-B7C1-7B03A0000000 |
| Service Partition | E2A1E728-32E3-11D6-A682-7B03A0000000 | |
| Linux | Data partition | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
| RAID partition | A19D880F-05FC-4D3B-A006-743F0F84911E | |
| Swap partition | 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F | |
| Partition für Linux-LVM | E6D6D379-F507-44C2-A23C-238F2A3DF928 | |
| Reserved | 8DA63339-0007-60C0-C436-083AC8230908 | |
| FreeBSD | Data partition | 516E7CB4-6ECF-11D6-8FF8-00022D09712B |
| Swap partition | 516E7CB5-6ECF-11D6-8FF8-00022D09712B | |
| Unix File System (UFS) partition | 516E7CB6-6ECF-11D6-8FF8-00022D09712B | |
| Partition für FreeBSD-LVM (Vinum) | 516E7CB8-6ECF-11D6-8FF8-00022D09712B | |
| ZFS partition | 516E7CBA-6ECF-11D6-8FF8-00022D09712B | |
| Mac OS X | Partition für Hierarchical File System (HFS+) | 48465300-0000-11AA-AA11-00306543ECAC |
| Partition für UFS | 55465300-0000-11AA-AA11-00306543ECAC | |
| Partition für Software-RAID | 52414944-0000-11AA-AA11-00306543ECAC | |
| Partition für Apple TV Recovery | 5265636F-7665-11AA-AA11-00306543ECAC | |
| Solaris | Boot partition | 6A82CB45-1DD2-11B2-99A6-080020736631 |
| Root partition | 6A85CF4D-1DD2-11B2-99A6-080020736631 | |
| Swap partition | 6A87C46F-1DD2-11B2-99A6-080020736631 | |
| Backup partition | 6A8B642B-1DD2-11B2-99A6-080020736631 | |
| /usr partition | 6A898CC3-1DD2-11B2-99A6-080020736631 | |
| /var partition | 6A8EF2E9-1DD2-11B2-99A6-080020736631 | |
| /home partition | 6A90BA39-1DD2-11B2-99A6-080020736631 | |
| EFI_ALTSCTR | 6A9283A5-1DD2-11B2-99A6-080020736631 | |
| Reservierte Partition | 6A945A3B-1DD2-11B2-99A6-080020736631 | |
| 6A9630D1-1DD2-11B2-99A6-080020736631 | ||
| 6A980767-1DD2-11B2-99A6-080020736631 | ||
| 6A96237F-1DD2-11B2-99A6-080020736631 | ||
| 6A8D2AC7-1DD2-11B2-99A6-080020736631 |
[Bearbeiten] Quellen
- ↑ c’t 2/2009 RAID-System: 4 TByte in einem Gehäuse, S. 54 http://www.heise.de/ct/09/02/006/ Unendliche Weiten c’t S. 54
- ↑ Microsoft technet GUID-Partitionstabelle http://technet.microsoft.com/de-de/library/cc773223.aspx

