Joan (discussió | contribucions)
Pascual (discussió | contribucions)
Línia 14: Línia 14:


L'EFI funciona en mode protegit, usa un esquema de particionat diferent (GPT) i és capaç de llegir particions FAT32. També disposa d'una area de memòria no
L'EFI funciona en mode protegit, usa un esquema de particionat diferent (GPT) i és capaç de llegir particions FAT32. També disposa d'una area de memòria no
volatil que comparteix amb el S.O. per amagatzemar dades de configuració, drivers .....
volatil que comparteix amb el S.O. per enmagatzemar dades de configuració, drivers .....


L'UEFI (Unified EFI) és l'estandard fet per l'industria del PC i no restringit a Hardware propietari Intel.
L'UEFI (Unified EFI) és l'estandard fet per l'industria del PC i no restringit a Hardware propietari Intel.

Revisió del 15:25, 17 abr 2013

Introducció

La arrencada d'un PC x86 és gestionada per la BIOS, que s'encarrega de decidir quin dispositiu s'arrencarà i de carregar el bootloader i aquest carrega el O.S. Des de fa temps, l'estandard de la BIOS del PC, resulta insuficient, i molt limitat cosa que complica el bootloader. Limitacions:

  • Funciona en Mode real:
  • Dificultat per tractar amb dispositius extraibles
  • Només carrega un sector de 512bytes en memòria. Si el bootloader és més gran s'ha d'espavilar sol per carregar la resta.
  • No funciona en mode protegit.
  • No és capaç de gestionar la arrencada de diversos S.O. i requereix un bootmanager extern per poder fer-ho
  • La taula de particions de disc soportada per la BIOS és molt limitada.

Per solucionar tots aquests problemes, Intel va crear l'EFI (Extended Firmware Interface).

L'EFI funciona en mode protegit, usa un esquema de particionat diferent (GPT) i és capaç de llegir particions FAT32. També disposa d'una area de memòria no volatil que comparteix amb el S.O. per enmagatzemar dades de configuració, drivers .....

L'UEFI (Unified EFI) és l'estandard fet per l'industria del PC i no restringit a Hardware propietari Intel.

Arrencada UEFI

Un cop ha arrencat la BIOS UEFI, examina les dades en la memòria no volàtil per determinar quin dispositiu s'ha d'arrencar. Si el dispositiu és un disc , llavors examina la taula de particions buscant-ne una amb un GUID especial(C12A7328-F81F-11D2-BA4B-00A0C93EC93B). Aquesta partició ha de estar formatejada en FAT32 (Els Apple la tenen en HFS+ saltant-se l'estandard).

En Aquesta partició espera trobar una estructura de directoris del tipus /EFI/{OS}/BOOT/{bootloader}. La BIOS EFI decideix quin carregar en funció dels valors guardats a la memòria no volàtil.

UEFI i SecureBoot

El SecureBoot consisteix en que el firmware es nega a carregar un bootloader que no estigui signat amb una clau vàlida (Normalment carregada per el fabricant del PC)

Problemes amb els OS no Microsoft

Per culpa dels tractes que té Microsoft amb els fabricants de PCs, tots els PCs que venen preinstal·lats amb Windows 8 x64 i alguns de Windows 7 porten activat el sistema de 'Secure Boot' i pre-carregat amb la clau de Microsoft i en conseqüencia només es pot arrencar O.S. de Microsoft.

Per poder arrencar el Linux hi han 3 opcions:

Opció Pros Contres
1)Activar el mode compatibilitat amb BIOS antiga
  • Un cop configurada la BIOS, el procediment és el mateix de tota la vida
  • No s'ha de canviar res del procediment d'arrencada del Linux
  • Solució temporal, aviat les BIOS no soportaran el mode compatibilitat
  • Pot donar problemes durant l'arrencada
  • Problemes per fer dual-boot i/o mantenir un Windows en el mateix disc
  • Els fabricants tendeixen a depurar menys el codi i per tan la probabilitat de trobar un bug incrementa.
2)Desactivar el SecureBoot
  • Senzill de fer
  • Estarà disponible en el futur.
  • Arrencada molt més flexible
  • Requereix canvis en el procés d'instal·lació del Linux.
  • Un CD/DVD normal o una memòria USB no serveixen per arrencar. Es necessita la versió UEFI
  • S'ha de editar el grub.conf per que funcioni bé
3)Afegir clau a la BIOS
  • Teòricament segur.
  • No fa falta desactivar el SecureBoot
  • Requereix canvis en el procés d'instal·lació del Linux.
  • Un CD/DVD normal o una memòria USB no serveixen per arrencar. Es necessita la versió UEFI
  • S'ha de editar el grub.conf per que funcioni bé
  • S'ha de signar el bootloader.
  • S'ha d'instal·lar la clau a la BIOS.
  • Pot donar problemes durant una actualització de bootloader....

S'aconsella usar la primera opció en sistemes només Linux. En alguns sistemes activar el mode compatibilitat és complexe Ex:

DELL vostro 2520

1) Anar a la BIOS (no surt cap missatge. s'ha de apretar F12 tot just s'engega)

2) Desactivar el SecureBoot i activar el 'Legacy BIOS' En la pantalla de Boot

3) Desactivar el 'Boot Disable' que esta a Advanced -> 'Misc Devices'

4) Guardar i sortir

5) Tornar a pulsar F12 durant l'arrencada per forçar a bootar del CD/DVD o USB.


En sistemes on coexisteixin Windows i Linux la opció que causarà menys problemes és la 2.

Segurament en un futur pròxim s'haura d'usar la opció 2 per tots els sistemes.

Instalació del CentOS en un sistema UEFI

La primera diferència important és que durant el particionat del disc s'ha d'usar el format GPT en lloc del MBR de tota la vida. També s'ha de afegir la partició d'arrencada UEFI a la llista de particions a montar. En concret s'ha de montar a /boot/efi. Si es conserva el Windows aquesta partició *NO* s'ha de formatejar.

El segon canvi, és que després de instal·lar el Linux s'haura de entrar a la BIOS i canviar el bootloader per defecte per el de CentOS (/EFI/RedHat/grub.efi).

Finalment, si es vol poder arrencar el Windows des del GRUB s'hauran de afegir les següents lines al /etc/grub.conf

title Windows
root (hd0,0)
chainloader /EFI/Microsoft/Boot/bootmgfw.efi