Warum gibt es zwischen jeder logischen Partition 2048 Sektoren freien Speicherplatzes?

8

Ich kenne das erweiterte Format und das Festlegen von 2048 freien Sektoren am Anfang einer Festplatte. Aber ich habe gerade eine Partitionstabelle meiner Festplatte von MS-DOS in GPT konvertiert und Folgendes festgestellt:

Vor:

Number  Start   End     Size    Type      File system     Flags
        32,3kB  1049kB  1016kB            Free Space
 1      1049kB  31,5GB  31,5GB  primary   ntfs            
 2      31,5GB  43,0GB  11,5GB  primary
 3      43,0GB  44,1GB  1074MB  primary   linux-swap(v1)
 4      44,1GB  80,0GB  36,0GB  extended
 5      44,1GB  54,6GB  10,5GB  logical
 6      54,6GB  65,0GB  10,5GB  logical   ext4            boot
 7      65,0GB  80,0GB  15,0GB  logical
        80,0GB  80,0GB  56,8kB            Free Space

Nach:

Number  Start   End     Size    File system     Name                  Flags
        17,4kB  1049kB  1031kB  Free Space
 1      1049kB  31,5GB  31,5GB  ntfs            Microsoft basic data  msftdata
 2      31,5GB  43,0GB  11,5GB                  Linux filesystem
 3      43,0GB  44,1GB  1074MB  linux-swap(v1)  Linux swap
        44,1GB  44,1GB  1049kB  Free Space
 5      44,1GB  54,6GB  10,5GB                  Linux filesystem
        54,6GB  54,6GB  1049kB  Free Space
 6      54,6GB  65,0GB  10,5GB  ext4            Linux filesystem
        65,0GB  65,0GB  1049kB  Free Space
 7      65,0GB  80,0GB  15,0GB                  Linux filesystem
        80,0GB  80,0GB  39,9kB  Free Space

Wie Sie sehen können, gibt es dort 3 zusätzliche Lücken (2048 Sektoren), jeweils für eine erweiterte Partition. Es gibt keine Lücken zwischen der 1. und 2. sowie der 2. und 3. Partition.

Weiß jemand, warum die Lücken nur zwischen logischen Partitionen bestehen?

Mikhail Morfikov
quelle
Wie genau haben Sie die Festplatte "von MBR zu GPT" konvertiert? Es gibt keinen MBR-Partitionstabellentyp. Vielleicht meinten Sie DOS, aber wie haben Sie konvertiert?
Phunehehe
Ich habe gerade gdisk verwendet.
Mikhail Morfikov
Wie konvertiert man mit gdisk? Dies ist wichtig, da Sie (oder das von Ihnen verwendete Programm) beim Konvertieren möglicherweise etwas falsch gemacht haben.
Phunehehe
1
Ich folgte diesen Schritten - wiki.archlinux.org/index.php/…
Mikhail Morfikov
Es ist nicht möglich zu erkennen, ohne die Partitionstabelle mit Einheiten zu sehen, die auf Plattensektoren eingestellt sind (2.048 512-Byte-Sektoren sind 1 MiB, weniger als die Genauigkeit der aufgelisteten Dezimalzahlen). MS-DOS-Partitionen haben seltsames emotionales Gepäck, das die Ausrichtung auf verschiedene (jetzt willkürliche) Zahlen erzwingt und am Ende manchmal unbenutzte Sektoren zurücklässt. Ich habe keine Ahnung, warum dies hier nur für logische Partitionen der Fall ist.
Alexios

Antworten:

8

Partitionierer richten heutzutage gerne Partitionen an einer Mebibytengrenze aus. Für die MBR-Partitionierung gibt es 4 primäre Partitionen, für den Rest benötigen Sie erweiterte und logische Partitionen.

Während das Layout der primären Partitionen am Ende des ersten Sektors der Festplatte angegeben wird, haben Sie für die logischen Partitionen eine verknüpfte Liste zusätzlicher Partitionstabellen (die selbst nur eine Partition angeben. In der Regel ist die erste wie folgt Der Anfang der erweiterten Partition (die selbst als primäre Partition definiert ist) definiert die erste logische Partition und verweist auf die nächste Partitionstabelle, die die nächste logische Partition definiert. Diese nächste Partitionstabelle befindet sich normalerweise nach der ersten logischen Partition Trennwand.

Alle diese Partitionstabellen benötigen nur wenige Bytes außerhalb der Partitionen. Aufgrund der Mebibyte-Ausrichtung muss jedoch ein vollständiger Mebibyte für sie verwendet werden.

GPT am anderen Ende speichert alle Partitionierungsinformationen am Anfang der Festplatte (mit einer Sicherung am Ende), sodass nach der Konvertierung der für die Partitionstabellen der logischen Partition verwendete Speicherplatz frei wird.

Beachten Sie, dass Sie nur einen Sektor benötigen, um diese logischen MBR-Partitionstabellen zu speichern. Streng genommen wären bei der MBR-Partitionierung 2047 Sektoren frei, wenn der Partionner bereit wäre, Partitionen nicht an Mebibyte-Grenzen auszurichten.

Stéphane Chazelas
quelle
Ich verstehe es jetzt, es gibt eine EBR für jede logische Festplatte und "Der zweite Eintrag einer EBR-Partitionstabelle enthält Null-Bytes, wenn es die letzte EBR in der erweiterten Partition ist; andernfalls zeigt er auf die nächste EBR in der EBR-Kette. ""
Mikhail Morfikov