
Die EFI- Systempartition ( Extensible Firmware Interface ) oder ESP ist eine Partition auf einem Datenspeichergerät (üblicherweise einer Festplatte oder SSD ), die von Computern mit der Unified Extensible Firmware Interface (UEFI) verwendet wird. Beim Hochfahren des Computers lädt die UEFI-Firmware die auf der ESP gespeicherten Dateien, um das Betriebssystem und verschiedene Dienstprogramme zu starten.
Eine ESP enthält die Bootloader oder Kernel-Images installierter Betriebssysteme (die sich typischerweise in anderen Partitionen befinden), Gerätetreiberdateien für Hardwaregeräte, die im Computer vorhanden sind und von der Firmware beim Bootvorgang verwendet werden, Systemdienstprogramme, die vor dem Start eines Betriebssystems ausgeführt werden sollen, und Datendateien wie Fehlerprotokolle. [ 1 ]
Überblick
Die EFI-Systempartition ist mit einem Dateisystem formatiert, dessen Spezifikation auf dem FAT-Dateisystem basiert und als Teil der UEFI-Spezifikation gepflegt wird. Daher ist die Dateisystemspezifikation unabhängig von der ursprünglichen FAT-Spezifikation. Das genaue Ausmaß der Abweichung ist unbekannt: [ 2 ] [ 3 ] Apple stellt ein separates Tool bereit, das auf Intel/x86-64 Macs verwendet werden soll, [ 4 ] während andere Systeme problemlos FAT-Dienstprogramme nutzen können. [ 5 ] Die global eindeutige Kennung (GUID) der EFI-Systempartition im GUID-Partitionstabellen- Schema (GPT) lautet C12A7328-F81F-11D2-BA4B-00A0C93EC93B , während ihre ID im Master Boot Record (MBR)-Partitionstabellen-Schema 0xEF lautet . Sowohl GPT- als auch MBR-partitionierte Festplatten können eine EFI-Systempartition enthalten, da die UEFI-Firmware beide Partitionierungsschemata unterstützen muss. Außerdem wird das bootfähige El Torito -Format für CD-ROMs und DVDs unterstützt. [ 1 ]
UEFI gewährleistet Abwärtskompatibilität mit älteren Systemen, indem der erste Block (Sektor) der Partition für Kompatibilitätscode reserviert wird. Dadurch entsteht effektiv ein Legacy- Bootsektor . Auf Systemen mit älterem BIOS wird der erste Sektor einer Partition in den Speicher geladen und die Ausführung an diesen Code übertragen. Die UEFI-Firmware führt den Code im MBR nicht aus, außer beim Booten im Legacy-BIOS-Modus über das Compatibility Support Module (CSM). [ 1 ]
Die UEFI-Spezifikation erfordert die vollständige Unterstützung von MBR-Partitionstabellen. [ 1 ] Einige UEFI-Implementierungen schalten jedoch beim Erkennen bestimmter Partitionstabellentypen auf der Boot-Disk sofort auf den BIOS-basierten CSM-Bootvorgang um, wodurch ein UEFI-Boot von EFI-Systempartitionen auf MBR-partitionierten Festplatten effektiv verhindert wird. [ 6 ]
Die UEFI-Firmware unterstützt das Booten von Wechseldatenträgern wie USB-Sticks . Dazu wird der Wechseldatenträger mit dem Dateisystem FAT12 , FAT16 oder FAT32 formatiert . Der Bootloader muss entweder gemäß der standardmäßigen ESP-Dateihierarchie gespeichert oder dem Bootmanager des Systems durch Angabe seines vollständigen Pfads übergeben werden. Bei Festplatten hingegen wird stets FAT32 erwartet. [ 1 ]
Verwendung
Linux
GRUB 2 , elilo und systemd-boot fungieren als herkömmliche, vollwertige, eigenständige UEFI- Bootmanager (auch Bootloader -Manager genannt) für Linux. Nach dem Laden durch eine UEFI-Firmware können sie auf Kernel-Images von allen unterstützten Geräten, Partitionen und Dateisystemen zugreifen und diese starten, ohne auf die EFI-Systempartition beschränkt zu sein.
Der Mountpunkt für die EFI-Systempartition variiert je nach verwendetem Bootloader. Ältere Bootloader wie GRUB 2 und lilo/elilo verwenden standardmäßig `/usr /boot/efi/bin/`. Systemd-Boot bevorzugt hingegen `/usr/bin/` /efioder `/usr/ bin/` /bootgegenüber `/usr/bin/ /boot/efi`, um mögliche Komplikationen mit verschachtelten autofsMounts zu vermeiden. Unabhängig vom Mountpunktpfad ist der Inhalt der Partition nach dem Start von Linux zugänglich. [ 7 ] [ 8 ]
Linux-Kernel-EFI-Boot-Stub
Der EFI-Boot-Stub ermöglicht das Booten eines Linux-Kernel -Images ohne herkömmlichen UEFI-Bootloader. Indem er sich als PE / COFF -Datei tarnt und der Firmware als UEFI-Anwendung erscheint, kann ein Linux-Kernel-Image mit aktiviertem EFI-Boot-Stub direkt von einer UEFI-Firmware geladen und ausgeführt werden. Solche Kernel-Images können weiterhin von BIOS-basierten Bootloadern geladen und ausgeführt werden; somit ermöglicht der EFI-Boot-Stub, dass ein einzelnes Kernel-Image in jeder Bootumgebung funktioniert. [ 9 ]
Die Unterstützung des EFI-Boot-Stubs durch den Linux-Kernel wird durch Aktivieren der Option CONFIG_EFI_STUB„EFI-Stub-Unterstützung“ während der Kernelkonfiguration aktiviert. [ 10 ] Sie wurde in Version 3.3 des Linux-Kernel-Mainline integriert , die am 18. März 2012 veröffentlicht wurde. [ 11 ]
Systemd-boot ist ein einfacher UEFI-Bootmanager, der konfigurierte EFI-Images lädt und ausführt und dabei ausschließlich auf die EFI-Systempartition zugreift. Konfigurationsdateifragmente, Kernel-Images und initrd -Images müssen sich auf der EFI-Systempartition befinden, da systemd-boot keinen Zugriff auf Dateien auf anderen Partitionen oder Dateisystemen unterstützt. Linux-Kernel müssen so kompiliert werden, CONFIG_EFI_STUB=ydass sie direkt als UEFI-Images ausgeführt werden können. [ 12 ]
Apfel
Bei Apple Mac-Computern mit Intel x86-64 -Prozessorarchitektur ist die EFI-Systempartition beim Starten von macOS zunächst leer und wird nicht verwendet . [ 13 ] [ 14 ]
Die EFI-Systempartition dient jedoch als Zwischenspeicher für Firmware-Updates [ 15 ] und für den Microsoft Windows- Bootloader bei Mac-Computern, die so konfiguriert sind, dass sie mit Boot Camp von einer Windows-Partition booten . [ 14 ] [ 16 ]
Die von Apple entwickelte UEFI-Firmware iBoot steuert die Logik zum Auffinden und Laden von Bootloadern. iBoot wählt den gewünschten Bootloader aus (möglicherweise konfiguriert über Tastenkombinationen beim Start oder NVRAM ) und greift optional auf die interne macOS - Installation oder ein Wiederherstellungssystem zurück recoveryOS. [ 14 ] [ 16 ] [ 17 ]
Ältere Apple-Computer mit Intel-Architektur vor UEFI benötigten eine HFS+ -formatierte EFI-Systempartition . Bootloader von Drittanbietern mussten vor dem Start durch die Firmware mit einem speziellen ioctl -Befehl „genehmigt“ werden – ein Überbleibsel der Systemordner-Aktivierung aus dem klassischen Mac OS . Ansonsten gibt es keine Einschränkungen hinsichtlich der Art des EFI-Betriebssystems oder Bootloaders, der auf einem Intel-basierten Apple-Computer ausgeführt werden kann. [ 18 ] [ 19 ]
iOS, iPadOS, macOS auf Apple Silicon ( AArch64 )
Geräte mit Apple Silicon ( AArch64 ), wie iPhones, iPads und alle Mac-Computer ab 2023, verfügen nicht über EFI/UEFI-Funktionalität und verwenden daher keine EFI-Systempartitionen. [ 20 ] [ 21 ] [ 22 ]
Windows
Die UEFI-Unterstützung in Windows begann 2008 mit Windows Vista SP1. [ 23 ]
Der Windows-Bootmanager befindet sich im \EFI\Microsoft\Boot\Unterordner der EFI-Systempartition. [ 24 ]
Unter Windows XP 64-Bit Edition und höher wird der Zugriff auf die EFI-Systempartition durch Ausführen des Befehls „mountvol“ ermöglicht . Dieser bindet die EFI-Systempartition auf dem angegebenen Laufwerk ein. Verfügbar nur auf Itanium-basierten Computern. [ 25 ]
Siehe auch
Referenzen
- ^ a b c d e „Unified Extensible Firmware Interface (UEFI) Specification (versions 2.10 and older)“ (PDF) . UEFI.org . August 2022. Abgerufen am 12.12.2022 .
- ^ „UEFI-Spezifikation Version 2.5, Abschnitt 12.3 Dateisystemformat“ (PDF) . UEFI.org . April 2015. S. 536, 537. Abgerufen am 29.05.2015 .
Das von der Extensible Firmware Interface (EFI) unterstützte Dateisystem basiert auf dem FAT-Dateisystem. EFI definiert eine spezifische, explizit dokumentierte und testbare Version von FAT. Die Konformität mit der EFI-Spezifikation und den zugehörigen Referenzdokumenten ist die einzige FAT-Definition, die zur Unterstützung von EFI implementiert werden muss. Um das EFI-Dateisystem von reinem FAT zu unterscheiden, wurde ein neuer Partitionsdateisystemtyp definiert.
- ^ „Intel Platform Innovation Framework for EFI Firmware File System Specification“ (PDF) . intel.com . September 2003.
- ^ „Technische Notiz TN2166: Geheimnisse der GPT“ . Developer.Apple.com . 06.11.2006 . Abgerufen am 06.05.2015 .
- ^ „EFI-Systempartition“ . ArchWiki . Abgerufen am 14. März 2020 .
- ^ „UEFI-Systemstart von der MBR-Partitionstabelle und GRUB Legacy“ . ArchLinux.org . Juni 2012. Abgerufen am 6. Oktober 2013 .
- ^ „UEFI – Community Ubuntu Documentation“ . Ubuntu.com . 21.12.2013 . Abgerufen am 27.12.2013 .
- ^ „Boot Loader Specification“ . uapi-group.org . Abgerufen am 15.02.2024 .
- ^ „Der EFI-Boot-Stub – Die Linux-Kernel-Dokumentation“ . Die Linux-Kernel-Dokumentation . 16.06.2014. Archiviert vom Original am 04.10.2023 . Abgerufen am 14.02.2024 .
- ^ „Linux kernel 3.11.1 arch/x86/Kconfig: CONFIG_EFI_STUB (Zeile 1575)“ . Kernel.org . Abgerufen am 6. Oktober 2013 .
- ^ „Linux-Kernel 3.3: 1.10. EFI-Boot-Unterstützung“ . KernelNewbies.org . 18.03.2012 . Abgerufen am 06.10.2013 .
- ^ „systemd-boot UEFI Boot Manager“ . systemd.io . Archiviert vom Original am 18.06.2025 . Abgerufen am 19.06.2025 .
- ^ „rEFIt: Mythen und Fakten über Intel Macs – Mythos: Mac OS X benötigt eine versteckte EFI-Systempartition“ . rEFIt.SourceForge.net .
- ^ a b c „Bootvorgang für einen Intel-basierten Mac“ . Apple Support . Abgerufen am 14.02.2024 .
- ^ „Firmware-Updates für Intel-basierte Macs erfordern ein GUID-Partitionsschema . “ Apple Knowledgebase .
- ^ a b „Bootmodi eines Intel-basierten Mac mit Apple T2 Security Chip“ . Apple Support . Abgerufen am 14.02.2024 .
- ^ „Startup-Sicherheitsdienstprogramm auf einem Mac mit Apple T2-Sicherheitschip“ . Apple Support . Abgerufen am 14.02.2024 .
- ^ „Ubuntu + Mac: Reiner EFI-Boot“ . The Slightly Disgruntled Scientist . 7. September 2014. Archiviert vom Original am 8. März 2021. Abgerufen am 17. November 2019 .
- ^ "BLESS(8)" . keith.github.io . Abgerufen am 14.02.2024 .
- ^ „Eigenheiten der Apple Silicon Plattform – Asahi Linux Dokumentation“ . asahilinux.org . Abgerufen am 23.09.2025 .
- ^ „Einführung in Apple Silicon: Speicher“ . GitHub – Asahi Linux Wiki . 02.11.2023. Archiviert vom Original am 14.02.2024 . Abgerufen am 14.02.2024 .
- ^ „Bootvorgang für einen Mac mit Apple Silicon“ . Apple Support . Abgerufen am 14.02.2024 .
- ^ „UEFI und Windows“ . Windows Hardware Developer Central (WHDC) . Microsoft Corporation. 24. Juli 2008. Archiviert vom Original am 4. Januar 2009. Abgerufen am 5. Mai 2024 .
- ^ „Subdirectory Registry | Unified Extensible Firmware Interface Forum“ . uefi.org . UEFI-Forum . Abgerufen am 5. Mai 2024 .
- ^ „Mountvol“ . Windows Server 2012 R2 und Windows Server 2012. learn.microsoft.com. 31. August 2016. Abgerufen am 5. Mai 2024 .
Externe Links
- EFI-Systempartition-Unterverzeichnisregister – Ein Register der Unterverzeichnisse, die sich unterhalb des
/EFIVerzeichnisses auf einer EFI-Systempartition befinden.