GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Die /boot-Partition wirklich?

Ich lese gerade einen relativ alten Text über Linux-Partitionen und Dateisysteme (die LPIC 1 Certification Bible ). Es heißt:

Einige Versionen der Linux-Bootloader können nicht auf einen Kernel zugreifen, der
sich außerhalb der ersten 1024 Zylinder auf einer Festplatte befindet. Indem Sie die /boot
-Partition am Anfang des Laufwerks platzieren, können Sie sicher sein,
kein Problem beim Zugriff auf den Kernel beim Booten zu haben. Dieses Problem tritt
am häufigsten in Fällen auf, in denen Linux zusammen mit einem anderen
Betriebssystem, das sich auf der ersten Partition befindet, doppelt gebootet wird.

Warum sollte ein Bootloader „keinen Zugriff auf den Kernel außerhalb der ersten 1024 Zylinder auf einer Festplatte haben „?

Was bedeutet auch „die /boot-Partition an den Anfang des Laufwerks zu setzen ” bedeutet?

Akzeptierte Antwort:

Dies ist eine Einschränkung, die durch ein sehr altes BIOS und einen sehr alten Bootloader und nicht durch Linux selbst auferlegt wird. Das BIOS könnte nur auf die ersten 1024 Zylinder der Festplatte zugreifen (weitere Informationen darüber, was Zylinder/Köpfe/Sektoren sind, finden Sie hier). Diese Einschränkung würde sich auf Bootloader erstrecken, die aufgrund ihrer einfachen Natur keine eigenen Festplattentreiber haben und die BIOS-Dienste verwenden würden, um auf die Festplatte zuzugreifen.

Dies bedeutete, dass sowohl der Bootloader als auch der Kernel (da es die Aufgabe des Bootloaders ist, ihn zu laden) auf Systemen mit dieser Einschränkung innerhalb der ersten 1024 Zylinder liegen müssten. Eine einfache Möglichkeit, dies zu tun, bestand darin, ein separates /boot zu erstellen Partition, die den Kernel enthält, und legen Sie sie an den Anfang des Laufwerks (normalerweise einfach, indem Sie sie zur ersten Partition machen). Dies bedeutet, dass es sich physisch in den ersten 1024 Zylindern befinden würde, vorausgesetzt natürlich, dass die Partition nicht zu groß ist.

Die Einschränkung ist kein Thema mehr, da sie nur für alte BIOS gilt. Außerdem haben viele moderne Bootloader (z. B. GRUB) ihre eigenen Festplattentreiber und müssen sich daher nicht auf BIOS-Dienste verlassen. Moderne Bootloader können /boot verwenden für andere Zwecke, aber es ist nicht mehr erforderlich, dass beide auf einer separaten Partition und liegen innerhalb der ersten 1024 Zylinder (obwohl es viele Fälle gibt, in denen es notwendig ist, /boot auf einer separaten Partition).

Verwandte:Wie bekommt man Sternchen ‘*’ in zsh, um das gleiche Verhalten wie bash zu haben?
Linux
  1. Ist eine /boot-Partition immer notwendig?

  2. Ist es gut, eine separate Partition für /boot zu erstellen?

  3. Warum andere Dinge als /home auf eine separate Partition legen?

  4. Sollten Websites gemäß der empfohlenen Verwendung in /var/ oder /usr/ leben?

  5. Was ist die empfohlene Größe für eine Linux /boot-Partition?

So konfigurieren Sie Ihr Raspberry Pi OS, um es zum ersten Mal zu verwenden

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

Warum 100 MB ext2-Startpartition für Linux empfohlen?

Teilen Sie die /boot-Partition zwischen Distributionen

Was ist die Partitions-ID / der Dateisystemtyp für UDF?

So richten Sie /etc/issues ein, um die IP-Adresse für eth0 anzuzeigen