
Ich versuche zu lernen und vor allem zu verstehen, wie Partitionierung und Bootloader funktionieren. Das Problem ist, dass ich alles in meinem Kopf verdreht habe. Am Ende verstehe ich nichts mehr.
Ich weiß, wie man eine Festplatte mit fdisk
, parted
, partitioniert gdisk
. Ich habe versucht, ISO-Dateien (wie ubuntu.iso, arch.iso) mit Syslinux kettenzuladen.
Um meine Verwirrung zu verdeutlichen, hier ist, was ich getan habe: Erstellen einer Linux-Partition:
$ gdisk /dev/sdb
Command (? for help): n
Partition number (1-128, default 1):
First sector (34-7821278, default = 36) or {+-}size{KMGTP}:
Last sector (36-7821278, default = 7821278) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
Command (? for help): p
Disk /dev/sdb: 7821312 sectors, 3.7 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): F7F2BE49-B8D8-4910-8E69-381DEBD954DC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 7821278
Partitions will be aligned on 4-sector boundaries
Total free space is 2 sectors (1024 bytes)
Number Start (sector) End (sector) Size Code Name
1 36 7821278 3.7 GiB 8300 Linux filesystem
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/sdb.
The operation has completed successfully.
Dann habe ich diese Partition als ext2 formatiert:
$ mkfs.ext2 /dev/sdb1
Jetzt möchte ich MBR mit Syslinux installieren (aus den wenigen Tutorials, die ich gefunden habe)
$ syslinux -m /dev/sdb1
syslinux: invalid media signature (not a FAT filesystem?)
Es muss also eine FAT-Partition sein. Ich habe jedoch gelesen, dass Syslinux Fat32-, ext2-, ext3- und ext4-Dateiformate unterstützt (https://wiki.archlinux.org/index.php/syslinux#Installation)
1) Was ist hier falsch, da Syslinux ext2-Partitionen unterstützen soll?
Also habe ich die Partition als Fat32-Partition formatiert:
$ mkfs.vfat -F 32 /dev/sdb1
Jetzt funktioniert die Installation des Syslinux-MBR:
$ syslinux -m /dev/sdb1
$ syslinux -i /dev/sdb1
2) Muss ich einen MBR installieren, ist Syslinux nicht mit GPT kompatibel? Ich habe in Dokumentationen gelesen, dass es GPT
mehr Vorteile gegenüber bietet MBR
, z. B. die Möglichkeit, viel mehr primäre Partitionen zu erstellen. Habe ich das falsch verstanden?
Dann habe ich festgestellt, dass ich die Partition als bootfähig kennzeichnen muss (http://www.linuxquestions.org/questions/linux-general-1/booting-iso-images-from-a-usb-disk-917161/). Kann ich das mit machen gdisk
? Mir scheint, dass das nicht möglich ist, da das Handbuch nichts über Boot-Flagging sagt. Andererseits fdisk
erlaubt es mir das. Allerdings gibt es hier noch ein anderes Problem:
$ fdisk /dev/sdb
WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.
3) Erstellt gdisk automatisch eine GPT?
$ gdisk /dev/sdb
GPT fdisk (gdisk) version 0.8.8
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
4) Woher kommt dieser MBR? Wie können MBR und GPT auf diese Weise koexistieren?
Wie Sie sehen, wurde mir bei dem Versuch, tiefer gehende Partitionsmanipulationen vorzunehmen, klar, dass alles durcheinander war. Ich wäre Ihnen aufrichtig dankbar, wenn Sie meine Fragen beantworten und mir insbesondere zusätzliche Unterlagen zur Verfügung stellen könnten:https://wiki.archlinux.orgUndhttp://www.syslinux.org/wikihat mein Verständnis tatsächlich schlechter gemacht als je zuvor. Vielen Dank.
Antwort1
1) Was ist hier falsch, da Syslinux ext2-Partitionen unterstützen soll?
Ja, Syslinux unterstützt ext2 fs über Extlinux. Wenn Sie ein UEFI/EFI-basiertes System verwenden, benötigen Sie eine FAT32-Partition. Für GPT allein brauchen Sie keine FAT32-Partition, sondern können einfach die herkömmliche verwenden. Also ext?
2) Muss ich einen MBR installieren, ist Syslinux nicht mit GPT kompatibel? In Dokumentationen habe ich gelesen, dass GPT mehr Vorteile gegenüber MBR hat, z. B. dass es die Erstellung von viel mehr primären Partitionen ermöglicht. Habe ich das falsch verstanden?
Es bleibt Ihnen überlassen, was Sie verwenden möchten. Sowohl die Partitionstabelle msdos als auch gpt werden unterstützt.
Im Falle von GPT können Sie gdisk verwenden, um das Legacy-BIOS-Bootflag festzulegen. Es ist notwendig, dass die Bootpartition ein Legacy-BIOS-Bootflag hat. Nachdem Sie das gdisk-Menü aufgerufen haben, wechseln Sie mit „x“ in den Expertenmodus und verwenden Sie dann „a“, um Attribute festzulegen.
3) Erstellt gdisk automatisch eine GPT?
Ja, Besuchenhttp://linux.die.net/man/8/gdisk
Anleitungen dazu finden Sie unterhttp://wiki.gentoo.org/wiki/Syslinux
Antwort2
Ich denke, das Problem/die Verwirrung liegt hier in der Terminologie, zuerst heißt es „Installieren eines MBR“ und dann „Warum ist ein MBR zusammen mit einem GPT“. Der MBR ist etwas, das für die Funktion der Festplatte notwendig ist, der GPT ist ein Partitionierungsschema, das über den MBR hinaus existiert (erstellt wird). Partitionierungssoftware wie gparted präsentiert Ihnen MBR und GPT als zwei sich gegenseitig ausschließende Dinge. GPT oder das Fehlen von GPT wäre genauer gewesen. Es gibt andere Systeme, die andere Schemata als GPT verwenden, die immer noch innerhalb des MBR der Festplatte definiert sind. Um es also besser zu verstehen, ist bei beiden Partitionierungsschemata der erste Sektor 0-1 immer ein MBR, die GPT-Definition beginnt danach. Was wir eine MBR-Partitionierung und erweiterte Partitionierung nennen, ist etwas ohne GPT (wobei keine Unterscheidung für erweitert erforderlich ist, da es so viele Teile zulässt, wie durch die Mindestgröße einer Partition und die Größe der Festplatte passen).
Sie installieren keinen MBR, er ist standardmäßig vorhanden und es ist besser, wenn er da ist, sonst ist Ihre Festplatte Müll. Sie installieren Dinge in den MBR, wie Grubs core.img oder das Syslinux-Äquivalent, eine Software, die Ihnen hilft, zum nächsten Schritt zu gelangen. Ein winziges kleines Betriebssystem, das Ihnen hilft, das spezifische andere System „neu zu starten“. Damit das GPT-Schema funktioniert, ist im MBR eine GPT-Definition vorhanden.
Es sind diese *.img-Betriebssysteme, die Sie auffordern, Dinge manuell zu erledigen, wenn /boot/grub oder /boot/syslinux gelöscht oder noch nicht erstellt wurden. Wenn Sie lange genug mit Installationen herumspielen, werden Sie es eines Tages sehen. GRUB> Versuchen Sie es an dieser Stelle mit Hilfe. So wie es mir hilft, es zu verstehen, erzeugt dieses Bootloader-Betriebssystem dieses Menü oder die Eingabeaufforderung und dort geben Sie an, Grub/syslinux auf dem spezifischen Zielbetriebssystem neu zu starten. Wenn es keinen Neustart gäbe, wäre der Bootloader Prozess 1 PID1 gewesen.
Einiges von dem, was ich sage, ist vielleicht nicht 100 % richtig, aber ich denke, dass es 96,4 % der Linux-Benutzer dabei hilft, mit dem weiterzumachen, was sie tun möchten. Bootloader-Entwickler und diejenigen, die an Software zum Sichern, Kopieren, Komprimieren von Festplatten-Images usw. arbeiten, benötigen genauere Details. Wenn Sie suchen, finden Sie stundenlange Vorträge über die Probleme und Dynamiken dieser ersten kleinen Zelle der Festplatte und darüber, was vorhanden sein muss, damit alles andere existieren kann. Unsere Systeme hängen an diesem Faden hochsensibler Informationen. Es ist wie Ihre Karte zum Labyrinth, sonst sind Sie nur ein Snack für den Minotaurus.