Wie wird die Größe des Blocks bestimmt, der den "MBR" enthält

Wie wird die Größe des Blocks bestimmt, der den "MBR" enthält

Ich habe fdisk verwendet, um Ubuntu Mate-Partitionen von einer 1-MB-Grenze zu verschieben, um auf einer SD-Karte an einer 4-MB-Grenze zu beginnen.

Die „Boot“-Partition beginnt jetzt bei Block 8192.

So sind die Raspbian-Distributionen konfiguriert, und es ergibt durchaus Sinn, die Partitionen an einer Erase Block Group auszurichten.

Dies funktioniert einwandfrei, aber gparted zeigt vor der „Boot“-Partition einen ungenutzten 4M-Block an, den es für Raspbian nicht anzeigt.

Meine Frage ist, woher das System „weiß“, dass die ersten 4 MB auf einer Festplatte für den Start reserviert sind, aber ich glaube, auf meiner geänderten Festplatte ist nur 1 MB reserviert.

BEARBEITEN

Ich habe gerade eine brandneue 8-GiB-SDHC-Speicherkarte gekauft, die eine FAT32Lba-Partition hat, die bei Block 8192 beginnt. Ich habe die ersten 4 MiB ausgelesen, die 00 enthalten, mit Ausnahme der 16 Bytes, die die Partitionstabelle enthalten, also scheint hier nichts Besonderes zu sein.

Antwort1

Ich empfehle Ihnen:

  1. Richten Sie die Ausrichtung so aus DOS-partitions, dass sie im Sektor beginnt 64.
  2. Wenn nur eine Partition und kein Bootsektor benötigt wird, vermeiden Sie die Verwendung von Partitionstabellen.

62Für Bootloader von werden nicht mehr als Sektoren benötigt DOS-partition tables. Aus meiner Sicht gibt es keine triftigen Gründe, eine Partition nur auf auszurichten 4M, sondern auf 4K.

Meine Frage ist, woher das System „weiß“, dass die ersten 4 MB auf einer Festplatte für den Start reserviert sind, aber ich glaube, auf meiner geänderten Festplatte ist nur 1 MB reserviert.

Technisch gesehen sind sie 4Mnicht für den Bootvorgang reserviert. Sie werden nicht verwendet (mit Ausnahme des ersten 32256 bytes).

Ich habe gerade eine brandneue 8-GiB-SDHC-Speicherkarte gekauft, die eine FAT32Lba-Partition hat, die bei Block 8192 beginnt. Ich habe die ersten 4 MiB ausgelesen, die 00 enthalten, mit Ausnahme der 16 Bytes, die die Partitionstabelle enthalten, also scheint hier nichts Besonderes zu sein.

A Master Boot Recordrequire 512 bytesund only 16 bytessind nützlich, um die Partitionstabelle zu definieren.

Darüber hinaus dürfen vom verwendet werden 512 bytes, also nicht mehr als für ein erforderlich sind und der Rest ist technisch .62 sectorsbootloader32256 bytes (63 sectors)DOS bootloader with MBRunused

verwandte Informationen