robot de la enciclopedia para niños

GNU GRUB para niños

Enciclopedia para niños
Datos para niños
Grub
Parte de Proyecto GNU
Grub logo.png Grub logo2.png
GRUB screenshot.png
Menú de GRUB en modo no gráfico
Información general
Tipo de programa Bootloader
Desarrollador Proyecto GNU
Modelo de desarrollo software de código abierto
Lanzamiento inicial 1995
Licencia GNU GPL 3+
Información técnica
Programado en Ensamblador, C
Plataformas admitidas IA-32, x86-64, PowerPC
Versiones
Última versión estable 2.06 (info) ( 8 de junio de 2021 (1 año, 7 meses y 24 días))
Serie Proyecto GNU
Grub
GRUB 2 (fr)
Enlaces
Sitio web oficial
Repositorio de código
Seguimiento de errores
Archivo:StartUp-Manager
Pantalla de StartUp-Manager, configurador gráfico para GRUB Legacy.
Archivo:GRUB customizer
Pantalla de GRUB Customizer, configurador gráfico para GRUB 2.

GNU GRUB (GNU GRand Unified Bootloader) es un cargador de arranque múltiple, desarrollado por el proyecto GNU que nos permite elegir qué Sistema Operativo arrancar de los instalados.

Se usa principalmente en sistemas operativos GNU/Linux. El sistema operativo Solaris ha usado GRUB como cargador de arranque en sistemas x86 desde la revisión 10 1/06.

Historia

GRUB fue inicialmente diseñado e implementado por el programador Erich Stefan Boleyn como parte del trabajo en el arranque del sistema operativo GNU Hurd desarrollado por la Free Software Foundation. En 1999, Gordon Matzigkeit y Yoshinori Okuji convirtieron a GRUB en un paquete de software oficial del Proyecto GNU y abrieron el desarrollo del mismo al público.

Alrededor de 2002 investigadores japoneses empezaron a trabajar en PUPA (siglas de Preliminary Universal Programming Architecture), cuyo objetivo era reescribir el cuerpo de GRUB para hacerlo más claro, seguro, robusto y poderoso. PUPA fue posteriormente renombrado a GRUB 2, y la versión original de GRUB fue renombrada a GRUB Legacy. A partir de entonces se fueron realizando actualizaciones de ambas versiones. La última actualización sobre GRUB Legacy (versión 0.97) fue realizada en 2005.

Sobre 2007 algunas distribuciones de GNU/Linux empezaron a usar GRUB 2. A finales de 2009 la mayor parte de las distribuciones de GNU/Linux tenían instalado GRUB 2 por defecto.

Características

GRUB es un cargador de arranque que cumple la Especificación Multiboot. De esta forma puede arrancar de forma uniforme los kernels que cumplen la Especificación Multiboot.

Está diseñado para cumplir los siguientes objetivos, listados por orden de importancia:

  • Funciones básicas tienen que ser sencillas para los usuarios finales.
  • Amplia funcionalidad para apoyar a los expertos y diseñadores del kernel.
  • Compatibilidad con versiones anteriores para arrancar FreeBSD, NetBSD, OpenBSD y Linux. Los núcleos compatibles como DOS, Windows NT y OS/2, son arrancables mediante una función de carga en cadena.

Características adicionales que soporta:

  • Reconoce múltiples formatos ejecutables.
  • Soporta kernels que no cumplen especificación multiboot.
  • Admite comandos de configuración y puede cargar una configuración preestablecida.
  • Provee interfaz de menú.
  • Tiene una interfaz de línea de comandos flexible.
  • Admite muchos sistemas de ficheros (BtrFS, ext2/ext3/ext4, FAT12/FAT16/FAT32, exFAT, HFS, HFS+” ISO9660, nilfs2, NTFS, ReiserFS, ZFS, ROMFS, JFS, XFS, ...).
  • Descompresión automática.
  • Acceso a datos ubicados en cualquier dispositivo instalado.
  • Independiente de la geometría de la unidad.
  • Detecta toda la RAM instalada.
  • Admite direccionamiento de bloque lógico (LBA).
  • Arranque de red.
  • Terminales remotos para permitir el control desde una estación remota.

Proceso de inicio de GRUB Legacy

  1. El BIOS busca un dispositivo de inicio (como el disco duro) y de ahí pasa el control al primer sector físico del dispositivo conocido como master boot record, son los primeros 512 bytes (primer sector) del disco duro y que forman la fase 1 de GRUB.
  2. La fase 1 de GRUB carga la siguiente fase de GRUB, ubicada físicamente en cualquier parte del disco duro. La fase 1 puede cargar ya sea la fase 1.5 o, directamente, la 2.
  3. La fase 1.5 de GRUB, ubicada en los siguientes 30 kilobytes del disco duro, carga la fase 2. En GRUB 2, esta fase ha dejado de existir.
  4. La fase 2 de GRUB (cargada por las fases 1 o 1.5) recibe el control, y presenta al usuario el menú de inicio.
  5. GRUB carga el kernel seleccionado por el usuario, en la memoria y le pasa el control.

En el caso de computadoras con sistema de arranque EFI, el firmware carga el ejecutable de GRUB directamente (fase 2), siempre y cuando esté correctamente instalado en la partición EFI y configurado en la NVRAM.

GRUB 2

Archivo:GNU GRUB components
boot.img tiene exactamente 446 Bytes y está escrito en el MBR (sector 0). core.img está escrito en el espacio restante entre el MBR y la primera partición, si es que lo hay disponible (por razones de compatibilidad con versiones anteriores la primera partición comienza en el sector 63 en vez del sector 1, aunque no es imposición). El /boot/grub-directorio puede estar ubicado en otra partición, o en la partición "/" ().

GRUB 2 es una reescritura de GRUB que comparte muchas características con su versión anterior, ahora conocida como GRUB Legacy. Las más importantes diferencias entre GRUB 2 y GRUB Legacy son:

  • El fichero de configuración de GRUB 2 es ‘grub.cfg’ en lugar del ‘grub.conf’ o ‘menu.lst’. Se añade nueva sintaxis y muchos nuevos comandos. El fichero ‘grub.cfg’ es típicamente automáticamente generado por ‘grub2-mkconfig’ lo que facilita mucho el uso.
  • Los números de partición en los nombres de los dispositivos GRUB ahora empiezan en 1, en lugar de en 0.
  • Una pequeña cantidad de almacenamiento persistente está disponible entre reinicios, usando los comandos ‘save_env’ y ‘load_env’ y la utilidad ‘grub2-editenv’. Esto no está disponible en todas las configuraciones.
  • GRUB 2 tiene formas más confiables de encontrar sus propios ficheros y los de los kernels de destino en sistemas de varios discos, y tiene comandos para buscar dispositivos usando etiquetas del sistema de archivos o identificadores únicos universales (UUID).
  • GRUB 2 soporta muchos más sistemas de ficheros, incluyendo pero no limitado a Ext4, HFS+, y NTFS.
  • GRUB 2 puede leer ficheros directamente de dispositivos LVM y RAID.
  • GRUB 2 tiene disponible un terminal gráfico y un sistema de menú gráfico
  • Los archivos de imagen que componen GRUB se han reorganizado; La etapa 1, la etapa 1.5 y la etapa 2 ya no existen. En su lugar GRUB 2 dispone de una variedad de imágenes de arranque (boot.img, diskboot.img, cdboot.img, pxeboot.img, lnxboot.img, kernel.img) para iniciar GRUB de varias formas, una imagen del núcleo (core.img) y un conjunto de módulos que se combinan con la imagen del núcleo (*.mod).
  • GRUB 2 introduce muchas instalaciones en módulos cargados dinámicamente, lo que permite que la imagen del núcleo sea más pequeña y que se construya de formas más flexibles

Véase también

Kids robot.svg En inglés: GNU GRUB Facts for Kids

kids search engine
GNU GRUB para Niños. Enciclopedia Kiddle.