Partició de sistema EFI

De la Viquipèdia, l'enciclopèdia lliure
Exemple d'una partició del sistema EFI tal com mostra el Gestor de particions de KDE

La partició del sistema EFI (Extensible Firmware Interface) o ESP és una partició d'un dispositiu d'emmagatzematge de dades (generalment una unitat de disc dur o unitat d'estat sòlid) que s'utilitza per ordinadors amb la Unified Extensible Firmware Interface (UEFI). Quan s'inicia un ordinador, el microprogramari UEFI carrega els fitxers emmagatzemats a l'ESP per començar a instal·lar sistemes operatius i diverses utilitats.

Un ESP conté els carregadors d'arrencada o imatges del nucli per a tots els sistemes operatius instal·lats (que es troben en altres particions), fitxers de controladors de dispositius per a dispositius de maquinari presents en un ordinador i utilitzats pel microprogramari en el moment de l'arrencada, programes d'utilitat del sistema que estan pensats per ser executar-se abans d'arrencar un sistema operatiu i fitxers de dades, com ara els registres d'errors.[1]

Visió general[modifica]

La partició del sistema EFI està formatada amb un sistema de fitxers l'especificació del qual es basa en el sistema de fitxers FAT i es manté com a part de l'especificació UEFI; per tant, l'especificació del sistema de fitxers és independent de l'especificació FAT original. Es desconeix l'extensió real de la divergència: [2] Apple manté una eina separada que s'hauria d'utilitzar,[3] mentre que altres sistemes utilitzen utilitats FAT perfectament.[4] L'identificador únic global (GUID) per a la partició del sistema EFI a l'esquema de la taula de particions GUID (GPT) ésC12A7328-F81F-11D2-BA4B-00A0C93EC93B, mentre que el seu ID a l'esquema de taula de particions del registre d'arrencada mestre (MBR) és 0xEF. Tant els discs amb particions GPT com MBR poden contenir una partició del sistema EFI, ja que el firmware UEFI és necessari per suportar els dos esquemes de partició. També s'admet el format d'arrencada El Torito per a CD-ROM i DVD.[5]

UEFI proporciona compatibilitat enrere amb sistemes heretats reservant el primer bloc (sector) de la partició per al codi de compatibilitat, creant efectivament un sector d'arrencada heretat. Als sistemes basats en BIOS heretats, el primer sector d'una partició es carrega a la memòria i l'execució es transfereix a aquest codi. El microprogramari UEFI no executa el codi a l'MBR, excepte quan s'arrenca en mode BIOS heretat mitjançant el Mòdul de compatibilitat (CSM).[6]

Ús[modifica]

Linux[modifica]

GRUB 2 i elilo serveixen com a carregadors d'arrencada UEFI autònoms i convencionals per a Linux. Un cop carregats per un microprogramari UEFI, tots dos poden accedir i arrencar imatges del nucli des de tots els dispositius, particions i sistemes de fitxers que admeten, sense limitar-se a la partició del sistema EFI.

EFI Boot Stub permet arrencar una imatge del nucli de Linux sense utilitzar un carregador d'arrencada UEFI convencional. En dissimular-se com una imatge PE/COFF i aparèixer al microprogramari com una aplicació UEFI, una imatge del nucli x86 amb EFI Boot Stub activat es pot carregar i executar directament mitjançant un microprogramari UEFI. Aquestes imatges del nucli encara es poden carregar i executar mitjançant carregadors d'arrencada basats en la BIOS; per tant, EFI Boot Stub permet que una única imatge del nucli funcioni en qualsevol entorn d'arrencada.[7]

El suport del nucli de Linux per a l'EFI Boot Stub s'habilita activant l'opció CONFIG_EFI_STUB (suport EFI Stub) durant la configuració del nucli.[8] Es va fusionar amb la versió 3.3 de la línia principal del nucli de Linux, llançada el 18 de març de 2012.[9] Gummiboot (també conegut com systemd-boot) és un senzill gestor d'arrencada UEFI que carrega i executa imatges UEFI configurades, accedint només a la partició del sistema EFI. Els fragments del fitxer de configuració, les imatges del nucli i les imatges initrd són necessaris per residir a la partició del sistema EFI, ja que Gummiboot no ofereix suport per accedir a fitxers en altres particions o sistemes de fitxers. Els nuclis de Linux s'han de crear amb CONFIG_EFI_STUB habilitat perquè es puguin executar directament com a imatges UEFI.[10]

El punt de muntatge de la partició del sistema EFI sol ser /boot/efi, on el seu contingut és accessible després d'arrencar Linux.[11]

macOS[modifica]

En ordinadors macOS basats en l'arquitectura de maquinari x64, la partició del sistema EFI es deixa inicialment en blanc i no s'utilitza per arrencar.[12] Tanmateix, la partició del sistema EFI s'utilitza com a àrea de prova per a les actualitzacions de microprogramari.[13] La lògica sol ser la següent: l'EFI cerca primer un carregador d'arrencada a l'ESP i, si no n'hi ha, continuarà al sistema de fitxers macOS

Windows[modifica]

A Windows XP Edició de 64 bits i posteriors, l'accés a la partició del sistema EFI s'obté executant elmountvolcomanda .

El gestor d'arrencada de Windows es troba a la subcarpeta \EFI\MICROSOFT\BOOT\ de la partició del sistema EFI.

Referències[modifica]

  1. «Unified Extensible Firmware Interface (UEFI) Specification (versions 2.10 and older)» (PDF) (en anglès). UEFI.org, agost 2022. [Consulta: 12 desembre 2022].
  2. «UEFI Specification Version 2.5, Section 12.3 File System Format» (PDF) (en anglès). UEFI.org p. 536, 537, abril 2015. [Consulta: 29 maig 2015].
  3. «Technical Note TN2166: Secrets of the GPT» (en anglès). Developer.Apple.com, 06-11-2006. [Consulta: 6 maig 2015].
  4. «EFI system partition» (en anglès). ArchWiki. [Consulta: 14 març 2020].
  5. «Unified Extensible Firmware Interface (UEFI) Specification (versions 2.10 and older)» (PDF) (en anglès). UEFI.org, agost 2022. [Consulta: 12 desembre 2022].
  6. «Unified Extensible Firmware Interface (UEFI) Specification (versions 2.10 and older)» (PDF) (en anglès). UEFI.org, agost 2022. [Consulta: 12 desembre 2022].
  7. «Linux kernel documentation: Documentation/efi-stub.txt» (en anglès). Kernel.org, 16-06-2014. [Consulta: 26 novembre 2014].
  8. «Linux kernel 3.11.1 arch/x86/Kconfig: CONFIG_EFI_STUB (line #1575)» (en anglès). Kernel.org. [Consulta: 6 octubre 2013].
  9. «Linux kernel 3.3: 1.10. EFI boot support» (en anglès). KernelNewbies.org, 18-03-2012. [Consulta: 6 octubre 2013].
  10. «gummiboot: Simple UEFI Boot Manager» (en anglès). FreeDesktop.org. Arxivat de l'original el 2013-09-12. [Consulta: 22 gener 2016].
  11. «UEFI - Community Ubuntu Documentation» (en anglès). Ubuntu.com, 21-12-2013. [Consulta: 27 desembre 2013].
  12. «rEFIt: Myths and Facts About Intel Macs – Myth: Mac OS X Requires a Hidden EFI System Partition» (en anglès). rEFIt.SourceForge.net.
  13. «Firmware updates for Intel-based Macs require a GUID partition scheme» (en anglès). Apple Knowledgebase.