GRUB (Español)
From ArchWiki
Article summary |
---|
Cubre diversos aspectos del cargador de arranque por defecto de Arch Linux, GRUB ("GRand Unified Bootloader") |
Available in languages |
English |
עברית |
简体中文 |
Русский |
Español |
Related articles |
Reinstalling GRUB |
Grub configure examples |
Grub-gfx |
Contents |
Installando el paquete Grub
Instale primero grub con pacman
pacman -Sy grub
Edite el archivo menu.lst con su configuración
nano /boot/grub/menu.lst
Nota: Use hd[a-z] para discos ide y sd[a-z] para los scsi o sata
Vea el mío como ejemplo:
# Archivo de configuración de GRUB - (GNU GRand Unified Bootloader) # /boot/grub/menu.lst # DISPOSITIVO CONVERSIONES # # Linux Grub # ------------------------- # /dev/fd0 (fd0) # /dev/hda (hd0) # /dev/hdb2 (hd1,1) # /dev/hda3 (hd0,2) # # CONFIGURACION DE LA RESOLUCION DEL FRAMEBUFFER # +-------------------------------------------------+ # | 640x480 800x600 1024x768 1280x1024 # ----+-------------------------------------------- # 256 | 0x301=769 0x303=771 0x305=773 0x307=775 # 32K | 0x310=784 0x313=787 0x316=790 0x319=793 # 64K | 0x311=785 0x314=788 0x317=791 0x31A=794 # 16M | 0x312=786 0x315=789 0x318=792 0x31B=795 # +-------------------------------------------------+ # Configuración general: timeout 5 default 1 color light-blue/black light-cyan/blue # Secciones de arranque # numeradas a partir del 1 en su orden de aparición # # PISTA: Si quiere un framebuffer de 1024x768, añada "vga=773" a la línea de su kernel. # #-* # (0) Arch Linux title Arch Linux [cpio] root (hd0,0) kernel /vmlinuz26 root=/dev/sda6 ro vga=773 initrd /kernel26.img title Arch Linux [thinkpad] root (hd0,0) kernel /vmlinuz26thinkpad root=/dev/sda6 ro video=vesafb:off acpi_sleep=s3_bios resume=swap:/dev/sda5 initrd /kernel26thinkpad.img
Copiar los puntos de montaje a mtab
grep -v rootfs /proc/mounts > /etc/mtab
Instalando el cargador de arranque en el MBR ("Master Boot Record")
Hay dos formas habituales de instalar GRUB. Una es crear un disco de arranque (en un disquete, o en un cd-rom), y otra que consiste en instalar desde una instalación de Arch que se esté ejecutando. Si está actualizando una versión de grub puede que le interese la última porque es más sencilla y rápida, aunque el sitio web de GRUB dictamina que el disco de arranque es más seguro.
Utilizando la utilidad grub-install
grub-install --root-directory Punto-de-montaje (hdn)
Instala grub en el MBR de un disco duro. La opción da la ruta a la imagen del kernel, si no está en /, p.ej. en /boot.
(hdn) es un disco, donde n es el número del disco, empezando desde 0.
Ejemplo:
Si tiene una partición de arranque separada y montada en /boot, haga una de las siguientes acciones
grub-install --root-directory=/boot '(hd0)' grub-install --root-directory=/boot sda grub-install --root-directory=/boot hda
Si notiene una partición de arranque separada, simplemente ejecute la orden sin la opción --root-directory
grub-install /dev/sda
Advertencia GRUB no entiende el esquema de nombres hda, sda, etc. Ve el disco en términos de (hd0), (hd1), etc. Esta es la razón por la que uno 'debe' tener cuidado al utilizar grub-install.
grub-install intenta relacionar los dispositivos BIOS con el formato hda/sda, y normalmente lo hace correctamente. La manera de comprobar si se hace correctamente es leyendo la salida de la propia orden una vez que ha finalizado la instalación del cargador de arranque. grub-install mostrará por pantalla algo como lo siguiente:
(fd0) /dev/fd0 (hd0) /dev/hda
Tendrá que comprobar usted si la relación es correcta. Si no lo es, vaya a /boot/grub y edite el archivo 'device.map' de la manera que sea correcta. Vuelva a ejecutar entonces la utilidad grub-install para reinstalar GRUB.
Configuración del cargador de arranque
La configuración de grub se hace en el archivo:
/boot/grub/menu.lst
- (hdn,m) es la partición m del disco n, comenzando los números por 0
- splashimage (hdn,m)/grub/Name.xpm.gz es el aarchivo de la imagen de arranque ("splash-image")
- default n es la entrada de arranque por defecto, la escogida una vez transcurrido el tiempo para que el usuario seleccione una entrada
- timeout m tiempo de espera m en segundos para una selección por parte del usuario, antes de arrancar la entrada por defecto
- password -md5 str contraseña cifrada de arranque 'str'
- title str Mensaje 'str' pidiendo una entrada de arranque
- root (hdn,m) partición base, donde reside el kernel
- kernel /path ro root=/dev/device initrd /initrd.img utiliza la opción root, si no encuentra el kernel en /
- makeactive
chainloader +1 establece la unidad activa y cede el proceso de arranque a su cargador de arranque (para Windows, por ejemplo) - map (hd0) (hd1)
map (hd1) (hd0) cambia los disco primario y secundario a la hora de arrancar, obligatorio para arrancar Windows desde un disco secundario - root (hdn,m,z)
kernel /boot/loader arranca la partición x de FreeBSD - default saved recuerda cada selección actual de arranque y la convierte en la nueva selección por defecto. Escriba "savedefault" al final de cada selección de arranque, para aquellas en que quiera que se utilice esta opción.
Para aquellos que les guste los efectos gráficos, existe la entrada Graphical GRUB.
Arranque dual
Estas son las dos maneras más comunes de configurar el archivo menu.lst. Para usos más complejos, vaya aquí.
Arranque dual con Windows
Añada esto al final de su archivo /boot/grub/menu.lst. Esto da por supuesto que su partición Windows es [s/h]da2.
# (2) Windows XP title Windows XP rootnoverify (hd0,1) makeactive chainloader +1
Arranque dual con Windows en un disco duro diferente
Añada esto al final de su archivo /boot/grub/menu.lst. Esto da por supuesto que su partición Windows es [s/h]db1.
# (2) Windows XP title Windows XP map (hd0) (hd1) map (hd1) (hd0) rootnoverify (hd1,0) makeactive chainloader +1
La función map engaña a su instalación de Windows para que piense que el disco secundario es en realidad el primario.
Arranque dual con otras distribuciones de linux
Se hace exactamente de la misma manera en que se carga Arch linux. Aquí se da por supuesto que la otra distribución está en la partición [s/h]da3.
title Other Linux root (hd0,2) kernel /boot/vmlinuz (añada aquí las opciones que sean necesarias) initrd /boot/initrd.img (si el otro kernel usa o necesita una)
Arranque dual con otra distribución de linux (mediante "Chainloading")
Para evitar la pesadilla del mantenimiento, podría querer encadenar al GRUB del MBR a otro cargador de arranque que pudiera tener instalado en el sector de arranque de una partición [(hd0,2) en nuestro ejemplo] en vez de en el MBR. De esta manera las cosas "automágicas" de la otra distribución gestionarán el archivo menu.lst de (hd0,2) (si también es grub) para su propia distribución y usted arrancará con todas las opciones necesarias (como detectar correctamente el último kernel utilizado) sin necesidad de copiar y pegar partes de aquel menu.lst en el suyo.
En nuestro ejemplo [1], GRUB está en el MBR y algún otro cargador de arranque (BL) (sea grub o lilo) está en el sector de arranque de (hd0,2).
------------------------------------------------- | | | | % (hd0,2) | | M | | | B % | | B | (hd0,0) | (hd0,1) | L % Otra | | R | | | % Distro | | | | | % | ------------------------------------------------- | ^ | chainloading | -----------------------------
Entonces, simplemente tiene que poner en su menu.lst:
title Otra distribución de Linux root (hd0,2) chainloader +1
Interacción de LiLO y GRUB
Si alguna vez utilizó lilo no olvide desinstalarlo con
pacman -R lilo
dado que algunas tareas (p.ej. la compilación del kernel utilizando make all
) harán una llamada de lilo, y entonces lilo se instalara por encima de grub.
Tenga en cuenta que esto no eliminará lilo en el MBR, sino que éste seŕa sobreescrito cuando usted instale otro cargador de arranque.
Resolución de problemas
GRUB error 15
Asegúrese de que la línea del kernel tenga ro
en el archivo menu.lst.