'' Partición de arranque EFI '' y partición '' biosgrub ''


21

¿Por qué necesito estos? He instalado Ubuntu bajo un UEFI (registro de arranque maestro) y he instalado Ubuntu sin 'biosgrub' y funciona bien, mientras que otras veces me piden que haga una partición 'biosgrub'. No tengo idea de por qué a veces lo necesito y otras no (ambos han estado en el mismo sistema).

Y lo mismo sucede cuando uso UEFI (tabla de particiones GUID). La única diferencia es que me piden que haga una 'partición de arranque EFI', pero como con el 'biosgrub', a veces me piden que lo haga y a veces no me piden que lo haga.

Para mi instalación actual, me pidieron que hiciera uno, pero no lo hice y mi sistema está bien. No hay cambios en el sistema, el mismo hardware, BIOS, etc. ¿Podría alguien arrojar luz sobre esto?


2
Es necesario ser coherente en el arranque. Solo si en el modo de arranque UEFI necesitará la partición efi y solo en el modo de arranque del BIOS con partición gpt necesitará la partición bios_grub. Si está utilizando UEFI, pero inicia Boot-Repair en modo BIOS e intenta instalar grub en modo BIOS, le pedirá que cree una partición bios_grub.
oldfred

Respuestas:


34

Hay cuatro condiciones (BIOS vs. EFI y MBR vs. GPT), pero dos de ellas tienen necesidades idénticas (y una de ellas es extremadamente rara):

  • En una computadora tradicional basada en BIOS con una tabla de partición MBR tradicional, el código ejecutable de GRUB se extiende como espagueti arrojado por un bebé. Algunos de ellos están en la sección de código de arranque del MBR, otros en sectores posteriores al MBR que no están asignados oficialmente, y otros en la /bootpartición de Linux . Esto es un verdadero desastre, y funciona solo porque los desarrolladores han tenido literalmente décadas para crear hacks inteligentes y resolver (casi) todos los problemas.
  • En una computadora tradicional basada en BIOS con una nueva tabla de particiones GUID (GPT), el código GRUB es similar al del caso anterior; sin embargo, los sectores que siguen inmediatamente al MBR no están sin asignar; son utilizados por el propio GPT. GPT no ofrece un lugar análogo para el secuestro de GRUB, por lo que los desarrolladores de GRUB se decidieron por la Partición de arranque del BIOS (que GPart se partedidentificó e identificó por unbios_grub bandera) para guardar el código que iría en los sectores posteriores a MBR en un disco MBR. En realidad, esto es más seguro y limpio que el enfoque MBR, ya que sirve para proteger el código GRUB de otros programas que podrían intentar usar ese espacio no asignado.
  • En una computadora con un EFI más nuevo en lugar de un BIOS, los cargadores de arranque no se almacenan en el MBR, en sectores post-MBR no asignados oficialmente o en Particiones de arranque del BIOS; en cambio, los cargadores de arranque residen como archivos ordinarios en una partición FAT conocida como EFI System Partition (ESP) . ( Confusamente, los instaladores de Debian y Ubuntu se refieren al ESP por el nombre "Partición de arranque EFI", pero este nombre no es estándar. GPart e partedidentifica el ESP como teniendo su "bootmarca ", aunque esa terminología significa algo completamente diferente en los discos MBR.) Un ESP puede existir en un disco GPT o en un disco MBR, pero el primero es mucho más común en las computadoras basadas en EFI. El enfoque EFI es mucho más seguro y mucho más flexible que el enfoque de BIOS, ya que no oculta el código sin procesar en lugares extraños; los cargadores de arranque residen en archivos, al igual que los programas a nivel del sistema operativo. Esto hace que sean más fáciles de identificar y manipular (OTOH, EFI también almacena datos en los cargadores de arranque en NVRAM, lo que crea un segundo punto de falla en el proceso de arranque. La novedad de EFI también significa que no está tan bien probado, lo que explica una gran cantidad de problemas específicos de EFI).

GhostMotleyX, su comentario a la respuesta de LiveWireBT opinó que la "mejor" forma de instalar es BIOS / MBR. Esto es subjetivo, por supuesto, pero no estoy de acuerdo con esa evaluación. El enfoque BIOS / MBR es el menos seguro y el más torpe de los tres enfoques que acabo de describir. El enfoque EFI es el enfoque más seguro y flexible. Sospecho que te estás obsesionando con el hecho de que se requieren particiones separadas para los enfoques GRUB / GPT y EFI, pero eso no es gran cosa. Además de configurar el sistema o realizar el mantenimiento de la partición, esas particiones serán prácticamente invisibles para usted y le darán mucha flexibilidad. A diferencia de MBR, GPT no se limita a cuatro particiones primarias, por lo que no necesita


Gracias a todos los que respondieron, información realmente útil; especialmente Rod Smith.
GhostMotleyX

Entonces, en un sistema de arranque EFI, ¿solo necesita una pequeña partición? El sector de arranque MBR y el contenido de la EF02partición gdisk (o equivalente) se pueden almacenar en archivos en la partición del sistema EFI con formato FAT (con tipo gdisk EF00).
Peter Cordes

Peter, sí, eso es básicamente correcto; Los cargadores de arranque EFI son archivos almacenados en el ESP, no en sectores de arranque de disco o partición.
Rod Smith

¿Qué sucede si me gustaría admitir el arranque UEFI y el arranque BIOS? ¿Tendría entonces dos copias de grub, una en la EFI System Partitiony la otra en la BIOS boot partition?
Hola mundo

Hola Mundo, necesitarías un cargador de arranque en modo EFI y en modo BIOS. No necesitan ser ambos GRUB. De hecho, recomiendo que al menos uno de ellos no lo sea, ya que eso podría ser bastante confuso. Sin embargo, dicha configuración es bastante inútil para arrancar un único sistema operativo. Puede ser necesario para algunos escenarios de arranque dual; por ejemplo, si un sistema operativo carece de un cargador de arranque en modo EFI y el otro necesita arrancar en modo EFI por alguna razón (por ejemplo, si es Windows y su disco tiene más de 2TiB, entonces necesitaría GPT para admitir su tamaño completo).
Rod Smith, el

7

Debe crear una partición biosgrub en un disco particionado GPT al configurar el arranque heredado o una partición de arranque EFI (tanto para el disco particionado GPT como MBR) al configurar el arranque UEFI.

  • GRUB requiere una partición de arranque de BIOS (2 MiB, sin sistema de archivos, EF02código de tipo en gdisk o indicador bios_grub en GNU Parted) en los sistemas de BIOS para incrustar su core.imgarchivo debido a la falta de espacio de incrustación posterior a MBR en discos GPT . [...]

https://wiki.archlinux.org/index.php/GPT#Bootloader_Support


1
Gracias, creo que entiendo ahora; Si estoy instalando Ubuntu no UEFI en un disco MBR, no necesitaré biosgrub. Si instalo Ubuntu bajo UEFI en un disco GPT, entonces necesito hacer una partición EFI. Y luego, la inconsistencia que estaba experimentando fue cuando instalaba Ubuntu no UEFI en un disco GPT y también UEFI con MBR. Entonces, la mejor forma de instalar Ubuntu es no UEFI con la tabla de particiones MBR o UEFI con la tabla de particiones GPT.
GhostMotleyX

@GhostMotleyX Eso es correcto.
LiveWireBT

incluso 1MiB es más que suficiente. Me gusta ponerlo antes de la primera partición "normal" alineada a 1MiB, como expliqué en el último párrafo de en.wikipedia.org/wiki/BIOS_boot_partition#Overview (que acabo de editar). No he decidido si prefiero usar el sortcomando de gdisk para renumerar las particiones en orden de inicio del sector, o si quiero dejarlo como sdc4o w / e. Probablemente la clasificación sea menos extraña, por lo que mis particiones de grub siempre lo serán sdX1.
Peter Cordes

3

Daré un punto / motivo extra para tener ambos, EFI y BIOS grub.

Dispositivo USB para iniciar un bucle Live SystemRescueCD.iso desde Grub2.

¿Por qué? Respuesta simple: se iniciará en una gran cantidad de PC, algunas tienen UEFI, otras tienen BIOS de 32 bits, etc.

Motivo realmente complejo: use hardware avanzado (UEFI) si es posible.

Muestra de uso real en vivo:

  • Memoria USB (formateada en modo GPT) con cuatro particiones
  • Primera partición (que se puede ver desde Windows 7 y versiones posteriores) en NTFS con el resto del tamaño de la memoria USB
  • Segunda partición para el archivo Grub2 y SystemRescueCD.iso con al menos 1GiB (mejor si es 2GiB para que pueda llevar dos versiones de SystemRescueCD.iso al mismo tiempo, solo para probar la nueva versión antes de reemplazar la anterior), normalmente uso el sistema de archivos Ext4 para ello
  • Tercera partición para EFI (lo que Windows llama ESP) formateada como Fat32 con al menos 512MiB (he visto algunas PC que si usan menos no muestran una memoria USB como medio de arranque)
  • Cuarta partición para BIOS_Grub (sin formato, pero se borra cuando se crea)

Una cosa importante: he visto un USB Stric de 8 GiB LG (uno que tengo) que se niega a aparecer en un arranque físico de PC UEFI si las particiones no están alineadas con los cilindros, pero se ven en otras PC UEFI y también en VirtualBOX con arranque UEFI modo activado ... cuando lo particiona si está alineado con MiB, usa todo el espacio, no cerca de 1MiB de espacio sin particionar al final, pero cuando está alineado con los cilindros, el último MiB incompleto no se usa ... si hago particiones MiB teniendo esto en cuenta (en otras palabras, hago una alineación manual del cilindro) funciona, pero como digo todavía está alineado con el cilindro (lo estoy haciendo manualmente en lugar de dejar que la herramienta de partición lo haga por usted).

Cómo obtener un dispositivo de recuperación USB tan bueno (tiene dos trucos):

  1. Alinear particiones a cilindros (mejor compatibilidad para alinear a MiB)
  2. Haga una instalación de grub --target = i386-pc y luego haga otra instalación de grub --target = x86_64-efi en la misma partición de grub, de modo que use solo un grub.cfg para ambos modos de arranque

Cómo arranca:

  • a) arrancando desde el BIOS antiguo, cargará MBR, luego la etapa 2 de la partición grub forma BIOS_grub, luego core.img desde la partición Grub2
  • b) el formulario de arranque compatible con UEFI, cargará el archivo .efi desde la partición ESP
  • grub.cfg se lee (si existe en la partición grub2)
  • entonces se muestra el menú grub2
  • luego selecciono arrancar desde el bucle SystemRescueCD.iso (con el parámetro dochace), he configurado dos opciones en grub.cfg, una para 32 bits, una para 64 bits (realmente tengo cuatro opciones, ya que configuré en dos un parámetro dostartx para arrancar directamente en la GUI).
  • después del arranque, puedo expulsar el dispositivo USB (todo Live Linux está en ramdrive gracias a ese docache), no es necesario escribir ningún comando, pendrive no está montado (nuevamente gracias al parámetro docache).

Con este dispositivo, puedo arrancar una PC vieja (si dejan arrancar desde USB) en 32 bits o también 64 bits (si tienen extensión extendida en el procesador), pero arrancando en modo BIOS.

Con este dispositivo, también puedo iniciar una nueva PC (si permiten iniciar desde USB) en 32 bits y 64 bits, pero iniciando en modo UEFI (ah, sí, puede iniciar en modo UEFI y luego simplemente iniciar Linux Live SystemRescueCD en 32 bits tanto en modo como en modo de 64 bits).

Así que tengo todo en un dispositivo de arranque de recuperación de memoria USB, capaz de arrancar cerca de todas las PC, modernas o antiguas (solo necesita soporte de arranque USB), no importa si 32 bits o 64 bits, BIOS o UEFI, etc. y puedo seleccione lo que quiero ejecutar 32 bits o 64 bits.

Además, lo había probado en una PC que se niega a instalar Windows 64Bits (antiguo procesador de 32Bits), pero poder ejecutar un Linux Live de 64bit (porque existe la capacidad PAE en ese procesador).

Nota al margen: la primera partición como NTFS es para almacenar datos que se pueden compartir con Windows 7 y versiones posteriores (XP no lo verá ya que no admite la partición GPT) ... debe ser la primera, no es necesario que esté en la inicial parte del disco, puede estar donde desee, pero reside como primera entrada en la tabla de particiones, esto es causado por el odioso modo de Windows para montar particiones en extraíbles, tiene un código específicamente programado para evitar el acceso a más de la primera partición, por lo que No se pueden montar los demás al mismo tiempo.

Extra para particiones de Windows y USB: si intercambia las entradas de particiones en la tabla de particiones, en otras palabras, coloca la partición a la que desea acceder como la primera en la tabla, Windows le permitirá acceder a ella (si se entiende su formato, fat32 y NTFS directamente, ext2 con controladores especiales, etc.), pero solo permitirá el acceso al que se encuentra en la primera entrada de la tabla de particiones ... hay una herramienta (llamada BootICEx86.exe) que puede hacer ese trabajo en Windows sin siquiera tener que desconectar el dispositivo USB.

Súper extra: también hay algunos pendrives (tengo mucha suerte de tener uno, un Sony 16GiB) que se pueden cambiar un poco con herramientas especiales (las mías con una herramienta de lexar) para que Windows aparezca como un HDD USB en lugar de una memoria USB , después de ese cambio, todas las ventanas le permitirán eliminar, crear y administrar particiones, también se puede montar más de una al mismo tiempo, cada una con su propia letra.

Los usuarios de Linux no se preocupan por eso, ya que Linux lo ve como un dispositivo de bloque particionable y no implementa un código especial para bloquear particiones de montaje, etc., como lo ha hecho Windows.

Oh, sí, estos últimos párrafos están escritos en caso de que alguien en M $ los lea, por lo que su cara cae al suelo, estoy tratando (no lo entenderé nunca, sé que es un objetivo perdido) para que eliminen código feo de Windows y permite a los usuarios tener particiones en memoria USB de forma nativa.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.