Difference between revisions of "GRUB2 (Español)"

From ArchWiki
Jump to: navigation, search
(ISO de Ubuntu)
(Redireccionar)
 
(22 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:Boot loaders (Español)]]
+
#REDIRECT [[GRUB (Español)]]
[[cs:GRUB2]]
+
[[de:GRUB]]
+
[[en:GRUB2]]
+
[[fr:GRUB2]]
+
[[id:GRUB2]]
+
[[it:GRUB2]]
+
[[ru:GRUB2]]
+
[[tr:GRUB2]]
+
[[zh-CN:GRUB2]]
+
[[zh-TW:GRUB2]]
+
{{Article summary start|Sumario}}
+
{{Article summary text|Este artículo describe varios aspectos de GRand Unified Bootloader (GRUB2) de próxima generación.}}
+
{{Article summary heading|Descripción}}
+
{{Article summary text|Para poder iniciar Arch Linux, es necesario tener instalado en el [[Master_Boot_Record_(Español)|Master Boot Record (MBR)]] o en la [[GUID_Partition_Table_(Español)|GUID Partition Table (GPT)]] un gestor de arranque compatible con Linux como '''GRUB(2)''', [[Syslinux_(Español)|Syslinux]], [[LILO|LILO]] o [[GRUB_Legacy|GRUB Legacy]]. El gestor de arranque es responsable de cargar el kernel y el [[Mkinitcpio_(Español)|ramdisk inicial]] antes de iniciar el [[Arch_Boot_Process_(Español)|proceso de arranque]].}}
+
{{Article summary heading|Relacionado}}
+
{{Article summary wiki|Burg}} - Burg es un gestor de arranque de nueva concepción basado en GRUB2. Es un nuevo formato de objeto que permite ser compilado por numerosos sistemas operativos, incluyendo Linux, Windows, OSX, Solaris, FreeBSD, etc. También dispone de un sistema de menú altamente configurable que funciona tanto en modalidad gráfica, como textual
+
{{Article summary heading|Resursos}}
+
{{Article summary wiki|GRUB_EFI_Examples}}
+
{{Article summary link|GNU GRUB -- GNU Project|http://www.gnu.org/software/grub/}}
+
{{Article summary end}}
+
[http://www.gnu.org/software/grub/ GRUB2] es la nueva versión de GRand Unified Bootloader (GRUB). GRUB2 derivada de [http://www.nongnu.org/pupa/ PUPA], un proyecto de investigación destinado a mejorar el GRUB: ha sido totalmente reescrito a fin de proporcionar una mayor modularidad y portabilidad [https://www.gnu.org/software/grub/grub-faq].
+
 
+
En resumen, el ''bootloader'' es el primer programa que se ejecuta cuando se inicia el equipo. Es responsable de cargar y transferir el control al kernel de Linux, que, a su vez, inicializa el resto del sistema operativo.
+
 
+
==Prefacio ==
+
 
+
Antes de comenzar, he aquí algunas aclaraciones útiles:
+
 
+
* El nombre de ''GRUB'' oficialmente se refiere a la versión 2 del software, consulte [https://www.gnu.org/software/grub/]. Si se está buscando el artículo para la versión Legacy, consulte [[GRUB Legacy]].
+
 
+
* Desde la versión 1.99-6 en adelante, el sistema de archivos [[Btrfs|Btrfs]] es compatible con la raíz {{ic|/}} (lo que elimina la necesidad de una partición {{ic|/boot}} separada con un sistema de archivos diferente). También son compatibles los algoritmos de compresión zlib o LZO.
+
 
+
* Para más información sobre UEFI GRUB2, es recomendable consultar las páginas [[UEFI]], [[GPT]] y [[UEFI_Bootloaders]] antes de leer este artículo.
+
 
+
===Nota para los usuarios de GRUB Legacy===
+
 
+
* La actualización de [[GRUB Legacy]] a [[GRUB]](2) es un proceso muy similar al de una instalación limpia de GRUB2, argumento tratado [[GRUB2_(Español)#Instalación|aquí]].
+
 
+
* Hay diferencias en las órdenes de GRUB y GRUB2. Le recomendamos que se familiarice con los [https://www.gnu.org/software/grub/manual/grub.html#Commands órdenes de GRUB2] antes de continuar. (Por ejemplo, «find» (encontrar) ha sido reemplazado por «search» (buscar)).
+
 
+
* GRUB2 es ahora ''modular'', y ya no requiere «stage 1.5». En consecuencia, el gestor de arranque tiene una capacidad limitada y los módulos son cargados desde el disco duro en caso de necesidad (por ejemplo, si necesita soporte de [[LVM]] o RAID).
+
 
+
* Las reglas de la nomenclatura de los dispositivos cambian de GRUB a GRUB2: Los discos duros están siendo ahora numerados a partir de 0, mientras que las particiones comienzan en 1 y son seguidos por el nombre del sistema de particionamiento usado. Por ejemplo, {{ic|/dev/sda1}} hace referencia a {{ic|(hd0,msdos1)}} (para sistemas que usan MBR), o  a {{ic|(hd0,gpt1)}} (para los sistemas que usan GPT).
+
 
+
===Requisitos previos para GRUB2 ===
+
 
+
====Sistemas BIOS====
+
 
+
=====Instrucciones específicas para [[GUID Partition Table (Español)|GUID Partition Table]] (GPT)=====
+
 
+
Para acloparse a la BIOS-GPT, GRUB2 requiere una partición propia ([http://www.gnu.org/software/grub/manual/html_node/BIOS-installation.html#BIOS-installation BIOS Boot Partition]), en la que se ubica su {{ic|core.img}}, ante la carencia de espacio (31KiB) después de MBR en los sistemas que utilizan el método de particionado GPT (en dicho lugar se ubica la GPT Primary Header y la Primary Partition Table).
+
Esta partición se utiliza por GRUB2 solo en las configuraciones de  BIOS-GPT, y no es necesario cuando se utiliza el método clásico de particionado (MBR) o si está en un sistema UEFI. Syslinux tampoco requiere esta partición.
+
 
+
Para las configuraciones de BIOS-GPT, cree una partición de aproximadamente 2MiB usando cgdisk o GNU Parted sin asignarle un sistema de archivos. La localización de la partición no es importante, pero es aconsejable colocarla cerca del inicio del disco, y antes de la partición {{ic|/boot}}. Se le asigna a la partición el tipo {{ic|EF02}} si se está usando cgdisk, o {{ic|set <BOOT_PART_NUM> bios_grub on}} si se usa GNU Parted.
+
 
+
{{Nota|Se debe crear la partición en cuestión antes de ejecutar la orden {{ic|grub-install}} o {{ic|grub-setup}}.}}
+
{{Nota | gdisk le permitirá crear la partición en cuestión de forma que reduzca al mínimo la pérdida de espacio (sectores 34-2047), desde el momento en que gdisk alinea automáticamente las particiones a un sector múltiple del sector 2048, si es posible.}}
+
 
+
=====Instrucciones específicas para [[Master Boot Record (Español)|Master Boot Record]] (MBR)=====
+
 
+
Por lo general, el espacio usable después de MBR (después de los 512 bytes dedicados a ella, y antes de la primera partición), es de 31 Kb, si hay algún problema de alineación de cilindros se resuelven en la tabla de particiones. Sin embargo, se recomienda mantener una distancia de aproximadamente 1 MiB para proporcionar el espacio suficiente para contener {{ic|core.img}} de GRUB2.  ({{bug|24103}}). Es recomendable utilizar una herramienta de particionado que permita la alineación de una partición de 1 MiB después de MBR para obtener el espacio necesario, y resolver otros problemas fuera de los primeros 512 bytes (que son ajenos a la incrustación de {{ic|core.img}}).
+
 
+
El particionamiento MBR tiene un mejor soporte en otros sistemas operativos, como Microsoft Windows (hasta Windows 7) y el Haiku, que el particionamiento GPT. Si tiene un arranque dual con otro sistema operativo, considere el uso de particionados MBR.
+
 
+
Es posible convertir un disco MBR a GPT si se dispone de un pequeño espacio libre. Véase [[GUID_Partition_Table_(Español)#Conversión_de_MBR_a_GPT|Convertir MBR a GPT]]
+
 
+
====Sistemas UEFI====
+
 
+
{{Nota|Es recomendable consultar las páginas [[UEFI]], [[GPT]] y [[UEFI_Bootloaders]] antes de seguir esta parte.}}
+
 
+
=====Crear y montar UEFI SYSTEM PARTITION  =====
+
Siga las instrucciones sobre [[Unified Extensible Firmware Interface#UEFI_System_Partition|crear una partición UEFI del sistema]] para crear una UEFI SYSTEM PARTITION. A continuación, proceda a montar la partición la UEFI SYSTEM PARTITION en {{ic|/boot/efi}}. Si la partición UEFISYS está montada en algún otro punto de montaje, sustituir {{ic|/boot/efi}} en consecuencia en las órdenes siguientes:
+
 
+
{{bc|
+
# mkdir -p /boot/efi
+
# mount -t vfat <UEFISYS_PART_DEVICE> /boot/efi
+
}}
+
 
+
Cree una carpeta <PARTICIÓN_UEFI_DEL_SISTEMA>{{ic|/EFI}}, si no existe:
+
# mkdir -p /boot/efi/EFI
+
 
+
==Instalación ==
+
 
+
===Sistemas BIOS===
+
 
+
====Realizar una copia de seguridad de los datos importantes====
+
 
+
En general, la instalación de GRUB(2) debería ser un éxito, pero es recomendable conservar los archivos de GRUB-legacy antes de instalar el paquete {{Pkg|grub-bios}}.
+
 
+
# mv /boot/grub /boot/grub-legacy
+
 
+
Haga una copia de seguridad del MBR dado que contiene el código de arranque y la tabla de particiones (sustituya {{ic|/dev/sd'''X'''}} con el identificativo de su disco):
+
 
+
# dd if=/dev/sdX of=/path/to/backup/mbr_backup bs=512 count=1
+
 
+
Solo los primeros 446 bytes del MBR contiene el código de arranque, mientras que los 64 restantes están dedicados a la tabla de particiones. Si no desea sobrescribirla, durante una eventual recuperación, se recomienda hacer copia de seguridad solo el código de arranque:
+
 
+
# dd if=/dev/sdX of=/path/to/backup/bootcode_backup bs=446 count=1
+
 
+
Si no ha sido capaz de instalar con éxito GRUB2, consulte [[#Restaurar_GRUB_Legacy|Restaurar GRUP Legacy]].
+
 
+
====Instalar el paquete grub-bios====
+
 
+
GRUB(2) se puede instalar con pacman, y reemplazar {{Pkg|grub-legacy}} o {{Pkg|grub}}, si está instalado.
+
 
+
# pacman -S grub-bios
+
 
+
{{Nota|Simplemente instalando el paquete no actualiza el archivo {{ic|/boot/grub/i386-pc/core.img}} o los módulos de GRUB(2) en {{ic|/boot/grub/i386-pc}}. Es necesario actualizar la imagen {{ic|core.img}} y los módulos de forma manual utilizando {{ic|grub-install}}, como se explica a continuación.}}
+
 
+
==== Instalar los archivos de arranque de grub2====
+
 
+
Hay tres formas de instalar los archivos de arranque GRUB(2) en el sistema BIOS :
+
 
+
*[[#Instalación en la «BIOS Boot Partition» con el esquema de particionado GPT]] (recomendado con [[GUID_Partition_Table_(Español)|GPT]]),
+
*[[#Instalación en la región de 440 bytes del MBR]] (recomendado con [[Master Boot Record (Español)|MBR]]),
+
*[[#Instalación en una partición o disco sin particiones]] (no recomendado),
+
*[[#Generar únicamente core.img]] (el método más seguro, pero requiere de un gestor de arranque diferente, como [[grub-legacy]] o [[syslinux]], que permitirá el cambio de {{ic|/boot/grub/i386-pc/core.img}}).
+
 
+
{{Nota|Véase http://www.gnu.org/software/grub/manual/grub.html#BIOS-installation para documentación adicional.}}
+
 
+
=====Instalación en la región de 440 bytes del MBR=====
+
 
+
Para instalar {{ic|grub-bios}} en la región de 440 bytes relativa al código de arranque, también llamada Master Boot Record, ubicado en la carpeta {{ic|/boot/grub}}, cree {{ic|/boot/grub/i386-pc/core.img}}, e insértelo en el sector de 31KiB (el tamaño varía dependiendo de la alineación de las particiones) post-MBR o en la partición del boot de la BIOS(partición GPT), ejecutando:
+
 
+
# modprobe dm-mod
+
# grub-install --target=i386-pc --boot-directory=/boot --recheck --debug /dev/sda
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
# mkdir -p /boot/grub/locale
+
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
+
 
+
donde {{ic|/dev/sda}} es la partición de destino (En el caso de particiones MBR, se refiere a la primera unidad de disco SATA). Si utiliza [[LVM]] para la partición {{ic|/boot}}, puede instalar GRUB2 en todos los discos físicos.
+
 
+
{{Nota|Sin especificar las opciones {{ic|--target}} o {{ic|--directorio}}, {{ic|grub-install}}  no logra determinar el tipo de firmware en el que grub(2) se instalará, lo que mostrará el siguiente mensaje de error : {{ic|source_dir doesn't exist. Please specify --target or --directory.}}}}
+
{{Nota|Después de ejecutar la orden {{ic|grub-install}}, la carpeta {{ic|/boot/grub/locale}} es posible que ya exista, por lo tanto, ejecutar {{ic|# mkdir -p /boot/grub/locale}} será inútil.}}
+
 
+
{{Nota|La opción {{ic|--no-floppy}} ha sido eliminada de {{ic|grub-install}} en la liberación de la versión 2.00~beta2 por los desarrolladores, y ha sido sustituida por {{ic|--allow-floppy}}.}}
+
 
+
{{Advertencia|Asegúrese de revisar el contenido de la carpeta {{ic|/boot}} si se utiliza la segunda orden. El parámetro {{ic| boot-directory}} a veces puede crear una segunda carpeta {{ic|/boot}} dentro de la ya existente. La instalación incorrecta de GRUB, se vería así: {{ic|/boot/boot/grub/}}.}}
+
 
+
===== Instalación en la ''«BIOS Boot Partition»'' con el esquema de particionado GPT =====
+
 
+
Los discos [[GUID_Partition_Table_(Español)|GUID Partition Table]] no tienen reservado un «espacio de arranque».  Por lo tanto, es necesario crear una partición de arranque de la BIOS (0xEF02) para contener la imagen principal de GRUB.
+
 
+
Usando GNU Parted, se puede hacer esta operación (crear una partición y asignarle el tipo de código -0xEF02-) usando una orden como la siguiente:
+
 
+
# parted /dev/disk set partition-number bios_grub on
+
 
+
Si está utilizando gdisk, establezca el tipo de partición a {{Keypress|0xEF02}}. Con los programas de particionado que requieren establecer la GUID directamente, esta última debe mostrar el valor {{ic|‘21686148-6449-6e6f-744e656564454649’}} (guardado en el disco como {{ic|"Hah!IdontNeedEFI"}} si es interpretado como ASCII).
+
 
+
{{Advertencia|Tenga mucho cuidado de qué partición se selecciona cuando se marca como una ''BIOS Boot Partition''.  Cuando GRUB encuentra una BIOS Boot Partition durante la instalación, automáticamente sobrescribe parte de ella. Asegúrese de que la partición no contiene ningún otro dato.}}
+
 
+
Para configurar {{ic|grub-bios}} en un disco GPT, hay que darle contenido al directorio {{ic|/boot/grub}}, generar el archivo {{ic|/boot/grub/i386-pc/core.img}}, e incrustarlo en la BIOS Boot Partition, para todo lo cual ejecutaremos:
+
 
+
# modprobe dm-mod
+
# grub-install --target=i386-pc --recheck --debug /dev/sda
+
# mkdir -p /boot/grub/locale
+
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
+
 
+
donde {{ic|/dev/sda}} es el destino de la instalación.
+
 
+
=====Instalación en una partición o disco sin particiones=====
+
 
+
{{Nota|{{ic|grub-bios}} (cualquier versión, incluida la fase de desarrollo en el repositorio de Bazaar) no alienta a los usuarios a instalar en el sector de arranque de una partición o disco sin particiones, contrariamente a lo que hace syslinux o GRUB Legacy. Esta opción desaconsejada, incluso por los desarrolladores de Arch Linux.}}
+
 
+
Para instalar grub2 en el sector de arranque de una partición o disco sin particiones (por ejemplo, superfloppy), hay que ejecutar (suponiendo que el dispositivo es {{ic|/dev/sdaX}} y que corresponde a la partición {{ic|/boot}}):
+
 
+
# modprobe dm-mod
+
# chattr -i /boot/grub/i386-pc/core.img
+
# grub-install --target=i386-pc --recheck --debug --force /dev/sdaX
+
# mkdir -p /boot/grub/locale
+
# cp /usr/share/locale/en@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
+
# chattr +i /boot/grub/i386-pc/core.img
+
Necesitará la opción {{ic|--force}} para permitir el uso de blocklists, pero no se debe usar {{ic|1=--grub-setup=/bin/true}}, lo que equivale a generar únicamente {{ic|core.img}}).
+
 
+
Se recibirán los mensajes de advertencia que sirven para explicar los riesgos de este enfoque:
+
 
+
/sbin/grub-setup: warn: Attempting to install GRUB to a partitionless disk or to a partition. This is a BAD idea.
+
/sbin/grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists.
+
                        However, blocklists are UNRELIABLE and their use is discouraged.
+
 
+
Sin la opción {{ic|--force}}, recibirá el siguiente error y, consiguientemente, {{ic|grub-setup}} no podrá instalar su propio código en el MBR.
+
 
+
/sbin/grub-setup: error: will not proceed with blocklists
+
 
+
Especificando {{ic|--force}}, sin embargo, debe obtener:
+
 
+
Installation finished. No error reported.
+
 
+
{{ic|grub-setup}} no lo hace automáticamente al instalar el gestor de arranque en una partición, o en un disco sin particiones, ya que se basa en el mismo blocklists integrado en el sector de arranque de la partición para localizar {{ic|/boot/grub/i386-pc/core.img}} y la ruta al directorio {{ic|/boot/grub}}. Las áreas que contienen los archivos de arriba pueden cambiar en caso de alteración de la partición (al copiar o borrar archivos, etc.) Para obtener más información, consulte https://bugzilla.redhat.com/show_bug.cgi?id=728742 y https://bugzilla.redhat.com/show_bug.cgi?id=730915.
+
 
+
La solución propuesta consiste en establecer la etiqueta de inmutable a {{ic|/boot/grub/i386-pc/core.img}}, de modo que la posición de {{ic|core.img}} en el disco no se vea alterada. Esta opción debe ser establecida solo si {{ic|grub-bios}} se encuentra instalado en una partición o disco sin particiones, y NO en el caso de una instalación sencilla en el MBR o la generación de {{ic|core.img}} sin incorporarla en ningún sector de arranque (mencionado anteriormente).
+
 
+
=====Generar únicamente core.img =====
+
 
+
Para completar la carpeta {{ic|/boot/grub}} y generar un {{ic|/boot/grub/i386-pc/core.img}} SIN instalar GRUB2 en el MBR, añada {{ic|1=--grub-setup=/bin/true}} a {{ic|grub-install}}:
+
 
+
# modprobe dm-mod
+
# grub-install --target=i386-pc --grub-setup=/bin/true --recheck --debug /dev/sda
+
# mkdir -p /boot/grub/locale
+
# cp /usr/share/locale/en@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
+
 
+
A continuación, puede realizar el traslado del {{ic|core.img}} a GRUB2 desde GRUB Legacy o syslinux.
+
 
+
====Crear un archivo de configuración de GRUB2 BIOS====
+
 
+
A continuación, generar un archivo de configuración de GRUB2 (puede encontrar más información en la sección «Configuración»):
+
 
+
  # grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
{{Nota|La ubicación exacta es {{ic|/boot/grub/grub.cfg}}, NO {{ic|/boot/grub/i386-pc/grub.cfg}}.}}
+
 
+
Si grub2 muestra el error «no suitable mode found» durante el arranque, consulte [[#Corregir_el_error_GRUB2_«no_suitable_mode_found»|Corregir el error GRUB2 «no suitable mode found»]].
+
 
+
Si {{ic|grub-mkconfig}} no llegara a prosperar, convierta su {{ic|/boot/grub/menu.lst}} a {{ic|/boot/grub/grub.cfg}} con :
+
 
+
# grub-menulst2cfg /boot/grub/menu.lst /boot/grub/grub.cfg
+
 
+
Por ejemplo:
+
 
+
{{hc|/boot/grub/menu.lst|<nowiki>
+
default=0
+
timeout=5
+
 
+
title  Arch Linux Stock Kernel
+
root  (hd0,0)
+
kernel /vmlinuz-linux root=/dev/sda2 ro
+
initrd /initramfs-linux.img
+
 
+
title  Arch Linux Stock Kernel Fallback
+
root  (hd0,0)
+
kernel /vmlinuz-linux root=/dev/sda2 ro
+
initrd /initramfs-linux-fallback.img
+
</nowiki>}}
+
 
+
{{hc|/boot/grub/grub.cfg|<nowiki>
+
set default='0'; if [ x"$default" = xsaved ]; then load_env; set default="$saved_entry"; fi
+
set timeout=5
+
 
+
menuentry 'Arch Linux Stock Kernel' {
+
  set root='(hd0,1)'; set legacy_hdbias='0'
+
  legacy_kernel  '/vmlinuz-linux' '/vmlinuz-linux' 'root=/dev/sda2' 'ro'
+
  legacy_initrd '/initramfs-linux.img' '/initramfs-linux.img'
+
 
+
}
+
 
+
menuentry 'Arch Linux Stock Kernel Fallback' {
+
  set root='(hd0,1)'; set legacy_hdbias='0'
+
  legacy_kernel  '/vmlinuz-linux' '/vmlinuz-linux' 'root=/dev/sda2' 'ro'
+
  legacy_initrd '/initramfs-linux-fallback.img' '/initramfs-linux-fallback.img'
+
}
+
</nowiki>}}
+
 
+
Si se ha reiniciado el sistema, olvidándose de crear {{ic|/boot/grub/grub.cfg}} ejecute el arranque en la shell de comandos de GRUB2 y escriba:
+
 
+
sh:grub> insmod legacycfg
+
sh:grub> legacy_configfile ${prefix}/menu.lst
+
 
+
Ellos hacen de arranque en Arch Linux y vuelve a crear {{ic|/boot/grub/grub.cfg}} de manera adecuada.
+
 
+
{{Nota|La opción anterior solo funciona en los sistemas BIOS, no en los sistemas UEFI.}}
+
 
+
==== Multiboot para sistemas de BIOS ====
+
 
+
=====Inicio de Microsoft Windows en sistemas BIOS-MBR =====
+
 
+
{{Nota|GRUB2 soporta arrancar directamente de {{ic|bootmgr}} y la carga del sector de arranque no es necesaria para ejecutar Windows su configuración BIOS-MBR}}
+
 
+
{{Advertencia|Tenga en cuenta que {{ic|bootmgr}} está contenida en la partición etiquetada como {{ic|SYSTEM PARTITION}}, no en la principal que aloja el sistema de archivos de Windows. Puede localizarla usando la orden {{ic|blkid}}, la cual no es más grande de 100MB, similar a la partición de boot de Arch. Consulte para más información [[wikipedia:System_partition_and_boot_partition]].}}
+
 
+
Encontrar el UUID del sistema de archivos NTFS de la partición SYSTEM PARTITION de Windows, donde {{ic|bootmgr}} y sus archivos residen. Por ejemplo, si {{ic|bootmgr}} se encuentra en {{ic|/media/Windows/bootmgr}}:
+
 
+
Para Windows Vista/7/8:
+
 
+
# grub-probe --target=fs_uuid /media/SYSTEM_RESERVED/bootmgr
+
69B235F6749E84CE
+
 
+
# grub-probe --target=hints_string /media/SYSTEM_RESERVED/bootmgr
+
--hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1
+
 
+
{{Nota|{{ic|grub-probe}} debe ser ejecutado como root.}}
+
 
+
{{Nota|Para Windows XP, reemplace {{ic|bootmgr}} por {{ic|ntldr}} en las órdenes anteriores.}}
+
 
+
A continuación, agregue el anterior código en el archivo {{ic|/etc/grub.d/40-custom}} o {{ic|/boot/grub/custom.cfg}} y regenere {{ic|grub.cfg}} con {{ic|grub-mkconfig}} como se explicó anteriormente para cargar Windows (XP, Vista, 7 o 8) instalado en la modalidad BIOS-MBR:
+
 
+
Para Windows Vista/7/8:
+
 
+
<pre>
+
menuentry "Microsoft Windows Vista/7/8 BIOS-MBR" {
+
    insmod part_msdos
+
    insmod ntfs
+
    insmod search_fs_uuid
+
    insmod ntldr   
+
    search --fs-uuid --no-floppy --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 69B235F6749E84CE
+
    ntldr /bootmgr
+
}</pre>
+
 
+
Para Windows XP:
+
 
+
menuentry "Microsoft Windows XP" {
+
    insmod part_msdos
+
    insmod ntfs
+
    insmod search_fs_uuid
+
    insmod ntldr   
+
    search --fs-uuid --no-floppy --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 69B235F6749E84CE
+
}
+
 
+
{{ic|/etc/grub.d/40_custom}} se puede utilizar como una plantilla para crear {{ic|/etc/grub.d/nn_custom}}. Donde nn define la prioridad, indicando el orden en que los scripts son ejecutados. El orden de ejecución de los scripts determina la posición de las entradas en el menú de arranque de grub.
+
 
+
{{Nota| nn debe ser mayor que 06 para garantizar que los scripts necesarios se ejecuten primero.}}
+
 
+
===Sistemas UEFI===
+
 
+
{{Nota|Es recomendable consultar las páginas [[UEFI|UEFI]], [[GPT|GPT]] y [[UEFI_Bootloaders|UEFI_Bootloaders]] antes de leer esta parte.}}
+
 
+
==== Ejemplos UEFI para hardware específico ====
+
Es bien sabido que los fabricantes de placas base implementan UEFI de modo diferente. Los usuarios que experimenten para hacer que funcione correctamente Grub/EFI se les anima a compartir los pasos seguidos durante la instalación para determinar las diferencias en cuanto a lo que se describe a continuación. En un esfuerzo por mantener el artículo sobre [[GRUB]] lo más limpio y ordenado posibles, consulte la página [[GRUB EFI Examples|ejemplos para GRUB EFI]] para estos casos especiales.
+
 
+
====Instalar el paquete grub-uefi====
+
 
+
{{Nota|A menos que se especifique lo contrario, como EFI 1.x, EFI y UEFI son términos equivalentes para denotar firmware UEFI 2.x. Además, a menos que se especifique explícitamente, las instrucciones son de carácter general y no solo a sistemas Mac. Algunos pueden no funcionar o ser diferentes en estos sistemas. La implementación EFI de Apple no es la versión EFI 1.1 ni UEFI 2.x, sino que incluye aspectos relacionados con ambos. Este tipo de firmware no es para cualquier versión de UEFI, por lo que no deben ser considerados como estándar.}}
+
 
+
El gestor de arranque EFI para GRUB(2) está disponible en Arch y solo en la versión 1.99~rc1 en adelante. Para instalarlo, observe primeramente [[Unified_Extensible_Firmware_Interface_(Español)#Detectar_la_arquitectura_del_firmware_UEFI|la arquitectura de su firmware UEFI]] (i386 o x86_64).
+
 
+
Teniendo en cuenta esta información, instale el paquete adecuado.
+
 
+
Para firmware UEFI de 64-bit :
+
# pacman -S grub-efi-x86_64
+
 
+
Para firmware UEFI 32-bit:
+
# pacman -S grub-efi-i386
+
 
+
{{Nota|La simple instalación del paquete no actualizará el archivo {{ic|core.efi}} y los módulos de la partición del sistema UEFI GRUB(2). Tendrá que actualizarlos manualmente usando {{ic|grub-install}}, como se explica a continuación.}}
+
 
+
====Instalar los archivos de arranque de grub-uefi====
+
 
+
=====Instalación en UEFI SYSTEM PARTITION =====
+
 
+
{{Nota|Se supone que está utilizando las siguientes órdenes:{{ic|grub-efi-x86_64}}. Sustituir por {{ic|grub-efi-i386}}, si fuera el caso, reemplazando cada aparición de {{ic|x86_64}} con {{ic|i386}}.}}
+
{{Nota|Para hacer que esto funcione necesita arrancar en modalidad UEFI y no mediante BIOS. Si se ha efectuado el arranque basta con copiar el archivo ISO de instalación en una unidad USB, siendo necesario seguir [[UEFI#Create_UEFI_bootable_USB_from_ISO|esta guía]] o grub-install mostrará errores}}
+
 
+
La partición UEFI del sistema  se debe instalar en {{ic|/boot/efi}} para que el script de instalación de GRUB la reconozca:
+
 
+
# mkdir -p /boot/efi
+
# mount -t vfat /dev/sdXY /boot/efi
+
 
+
A continuación, instalar el aplicación UEFI de GRUB y sus módulos en {{ic|/boot/grub/x86_64-efi}} (recomendado)  usando:
+
 
+
# modprobe dm-mod
+
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck --debug
+
# mkdir -p /boot/grub/locale
+
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
+
 
+
 
+
{{Nota|Si no especifica las opciones {{ic|--target}} o {{ic|--directory}}, {{ic|grub-install}} no logrará determinar el tipo de firmware sobre el que GRUB2 será instalado, lo que mostrará el mensaje de error siguiente: {{ic|source_dir doesn't exist. Please specify --target or --directory}}}}
+
 
+
Si desea instalar los módulos de grub2 y {{ic|grub.cfg}} en la carpeta {{ic|/boot/efi/EFI/grub}} y la aplicación {{ic|grubx64.efi}} en {{ic|/boot/efi/EFI/arch_grub}}, utilice:
+
 
+
# modprobe dm-mod
+
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --boot-directory=/boot/efi/EFI --recheck --debug
+
# mkdir -p /boot/efi/EFI/grub/locale
+
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/efi/EFI/grub/locale/en.mo
+
 
+
La opción {{ic|--efi-directory}} indica el punto de montaje de la partición UEFI del sistema, {{ic|--bootloader-id}} indica el nombre del directorio donde se instalará la aplicación {{ic|grubx64.efi}}, y {{ic|--boot-directory}} contiente la ruta de acceso al directorio de instalación de los módulos (y será la sede del archivo de configuración {{ic|grub.cfg}}).
+
 
+
La ruta actual es la siguiente:
+
 
+
<efi-directory>/<efi o EFI>/<bootloader-id>/grubx64.efi
+
 
+
<boot-directory>/grub/x86_64-efi/<tutti i moduli, grub.efi, core.efi, grub.cfg>
+
 
+
{{Nota|{{ic|--bootloader-id}} no cambia la ruta {{ic|<boot-directory>/grub}}. Por ejemplo, no puede instalar los módulos en {{ic|<boot-directory>/<bootloader-id>}}, porque la ruta está codificada en {{ic|<boot-directory>/grub}}.}}
+
 
+
Si {{ic|<nowiki>--efi-directory=/boot/efi --boot-directory=/boot/efi/EFI --bootloader-id=grub</nowiki>}}:
+
 
+
<efi-directory>/<EFI or efi>/<bootloader-id> == <boot-directory>/grub == /boot/efi/EFI/grub
+
 
+
Si {{ic|<nowiki>--efi-directory=/boot/efi --boot-directory=/boot/efi/EFI --bootloader-id=arch_grub</nowiki>}}:
+
 
+
<efi-directory>/<EFI or efi>/<bootloader-id> == /boot/efi/EFI/arch_grub
+
<boot-directory>/grub == /boot/efi/EFI/grub
+
 
+
Si {{ic|<nowiki>--efi-directory=/boot/efi --boot-directory=/boot --bootloader-id=arch_grub</nowiki>}}:
+
 
+
<efi-directory>/<EFI or efi>/<bootloader-id> == /boot/efi/EFI/arch_grub
+
<boot-directory>/grub == /boot/grub
+
 
+
Si {{ic|<nowiki>--efi-directory=/boot/efi --boot-directory=/boot --bootloader-id=grub</nowiki>}}:
+
 
+
<efi-directory>/<EFI or efi>/<bootloader-id> == /boot/efi/EFI/grub
+
<boot-directory>/grub == /boot/grub
+
 
+
El archivo {{ic|<efi-directory>/<EFI or efi>/<bootloader-id>/grubx64.efi}} es una copia exacta de {{ic|<boot-directory>/grub/x86_64-efi/core.efi}}.
+
 
+
{{Nota|Desde GRUB2 2.00, la opción {{ic|--efi-directory}} de {{ic | grub-install}} sustituye a la antigua {{ic|--root-directory}}, que está en desuso.}}
+
 
+
{{Nota|Las opciones {{ic|--efi-directory}} y {{ic|--bootloader-id}} son especificaciones de GRUB(2) UEFI.}}
+
 
+
En todos los casos, la partición UEFI del sistema debe montarse como {{ic|grub-install}} para instalar {{ic|grubx64.efi}}, que será lanzado por el firmware (con el elemento creado con {{ic|efibootmgr}}, en los sistemas que no son Mac).
+
 
+
Si mira de cerca, se dará cuenta de la ausencia de una opción que especifica el dispositivo en el que instalar el gestor de arranque (por ejemplo, {{ic|/dev/sda}}). Estas opciones son ignoradas por el script de instalación, ya que los gestores de arranque UEFI no utilizan el MBR de la partición.
+
 
+
Ahora será capaz de arrancar a través de UEFI creando un {{ic|grub.cfg}} siguiendo [[#Crear_un_archivo_de_configuración_para_GRUB2 UEFI|Crear un archivo de configuración para GRUB2 UEFI]] y [[#Crear_una_entrada_para_GRUB2_en_el_Firmware_Boot_Manager|Crear una entrada para GRUB2 en el Firmware Boot Manager]].
+
 
+
====Crear un archivo de configuración para GRUB2 UEFI====
+
 
+
Se genera un archivo de configuración de GRUB2 usando la siguiente orden:
+
 
+
# grub-mkconfig -o <boot-directory>/grub/grub.cfg
+
 
+
{{Nota|La ubicación exacta es {{ic|<boot-directory>/grub/grub.cfg}}, NO {{ic|<boot-directory>/grub/x86_64-efi/grub.cfg}}.}}
+
 
+
Si ha utilizado {{ic|<nowiki>--boot-directory=/boot</nowiki>}}:
+
 
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
Si, en cambio, utiliza {{ic|<nowiki>--boot-directory=/boot/efi/EFI</nowiki>}}:
+
 
+
# grub-mkconfig -o /boot/efi/EFI/grub/grub.cfg
+
 
+
Las rutas anteriores son independientes del valor de la opción {{ic|--bootloader-id}}.
+
 
+
Si GRUB2 muestra el error «no suitable mode found», consulte [[#Corregir el error de GRUB2 «no suitable mode found»]]
+
 
+
==== Crear entrada de GRUB2 en el gestor de arranque del firmware ====
+
 
+
A partir de la versión 2.00 de grub-efi-x86_64, {{ic|grub-install}} automáticamente intentará crear una entrada de menú en el gestor de arranque. Si no es así, véase [[Beginners'_Guide (Español)#GRUB_2]] para obtener instrucciones sobre cómo usar {{ic|efibootmgr}} a fin de crear una entrada en el menú. De todas formas, el problema probablemente sea que no se ha arrancado el CD/USB en la modalidad UEFI, como se indica en [[Unified_Extensible_Firmware_Interface_(Español)#Crear_un_USB_booteable_de_UEFI_desde_la_ISO]]
+
 
+
====Construir una aplicación UEFI Standalone para GRUB2====
+
 
+
Es posible crear una aplicación UEFI standalone (grubx64_standalone.efi), que incluye todos los módulos necesarios en el interior de un memdisk, eliminando virtualmente la necesidad de contar con un directorio separado que contenga todos los módulos UEFI de GRUB2 y otros archivos relacionados. Para lograr el objetivo, vamos a utilizar la orden {{ic|grub-mkstandalone}}, incluido en el paquete {{Pkg|grub-common}} >=1:1.99-6.
+
 
+
La forma más sencilla de hacerlo es a través de la orden de instalación que se mencionó anteriormente, sin embargo, teniendo cuidado de especificar los módulos que desea incluir. Por ejemplo:
+
 
+
# grub-mkstandalone --directory="/usr/lib/grub/x86_64-efi/" --format="x86_64-efi" --compression="xz" \
+
--output="/boot/efi/EFI/arch_grub/grubx64_standalone.efi" <archivos adicionales que se desea incluir>
+
 
+
El archivo {{ic|grubx64_standalone.efi}} asume que {{ic|grub.cfg}} se encuentra en su $prefix, es decir, {{ic|(memdisk)/boot/grub}}. El memdisk se incluye a continuación en la aplicación EFI. El script {{ic|grub-mkstandlone}} le permite especificar los archivos a incluir en la imagen memdisk como argumentos del script (en <archivos adicionales que se desea incluir>).
+
 
+
Si, por ejemplo, el archivo {{ic|grub.cfg}} se encuentra en {{ic|/home/usuario/Desktop/grub.cfg}}, se creará un directorio temporal {{ic|/home/usuario/Desktop/boot/grub}} y se copiará el archivo {{ic|/home/usuario/Desktop/grub.cfg}} en {{ic|/home/usuario/Desktop/boot/grub/grub.cfg}} y, finalmente, se colocará en {{ic|/home/usuario/Desktop/boot/grub/grub.cfg}} con la orden {{ic|cd}} y, a continuación, ejecute:
+
 
+
# grub-mkstandalone --directory="/usr/lib/grub/x86_64-efi/" --format="x86_64-efi" --compression="xz" \
+
--output="/boot/efi/EFI/arch_grub/grubx64_standalone.efi" "boot/grub/grub.cfg"
+
 
+
La razón de usar cd en {{ic|/home/user/Desktop/boot/grub/}} es que hace pasar la ruta del archivo como  {{ic|boot/grub/grub.cfg}} (nótese la ausencia de una barra - boot/ vs /boot/) y ello por que {{ic|dir1/dir2/file}} se incluye como {{ic|(memdisk)/dir1/dir2/file}} por el script {{ic|grub-mkstandalone}}.
+
 
+
Si pasa {{ic|/home/user/Desktop/grub.cfg}} en el archivo se incluirá como {{ic|(memdisk)/home/user/Desktop/grub.cfg}}. Si pasa {{ic|/home/user/Desktop/boot/grub/grub.cfg}} en el archivo se incluirá como {{ic|(memdisk)/home/user/Desktop/boot/grub/grub.cfg}}. Esa es la razón para ejecutar cd en {{ic|/home/user/Desktop/boot/grub/}} que pasa a {{ic|boot/grub/grub.cfg}}, para incluir el archivo como {{ic|(memdisk)/boot/grub/grub.cfg}}, que es lo que {{ic|grub.efi}} espera que el archivo sea.
+
 
+
Ahora tendrá que crear una entrada en UEFI Boot Manager para {{ic|/boot/efi/EFI/arch_grub/grubx64_standalone.efi}} usando {{ic|efibootmgr}}. Consulte [[#Crear entrada de GRUB2 en el gestor de arranque del firmware]].
+
 
+
==== Multiboot en sistemas UEFI ====
+
 
+
===== Ejecutar la carga de Microsoft Windows en sistemas de UEFI-GPTx86_64 =====
+
 
+
Se puede encontrar el UUID del sistema de archivos FAT32 en la partición UEFI del sistema, donde residen los archivos del gestor de arranque UEFI de Windows. Por ejemplo, si el archivo {{ic|bootmgfw.efi}} se encuentra en {{ic|/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi}} (se ignora la diferencia entre letras mayúsculas y minúsculas, dado que no son irrelevantes en un sistema de archivos FAT), ejecute:
+
 
+
# grub-probe --target=fs_uuid /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
+
1ce5-7f28
+
 
+
# grub-probe --target=hints_string /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
+
--hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1
+
 
+
{{Nota|{{ic|grub-probe}} debe ser ejecutado como root.}}
+
 
+
A continuación, agregue el siguiente código a {{ic|/boot/efi/EFI/grub/grub.cfg}} o {{ic|/boot/efi/EFI/arch/grub.cfg}} para ejecutar la carga de Windows x86_64 (Vista SP1+, 7 o 8) en el sistema UEFI-GPT:
+
 
+
menuentry "Microsoft Windows Vista/7/8 x86_64 UEFI-GPT" {
+
    insmod part_gpt
+
    insmod fat
+
    insmod search_fs_uuid
+
    insmod chain
+
    search --fs-uuid --no-floppy --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 1ce5-7f28
+
    chainloader /efi/Microsoft/Boot/bootmgfw.efi
+
}
+
 
+
==Configuración==
+
 
+
Es posible generar {{ic|grub.cfg}} de forma automática o modificarlo manualmente.
+
 
+
{{Nota|Para sistemas EFI, si GRUB2 se ha instalado con la opción de {{ic|--boot-directory}} activa, {{ic|grub.cfg}} debe ser colocado en el mismo directorio de {{ic|grubx64.efi}}. De lo contrario, {{ic|grub.cfg}} se posicionará en {{ic|/boot/grub}}. Al igual que ocurre en la versión BIOS de GRUB2}}
+
 
+
{{Nota|La siguiente es una propuesta de [http://members.iinet.net/ ~ herman546/p20/GRUB2 20Configuration%%% 20File 20Commands.html guía completa] para la configuración de GRUB2}}
+
 
+
=== Generación automática utilizando grub-mkconfig (recomendado) ===
+
 
+
El equivalente del viejo {{ic|menu.lst}} está representado por los archivos {{ic|/etc/default/grub}} y {{ic|/etc/grub.d/*}}. Estos archivos son utilizados generalmente por {{ic|grub-mkconfig}} para generar {{ic|/boot/grub/grub.cfg}}. Para generar un {{ic|grub.cfg}} use la siguiente orden:
+
 
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
{{ic|/etc/grub.d/10_linux}} se establece para agregar automáticamente los elementos de menú para Arch Linux que funcionan ut-of-the-box, en cualquier configuración. Para otros sistemas operativos puede ser necesario añadir entradas a {{ic|/etc/grub.d/40_custom}} o {{ic|/boot/grub/custom.cfg}}.
+
 
+
====Argumentos adicionales ====
+
 
+
Si necesita pasar parámetros especiales a la imagen del kernel, es necesario colocarlos en la variable {{ic|GRUB_CMDLINE_LINUX}} contenida en el archivo {{ic|/etc/default/grub}}. Esto es análogo a colocar los parámetros directamente en la línea del kernel, como ocurría con el antiguo GRUB Legacy.
+
 
+
Por ejemplo, para permitir restaurar el resumen después de la hibernación, se utilizará {{ic|1=GRUB_CMDLINE_LINUX="resume=/dev/sdaX"}}, donde {{ic|sdaX}} muestra la partición swap.
+
 
+
También es posible usar {{ic|<nowiki>GRUB_CMDLINE_LINUX="resume=/dev/disk/by-uuid/${swap_uuid}"</nowiki>}}, donde {{ic|${swap_uuid} }} se refiere a [[Persistent_block_device_naming|UUID]] de la propia partición swap.
+
 
+
Si necesita pasar más de un parámetro, se separa con un espacio entre las opciones: por ejemplo, si desea utilizar la función de resume y systemd, tendremos:
+
{{ic|<nowiki>GRUB_CMDLINE_LINUX="resume=/dev/sdaX init=/bin/systemd"</nowiki>}}
+
 
+
===Creación manual de grub.cfg ===
+
 
+
{{Advertencia|La edición manual de este archivo está totalmente desaconsejado. El archivo {{ic|grub.cfg}} es generado por la orden {{ic|grub-mkconfig}}, lo cual es preferible a editar el archivo {{ic|/etc/default /grub}} o uno de los scripts contenidos en el {{ic|/etc/grub.d.}}}}
+
 
+
Un {{ic|grub.cfg}} de base contiene las siguientes opciones:
+
* {{ic|(hdX,Y)}} indica la partición Y en el disco X. La numeración de partición comienza en 1, mientras que la del disco desde 0
+
* {{ic|1=set default=N}} le permite elegir qué entrada se inicie por defecto
+
* {{ic|1=set timeout=N}} indica el límite de tiempo en segundos antes que la elección predefinida se inicia
+
* {{ic|1=menuentry "title" {opciones}}} es una entrada de nombre {{ic|title}}
+
* {{ic|1=set root=(hdX,Y)}} establece la partición de arranque, es decir, el que contiene el kernel y los módulos de GRUB (no es necesario una partición separada: {{ic|/boot}} puede estar contenido dentro de la partición raíz).
+
 
+
Un ejemplo de configuración:
+
 
+
{{hc|/boot/grub/grub.cfg
+
|2=
+
# Config file for GRUB2 - The GNU GRand Unified Bootloader
+
# /boot/grub/grub.cfg
+
 
+
# DEVICE NAME CONVERSIONS
+
#
+
#  Linux          Grub
+
# -------------------------
+
#  /dev/fd0        (fd0)
+
#  /dev/sda        (hd0)
+
#  /dev/sdb2      (hd1,2)
+
#  /dev/sda3      (hd0,3)
+
#
+
 
+
# Timeout for menu
+
set timeout=5
+
 
+
# Set default boot entry as Entry 0
+
set default=0
+
 
+
# (0) Arch Linux
+
menuentry "Arch Linux" {
+
    set root=(hd0,1)
+
    linux /vmlinuz-linux root=/dev/sda3 ro
+
    initrd /initramfs-linux.img
+
}
+
 
+
## (1) Windows
+
#menuentry "Windows" {
+
#set root=(hd0,3)
+
#chainloader +1
+
#}
+
}}
+
 
+
===Arranque dual===
+
{{Nota | Si desea que GRUB2 busque sistemas operativos instalados, debe descargar el paquete {{Pkg|os-prober}}.}}
+
 
+
====Utilizar grub-mkconfig ====
+
La mejor manera de agregar más entradas es modificar el archivo {{ic|/etc/grub.d/40_custom}} o {{ic|/boot/grub/custom.cfg}}, de modo que se agregan automáticamente al {{ic|grub.cfg}} cuando se lanza {{ic|grub-mkconfig}}. Después de hacer los cambios, ejecute:
+
 
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
para generar un {{ic|grub.cfg}} actualizado.
+
 
+
=====Con GNU/Linux =====
+
Si la otra distribución está en {{ic|/dev/sda2}}:
+
{{bc|1=
+
menuentry "Other Linux" {
+
set root=(hd0,2)
+
linux /boot/vmlinuz (si aggiungano altre opzioni da passare al kernel, se richieste)
+
initrd /boot/initrd.img (se il kernel lo richiede)
+
}
+
}}
+
 
+
=====Con FreeBSD =====
+
Requiere que FreeBSD está instalado en una partición formateada con UFS. Si FreeBSD está en {{ic|sda4}}:
+
 
+
{{bc|1=
+
menuentry "FreeBSD" {
+
set root=(hd0,4)
+
chainloader +1
+
}
+
}}
+
 
+
=====Con Windows =====
+
Partimos de la base de que la partición de windows es {{ic|sda3}}. Recuerde que es necesario señalar la orden {{ic|set root}} y {{ic|chainloader}} a la partición reservada del sistema, es decir, la que crea Windows durante la instalación, y no a la partición en la que Windows en realidad reside. En el ejemplo tratado solo funciona si su partición reservada es {{ic|sda3}}
+
 
+
{{bc|1=
+
# (2) Windows XP
+
menuentry "Windows XP" {
+
    set root=(hd0,3)
+
    chainloader (hd0,3)+1
+
}
+
}}
+
 
+
Si el bootloader de Windows está en otro disco duro diferente que el de GRUB, puede que tenga que engañar a Windows haciéndole creer que reside en la primera unidad. Esto fue posible en el antiguo GRUB Legacy con {{ic|drivemap}}. Suponiendo que GRUB se encuentra en {{ic|hd0}} y Windows en  {{ic|hd2}},, debe agregar la siguiente línea después de {{ic|set root}}:
+
 
+
drivemap -s hd0 hd2
+
 
+
====Con Windows usando EasyBCD y NeoGRUB====
+
 
+
Puede que NeoGRUB no entienda el nuevo formato del menú de GRUB2, será necesario efectuar la carga de GRUB2, reemplazando el contenido de su {{ic|C:\NST\menu.lst}} con:
+
 
+
{{bc|
+
default 0
+
timeout 1
+
}}
+
 
+
{{bc|
+
title      Chainload into GRUB v2
+
root        (hd0,7)
+
kernel      /boot/grub/i386-pc/core.img
+
}}
+
 
+
===Configuración del aspecto ===
+
 
+
En GRUB2 puede cambiar el aspecto del menú.
+
Asegúrese de haber inicializado el terminal gráfico de grub2 (gfxterm), utilizando una modalidad de vídeo adecuado (gfxmode). Para más información se puede encontrar en la sección [[#Correct_GRUB2_No_Suitable_Mode_Found_Error]]. La modalidad de vídeo establecida a continuación, se pasará al kernel a través de {{ic|gfxpayload}}; por lo tanto, esta solicitud asegurará que cada configuración del aspecto tenga efecto.
+
 
+
====Ajustar la resolución del framebuffer ====
+
 
+
GRUB2 puede establecer el uso de este dispositivo tanto para él como para el kernel. El antiguo parámetro {{ic|1=vga=}} está en desuso. El método recomendado es modificar {{ic|/etc/default/grub}} de la siguiente manera:
+
 
+
{{bc|1=
+
GRUB_GFXMODE=1024x768x32
+
GRUB_GFXPAYLOAD_LINUX=keep
+
}}
+
 
+
Para que los cambios tengan efecto, ejecute:
+
  # grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
La opción {{ic|gfxpayload}} se asegurará de que la resolución se mantendrá y pasará al kernel.
+
 
+
{{Nota|Si este ejemplo no funciona, pruebe a sustituir{{ic|1=gfxmode="1024x768x32"}} con {{ic|1=vbemode="0x105"}}.}}
+
{{Nota|Para una lista de todos las modalidades de vídeo disponibles es suficiente ejecutar la orden {{ic|hwinfo --framebuffer}} (hwinfo está disponible en [community], mientras que para el prompt de GRUB2 se utiliza {{ic|vbeinfo}} (es necesario cargar el módulo vbe en primer lugar).}}
+
 
+
Si este método falla, la antigua opción {{ic|1=vga=}} sigue siendo válida. Añadimos {{ic|1=vga=}} a la opción {{ic|1=GRUB_CMDLINE_LINUX_DEFAULT}} en {{ic|/etc/default/grub}}. Por ejemplo: {{ic|1="GRUB_CMDLINE_LINUX_DEFAULT="quiet splash vga=792"}} establece una resolución {{ic|1024x768}}
+
 
+
Puede elegir entre las siguientes resoluciones: {{ic|640×480}}, {{ic|800×600}}, {{ic|1024×768}}, {{ic|1280×1024}}, {{ic|1600×1200}}, {{ic|1920×1200}}
+
 
+
====Hack 915resolution ====
+
 
+
Si está usando tarjeta de vídeo de Intel, puede ocurrir que ni {{ic|# hwinfo --framebuffer}} ni {{ic|vbeinfo}} muestre la resolución deseada. En este caso, puedes utilizar este truco propuesta, para cambiar temporalmente el BIOS de la tarjeta de vídeo mediante la adición de la resolución requerida. Consulte la página [http://915resolution.mango-lang.org/ 915resolution].
+
 
+
Lo que sigue es válido para mi sistema: por lo utilícelo según sus necesidades. En primer lugar debe elegir un modo de vídeo para editar más tarde. Comenzamos entonces {{ic|915resolution}} en el shell de grub:
+
 
+
915resolution -l
+
 
+
La salida será similar a la siguiente:
+
 
+
Intel 800/900 Series VBIOS Hack : version 0.5.3
+
...
+
Mode 30 : 640x480, 8 bits/pixel
+
...
+
 
+
El objetivo es sobreescribir la modalidad 30 (por supuesto, puede optar por modificar a cualquier otra modalidad). En el archivo {{ic|/etc/grub.d/00_header}}, inserte la línea siguiente antes de {{ic|1=set gfxmode=${GRUB_GFXMODE}}}:
+
 
+
915resolution 30 1440 900
+
 
+
La orden antes descrita sobreescribirá la modalidad {{ic|30}} con la resolución de {{ic|1440x900}}. Ahora tendrá que establecer el valor de {{ic|GRUB_GFXMODE}}, como se explicó anteriormente y reconstruir el archivo de configuración de GRUB2:
+
 
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
# reboot
+
 
+
==== Imagen de fondo y fuentes bitmap====
+
 
+
GRUB2 es compatible con imágenes de fondo y fuentes de mapa de bits en el formato {{ic|pf2}}. la fuente uifont está incluido en el paquete {{Pkg|grub-common}} con nombre {{ic|unicode.pf2}} o, solo para carácteres ASCII con nombre {{ic|ascii.pf2}}.
+
 
+
Los formatos de imagen soportados incluyen tga, png e jpeg siempre que los respectivos módulos se cargan. La resolución máxima aplicable depende del hardware en uso.
+
 
+
Antes de continuar, siga las disposiciones indicadas en[[#Establezca la resolución del framebuffer.]]
+
 
+
A continuación, editar el archivo {{ic|/etc/default/grub}} como sigue:
+
 
+
GRUB_BACKGROUND="/boot/grub/miaimmagine"
+
#GRUB_THEME="/path/to/gfxtheme"
+
GRUB_FONT="/path/to/font.pf2"
+
 
+
{{Nota | Si va a instalar GRUB en una partición separada, {{ic|/boot/grub/mi_imagen}} se convierte en {{ic|./grub/mi_imagen}}}}
+
 
+
Para aplicar los cambios a {{ic|grub.cfg}}, ejecute:
+
 
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
Si la inserción de la imagen se realiza correctamente, debería ver el mensaje {{ic|Found background image...}}, al ejecutar la orden anterior. Si no, quiere decir que la imagen no se ha incorporado en grub.cfg.
+
 
+
En este caso, se comprueba que:
+
* La ruta y el nombre de la imagen en {{ic|/etc/default/grub}} es correcta
+
* La imagen tiene un tamaño y formato adecuado (tga, png, png a 8 bits)
+
* La imagen se guarda en modo RGB y no indexado
+
* La modalidad consola no está habilitada en el archivo /etc/default/grub
+
* La orden de {{ic|grub-mkconfig}} se ha hecho para poner la información relativa a un segundo plano en el archivo {{ic|/boot/grub/grub.cfg}}.
+
 
+
====Temas====
+
 
+
A continuación se muestra un ejemplo para la configuración propuesta con el tema GRUB2 Starfield, incluido en el paquete suministrado con Arch.
+
 
+
Modificar {{ic|/etc/default/grub}}:
+
 
+
GRUB_THEME="/boot/grub/themes/estelar/theme.txt"
+
 
+
Aplicar los cambios:
+
 
+
grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
Si el tema se ha configurado correctamente, aparecerá en el terminal el mensaje {{ic|Found theme: /boot/grub/themes/starfield/theme.txt}}. La imagen de fondo, por lo general, no se visualiza cuando se utiliza un tema.
+
 
+
====Colores del Menú====
+
 
+
Como sucedía con GRUB Legacy, se pueden cambiar los colores del menú de GRUB2. La lista de colores disponibles se pueden encontrar [http://www.gnu.org/software/grub/manual/html_node/Theme-file-format.html#Theme-file-format aquí]. A continuación, un ejemplo:
+
 
+
Modificar {{ic|/etc/default/grub}} de la siguiente manera:
+
{{bc|1=
+
GRUB_COLOR_NORMAL="light-blue/black"
+
GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
+
}}
+
 
+
Para hacer efectivos los los cambios, ejecute:
+
grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
====Menú oculto ====
+
 
+
Una de las características de GRUB2 es la capacidad de ocultar el menú y hacer que sea visible pulsando la tecla  {{Keypress|Esc}}, si es necesario. También puede decidir si se debe mostrar la cuenta atrás.
+
 
+
Modificar {{ic|/etc/default/grub}}.. En el siguiente ejemplo, la cuenta atrás se establece en 5 segundos y se hace visible para el usuario:
+
 
+
{{bc|1=
+
GRUB_HIDDEN_TIMEOUT=5
+
GRUB_HIDDEN_TIMEOUT_QUIET=false
+
}}
+
 
+
Ejecutar:
+
grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
====Desactivar el framebuffer ====
+
 
+
Si utiliza el controlador propietario de NVIDIA, puede que tenga que desactivar el framebuffer GRUB2, ya que podría interferir con el driver.
+
 
+
Para desactivarlo, edite {{ic|/etc/default/grub}} y descomente la siguiente línea:
+
 
+
GRUB_TERMINAL_OUTPUT=console
+
 
+
A continuación, ejecute:
+
 
+
grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
===Otras opciones ===
+
====LVM ====
+
 
+
Si utiliza [[LVM]] para su {{ic|/boot}}, añada la siguiente línea antes de las diversas entradas:
+
insmod lvm
+
y especificar su root en menuentry de este modo:
+
set root=(nome_gruppo_lvm-nome_partizione_logica_di_boot_lvm)
+
 
+
Ejemplo:
+
{{bc|1=
+
# (0) Arch Linux
+
menuentry "Arch Linux" {
+
insmod lvm
+
set root=(VolumeGroup-lv_boot)
+
# you can only set following two lines
+
linux /vmlinuz-linux root=/dev/mapper/VolumeGroup-root ro
+
initrd /initramfs-linux.img
+
}
+
}}
+
 
+
====RAID ====
+
 
+
GRUB2 permite tratar los volúmenes en una configuración RAID de una manera sencilla. Añadimos {{ic|insmod raid}} a {{ic|grub.cfg}} que hará referencia al volumen de forma nativa. Por ejemplo, {{ic|/dev/md0}} se convierte en:
+
set root=(md0)
+
mientras que un volumen RAID particionado (por ejemplo, {{ic|/dev/md0p1}}) se convierte en:
+
set root=(md0,1)
+
 
+
==== Nomenclatura permanente de dispositivos de bloque====
+
 
+
Un esquema de nomenclatura de [[Persistent block device naming|nombres persistentes para dispositivos de bloque]] es usar UUID, que son únicos y globales, para detectar particiones, en lugar de la «vieja» nomenclatura {{ic|/dev/sd*}}. Las ventajas de este método están tratadas en el artículo anteriormente enlazado.
+
 
+
La nomenclatura persistente a través de las UUID del sistema de archivos se utiliza por defecto en GRUB2.
+
 
+
{{Nota|El archivo {{ic|/boot/grub.cfg}} necesita regenerarse con las UUID nuevas en {{ic|/etc/default/grub}} cada vez que se redimensiona o recrea un sistema de archivos correspondiente. Recuerde esto al modificar las particiones y sistemas de archivos con un CD-Live.}}
+
 
+
Cuando se usan las UUID son controladas por una opción en /etc/default/grub:
+
 
+
{{bc|1=# GRUB_DISABLE_LINUX_UUID=true}}
+
 
+
En cualquier caso, no se olvide de aplicar los cambios:
+
{{bc|# grub-mkconfig -o /boot/grub/grub.cfg}}
+
 
+
====Utilizar etiquetas====
+
 
+
Puede utilizar las etiquetas (cadenas que identifican particiones de una manera legible por el usuario), usando la opción {{ic|--label}} de la orden {{ic|search}}. En primer lugar, colocar una etiqueta a las particiones:
+
 
+
# tune2fs -L a <ETIQUETA><PARTICIÓN>
+
 
+
A continuación, se agrega una entrada usando las etiquetas:
+
 
+
{{bc|1=
+
menuentry "Arch Linux, session texte" {
+
    search --label --no-floppy --set=root archroot
+
    linux /boot/vmlinuz-linux root=/dev/disk/by-label/archroot ro
+
    initrd /boot/initramfs-linux.img
+
}
+
}}
+
 
+
====Recordar el último sistema arrancado====
+
 
+
GRUB2 puede recordar el último sistema arrancado y utilizarlo por defecto la próxima vez que ejecute el arranque. Esta característica es útil si tienes varios kernels (por ejemplo, le kernel actual de Arch y el LTS como fallback) o más sistemas operativos. Modificar {{ic|/etc/default/grub}} y cambiar el valor de {{ic|GRUB_DEFAULT}}:
+
 
+
GRUB_DEFAULT=saved
+
 
+
Esto permitirá que GRUB arranque el sistema operativo guardado. Para habilitar el rescate, añadir la siguiente línea a {{ic|/etc/default/grub}}:
+
 
+
GRUB_SAVEDEFAULT=true
+
 
+
{{Nota|La entradas del menú manualmente añadido a {{ic|/etc/grub.d/40_custom}} o {{ic|/boot/grub/custom.cfg}} (para Windows por ejemplo) se necesita la opción {{ic|savedefault}}.}}
+
 
+
Por favor, recuerde volver a generar el archivo de configuración de GRUB.
+
 
+
====Seguridad ====
+
 
+
Si desea hacer GRUB2 seguro y que nadie pueda cambiar los parámetros de arranque o utilizar la línea de órdenes, puede agregar un nombre de usuario y contraseña para los archivos de configuración de GRUB. Para ello, ejecute {{ic|grub-mkpasswd_pbkdf2}}. Es necesario introducir una contraseña y confirmarla. La salida tendrá este aspecto:
+
 
+
{{bc|<nowiki>
+
Your PBKDF2 is grub.pbkdf2.sha512.10000.C8ABD3E93C4DFC83138B0C7A3D719BC650E6234310DA069E6FDB0DD4156313DA3D0D9BFFC2846C21D5A2DDA515114CF6378F8A064C94198D0618E70D23717E82.509BFA8A4217EAD0B33C87432524C0B6B64B34FBAD22D3E6E6874D9B101996C5F98AB1746FE7C7199147ECF4ABD8661C222EEEDB7D14A843261FFF2C07B1269A</nowiki>}}
+
 
+
Añadir las siguientes cadenas a {{ic|/etc/grub.d/0_header}}:
+
{{bc|<nowiki>cat << EOF
+
 
+
set superusers="username"
+
password_pbkdf2 username <password>
+
 
+
EOF</nowiki>}}
+
 
+
Donde <password> corresponde a la cadena generada por {{ic|grub-mkpasswd_pbkdf2}}.
+
 
+
Hay que regenerar el archivo de configuración. La línea de órdenes y los parámetros de arranque de grub2 ahora están protegidos.
+
 
+
Los ajustes anteriores se pueden hacer menos restrictivos y personalizar mediante la adición de más usuarios, como se explica en el capítulo «Seguridad» en el [https://www.gnu.org/software/grub/manual/grub.html#manual de seguridad de GRUB] .
+
 
+
====Partición root cifrada ====
+
 
+
Para asegurarse de que grub2 cambia automáticamente a los parámetros del núcleo necesarios para la encriptación de la raíz, agregue {{ic|1=cryptdevice=/dev/device:etichetta}} a {{ic|GRUB_CMDLINE_LINUX}} en {{ic|/etc/default/grub}}.
+
 
+
Un ejemplo con la raíz mapeada en {{ic|/dev/mapper/root}}:
+
 
+
GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda2:root"
+
 
+
También desactive el uso de la UUID para el sistema de archivos raíz:
+
 
+
GRUB_DISABLE_LINUX_UUID=true
+
 
+
A continuación, tiene que volver a generar el archivo de configuración de grub.
+
 
+
===Comenzar una imagen ISO directamente desde GRUB2 ===
+
 
+
Modificar {{ic|/etc/grub.d/40_custom}} o {{ic|/boot/grub/custom.cfg}}  mediante la adición de una entrada para arrancar la ISO que desea iniciar. Una vez hecho esto, se actualiza el menú de GRUB con el habitual {{ic|grub-mkconfig -o /boot/grub/grub.cfg}} (hecho como root).
+
 
+
====ISO de Arch Linux  ====
+
 
+
{{Nota|El ejemplo parte del supuesto de que la iso se encuentra en {{ic|/archives}} en {{ic|hd0,6}}. Los usuarios deben ajustar la ubicación y el disco duro/partición en TODAS las líneas de abajo para que coincida con sus sistemas. Sin embargo, si el arranque de la ISO es desde un dispositivo USB en un equipo que también tiene un disco duro interno, entonces tiene que haber {{ic|hd0,Y}} con {{ic|sdbY}}, en lugar de {{ic|sdaY}}.}}
+
 
+
'''Ejemplo usando x86_64'''
+
menuentry "Archlinux-2013.01.04-dual.iso" --class iso {
+
  set isofile="/archives/archlinux-2013.01.04-dual.iso"
+
  loopback loop (hd0,6)$isofile
+
  linux (loop)/arch/boot/x86_64/vmlinuz archisolabel=ARCH_201301 img_dev=/dev/sda6 img_loop=$isofile earlymodules=loop
+
  initrd (loop)/arch/boot/x86_64/archiso.img
+
}
+
 
+
'''Ejemplo usando i686'''
+
menuentry "Archlinux-2013.01.04-dual.iso" --class iso {
+
  set isofile="/archives/archlinux-2013.01.04-dual.iso"
+
  loopback loop (hd0,6)$isofile
+
  linux (loop)/arch/boot/i686/vmlinuz archisolabel=ARCH_201301 img_dev=/dev/sda6 img_loop=$isofile earlymodules=loop
+
  initrd (loop)/arch/boot/i686/archiso.img
+
}
+
 
+
{{Sugerencia|Para unidades de almacenamiento, utilice [[Persistent block device naming|la nomenclatura persistente del dispositivo de bloque]] para definir el parámetro del kernel {{ic|img_dev}}. (Ejemplo: {{ic|1=img_dev=/dev/disk/by-label/CORSAIR}})}}
+
 
+
====ISO de Ubuntu  ====
+
 
+
{{Nota | Asegúrese de cambiar la entrada {{ic|hdX,Y}} a la la tercera línea, para indicar la copia correcto de disco / partición donde reside la imagen ISO.}}
+
 
+
menuentry "ubuntu-12.04-desktop-amd64.iso" {
+
    set isofile="/archives/ubuntu-12.04-desktop-amd64.iso"
+
    loopback loop (hd0,6)$isofile
+
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
+
    initrd (loop)/casper/initrd.lz
+
}
+
 
+
==== Otras ISO ====
+
 
+
Otras configuraciones funcionales están disponibles desde [http://askubuntu.com/questions/141940/how-to-boot-live-iso-images link Source].
+
 
+
==Utilizar la shell==
+
 
+
Dado que el MBR es demasiado pequeño para contener todas las formas de GRUB2, solo el menú y los comanos básicos residen allí. La mayor parte de la funcionalidad de GRUB2 está contenida en los módulos en {{ic|/boot/grub}}, que se cargan cuando sea necesario. En caso de errores (por ejemplo, si la tabla de particiones se altera), GRUB2 puede fallar al arrancar, e iniciar un shell en lugar del clásico menú.
+
 
+
GRUB2 ofrece diferentes tipos de shell. Si tiene problemas para leer el menú, pero el gestor de arranque es todavía capaz de encontrar el disco donde el GRUB2 reside, es probable que lance una shell «normal»:
+
 
+
sh:grub>
+
 
+
En caso de problemas más serios (GRUB no puede encontrar los archivos necesarios), puede aparecer la shell de emergencia:
+
 
+
grub rescue>
+
 
+
La shell de emergencia es una versión reducida de la normal, y ofrece, por lo tanto, un número reducido de funcionalidades. Trate de cargar el módulo {{ic|normal}}, e iniciar el shell clásico:
+
 
+
{{bc|1=
+
grub rescue> set prefix=(hdX,Y)/boot/grub
+
grub rescue> insmod (hdX,Y)/boot/grub/normal.mod
+
rescue:grub> normal
+
}}
+
 
+
===Soporte para Pager===
+
 
+
GRUB2 apoya el pager (paginador o localizador) para que sea fácil leer el ''«output»'' largo. Tenga en cuenta que esta característica solo está disponible en la consola normal, y no en una de emergencia. Para activarlo, escriba:
+
 
+
sh:grub> set pager=1
+
 
+
==Herramientas GUI de configuración==
+
 
+
Los siguientes paquetes pueden ser instalados desde [[AUR]]
+
 
+
* [https://aur.archlinux.org/packages.php?ID=44020 grub-customizer] (requiere gettext, gksu, gtkmm, hicolor-icon-theme, openssl)
+
*:Utilidad para personalizar el gestor de arranque (GRUB2 o BURG)
+
* [http://kde-apps.org/content/show.php?content=139643 grub2-editor] (requiere kdelibs)
+
*:Un módulo KCM para KDE4 para configurar GRUB2.
+
* [http://kde-apps.org/content/show.php?content=137886 kcm-grub2] (requiere kdelibs python2-qt kdebindings-python)
+
*:Este módulo KCM gestiona los ajustes de GRUB2  más comunes.
+
*[http://sourceforge.net/projects/startup-manager/ startupmanager] (requiere gnome-python imagemagick yelp python2 xorg-xrandr)
+
*:Una interfaz gráfica de usuario para cambiar la configuración de GRUB, GRUB2, Usplash y Splashy.
+
 
+
==parttool o mostrar/ocultar particiones==
+
 
+
Si tiene instalado Windows 9x con el disco C:\ oculto, GRUB  dispone de las opciones {{ic|hide/unhide}} usando {{ic|parttool}}. Por ejemplo, para efectuar el arranque del tercer disco C:\ de tres sistema Windows 9x instalados, se inicia la shell y:
+
 
+
{{bc|1=
+
parttool hd0,1 hidden+ boot-
+
parttool hd0,2 hidden+ boot-
+
parttool hd0,3 hidden- boot+
+
set root=hd0,3
+
chainloader +1
+
boot
+
}}
+
 
+
==Utilizar la consola de emergencia==
+
 
+
Véase más arriba [[#Usando la shell]]. Si no es capaz de iniciar la shell estándar, una posible solución es arrancar LiveCD o algún otro disco de reparación para corregir los errores de configuración y reinstalar GRUB. Sin embargo, un disco de recuperación no siempre es posible (ni necesario), y la consola de emergencia es sorprendentemente robusta.
+
 
+
Las órdenes disponibles en esta modalidad incluyen {{ic|insmod}}, {{ic|ls}}, {{ic|set}} e {{ic|unset}}. Este ejemplo utiliza {{ic|set}} y {{ic|insmod}}. {{ic|set}} cambia el valor de las variables, mientras que {{ic|insmod}} añade nuevos módulos para ampliar la funcionalidad básica.
+
 
+
Antes de comenzar, es necesario que conozca la ubicación de la partición de {{ic|/boot}} (ya sea por separado o en un subdirectorio de la partición de root):
+
 
+
grub rescue> set prefix=(hdX,Y)/boot/grub
+
 
+
Donde X es el número de la unidad y la Y de la partición.
+
Para ampliar las capacidades de la consola, insertar el módulo {{ic|linux}}.
+
 
+
grub rescue> insmod (hdX,Y)/boot/grub/linux.mod
+
 
+
{{Nota|Si está usando una partición de arranque separada, se omite {{ic|/boot}} en la ruta. (Ejemplo: {{ic|1=set prefix=(hdX,Y)/grub}} y {{ic|1=insmod (hdX,Y)/grub/linux.mod}}).}}
+
 
+
Esto proporciona órdenes de {{ic|linux}} y {{ic|initrd}}, con las que debe estar familiarizado (ver [[#Configuración]]).
+
 
+
Un ejemplo de inicio de Arch Linux:
+
{{bc|1=
+
set root=(hd0,5)
+
linux /boot/vmlinuz-linux root=/dev/sda5
+
initrd /boot/initramfs-linux.img
+
boot
+
}}
+
 
+
De nuevo, en el caso de partición de arranque separada, cambie las órdenes en consecuencia:
+
{{bc|1=
+
set root=(hd0,5)
+
linux /vmlinuz-linux root=/dev/sda6
+
initrd /initramfs-linux.img
+
boot
+
}}
+
 
+
Tras el lanzamiento de una instalación correcta de Arch Linux, puede arreglar {{ic|grub.cfg}} y proceder a la reinstalación de GRUB2.
+
 
+
Para reinstalar GRUB2 en el MBR, cambie {{ic|/dev/sda}} conforme a las propias necesidades. Consulte [[#Instalación del gestor de arranque]] para más detalles.
+
 
+
== Combinar UUID y scripting==
+
 
+
Si desea utilizar la asignación de UUID para superar los mapeados poco fiables de los dispositivos  realizadas por la BIOS, o si está teniendo dificultades con la sintaxis de GRUB, aquí hay un ejemplo que utiliza el UUID, y un pequeño script para GRUB para que apunte a las particiones correspondientes. Todo lo que uno debe hacer, es sustituir el ejemplo con el UUID correcto para su sistema (el ejemplo se aplica a sistemas con una partición de arranque separada y debe modificarse en consecuencia en caso de particiones adicionales).
+
 
+
  menuentry "Arch Linux 64" {
+
      # Set the UUIDs for your boot and root partition respectively
+
      set the_boot_uuid=ece0448f-bb08-486d-9864-ac3271bd8d07
+
      set the_root_uuid=c55da16f-e2af-4603-9e0b-03f5f565ec4a
+
   
+
      # (Note: This may be the same as your boot partition)
+
   
+
      # Get the boot/root devices and set them in the root and grub_boot variables
+
      search --fs-uuid --no-floppy --set=root $the_root_uuid
+
      search --fs-uuid --no-floppy --set=grub_boot $the_boot_uuid
+
   
+
      # Check to see if boot and root are equal.
+
      # If they are, then append /boot to $grub_boot (Since $grub_boot is actually the root partition)
+
      if [ $the_boot_uuid == $the_root_uuid] ; then
+
          set grub_boot=$grub_boot/boot
+
      fi
+
   
+
      # $grub_boot now points to the correct location, so the following will properly find the kernel and initrd
+
      linux ($grub_boot)/vmlinuz-linux root=/dev/disk/by-uuid/$uuid_os_root ro
+
      initrd ($grub_boot)/initramfs-linux.img
+
  }
+
 
+
==Solución de problemas ==
+
 
+
=== Activar mensajes de depuración en GRUB2 ===
+
Se añade:
+
set pager=1
+
set debug=all
+
 
+
En {{ic|grub.cfg}}.
+
 
+
=== Corregir el error de GRUB2 «no suitable mode found»===
+
 
+
Si recibe este error en la elección de una opción de arranque:
+
 
+
error: no suitable mode found
+
Booting however
+
 
+
A continuación, se debe inicializar el terminal gráfico GRUB2 (gfxterm), utilizando un modo de vídeo adecuado (gfxmode). Este se transmite de GRUB2 al kernel de Linux usando la opción {{ic|gfxpayload}}.
+
En sistemas UEFI, si la modalidad de video del GRUB2 no está inicializada, se mostrarán los mensajes de arranque del kernel (al menos hasta la activación de KMS).
+
 
+
Ahora, copie {{ic|/usr/share/grub/unicode.pf2}} en {{ic|1=${GRUB2_PREFIX_DIR}}} ({{ic|/boot/grub}} de los sistema BIOS y UEFI. Si GRUB2 UEFI se instala con la opción {{ic|--boot-directory}} habilitada, entonces la ruta es {{ic|/boot/efi/EFI/grub}}).
+
 
+
# cp /usr/share/grub/unicode.pf2 ${GRUB2_PREFIX_DIR}
+
 
+
Si el archivo {{ic|/usr/share/grub/unicode.pf2}} no existe, instalar el paquete {{Pkg|bdf-unifont}} y proceda a la creación y copia del mismo en {{ic|1=${GRUB2_PREFIX_DIR}}}.
+
 
+
# grub-mkfont -o unicode.pf2 /usr/share/fonts/misc/unifont.bdf
+
 
+
En el archivo {{ic|grub.cfg}}, agregue las líneas siguientes para habilitar GRUB2 para que pase correctamente la modalidad de video al kernel, de lo contrario obtendrá una pantalla en negro, aunque el arranque se haga periódicamente, sin que el sistema se bloquee:
+
 
+
Sistemas BIOS
+
insmod vbe
+
 
+
Sistemas UEFI
+
{{bc|
+
insmod efi_gop
+
insmod efi_uga
+
}}
+
 
+
A continuación, agregue el siguiente código (común a los sistemas BIOS y UEFI)
+
 
+
insmod font
+
 
+
{{bc|1=
+
if loadfont ${prefix}/fonts/unicode.pf2
+
then
+
    insmod gfxterm
+
    set gfxmode=auto
+
    set gfxpayload=keep
+
    terminal_output gfxterm
+
fi
+
}}
+
 
+
Como puede ver, para que {{ic|gfxterm}} funcione correctamente, la fuente {{ic|unicode.pf2}} debe existir en {{ic|1=${GRUB2_PREFIX_DIR}}}.
+
 
+
===Mensaje de error msdos-style===
+
 
+
{{bc|
+
grub-setup: warn: This msdos-style partition label has no post-MBR gap; embedding won't be possible!
+
grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists.
+
            However, blocklists are UNRELIABLE and its use is discouraged.
+
grub-setup: error: If you really want blocklists, use --force.
+
}}
+
 
+
Este problema se produce cuando se intenta instalar GRUB2 en VMWare. Más información [https://bbs.archlinux.org/viewtopic.php?pid=581760# aquí]. Se espera una solución pronto.
+
 
+
También puede ocurrir cuando la partición comienza justo después del MBR (bloque 63), sin dejar un espacio de alrededor de 1 MB (2048 bloques) antes de la primera partición.
+
 
+
===GRUB2 UEFI vuelve a la shell===
+
 
+
Si GRUB se carga, pero vuelve a regresar a shell, sin error, el archivo  {{ic|grub.cfg}} pueden estar en una posición incorrecta o no existir en absoluto. Este problema puede producirse si GRUB2 UEFI se ha instalado con la opción de {{ic|--boot-directory}} habilitada, y el archivo no existe, o si el número identificativo de la partición de arranque ha cambiado (este valor es, de hecho, «codificado» en el archivo {{ic|grubx64.efi}}).
+
 
+
=== GRUB2 UEFI no se carga ===
+
 
+
En algunos casos, EFI puede no arrancar correctamente GRUB. Suponiendo que todo ha sido instalado de la manera correcta, la salida de:
+
 
+
efibootmgr -v
+
 
+
se parecerá a esto:
+
 
+
{{bc|
+
BootCurrent: 0000
+
Timeout: 3 seconds
+
BootOrder: 0000,0001,0002
+
Boot0000* Grub HD(1,800,32000,23532fbb-1bfa-4e46-851a-b494bfe9478c)File(\efi\grub\grub.efi)
+
Boot0001* Shell HD(1,800,32000,23532fbb-1bfa-4e46-851a-b494bfe9478c)File(\EfiShell.efi)
+
Boot0002* Festplatte BIOS(2,0,00)P0: SAMSUNG HD204UI
+
}}
+
 
+
EFI ahora debe cargar GRUB correctamente.
+
Si la pantalla deviene en negro durante unos segundos y  GRUB pasa a la opción siguiente del boot, como está escrito [https://bbs.archlinux.org/viewtopic.php?pid=981560#p981560 en este post], mover GRUB a la partición raíz podría ayudar.
+
 
+
La opción de arranque debería ser eliminada y recreada después de la operación.
+
El campo relativo a grub debería ahora ser similar a esto:
+
 
+
  Boot0000* Grub HD(1,800,32000,23532fbb-1bfa-4e46-851a-b494bfe9478c)File(\grub.efi)
+
 
+
===Invalid signature===
+
 
+
Si recibe el error ''«invalid signature»'' al intentar iniciar Windows, por ejemplo, si han alterado la tabla de particiones después de agregar otras particiones o discos duros, trate de eliminar la configuración de los dispositivos de GRUB y deje que la regenere él mismo:
+
 
+
# mv /boot/grub/device.map /boot/grub/device.map-old
+
# grub-mkconfig -o /boot/grub/grub.cfg
+
 
+
{{ic|grub-mkconfig}} debería ahora mostrar todas las opciones de arranque, incluyendo Windows. Si el problema está resuelto, elimine {{ic|/boot/grub/device.map-old}}.
+
 
+
=== Bloqueos al arrancar ===
+
Si el arranque se bloquea sin ningún mensaje de error después deque grub2 cargue el kernel y el ramdisk inicial, prueble eliminado {{ic|add_efi_memmap}} de los parámetros del kernel.
+
 
+
===Restaurar GRUB Legacy ===
+
 
+
* Mueva los archivos de GRUB Legacy o GRUB2:
+
 
+
# mv /boot/grub /boot/grub.nonfunctional
+
 
+
* Restaurar la copia de seguridad de GRUB Legacy en {{ic|/boot}}:
+
 
+
# cp -af /boot/grub-legacy /boot/grub
+
 
+
* Restaurar el MBR y los siguientes 62 sectores del disco sda:
+
{{Advertencia|La orden anterior restaura la tabla de particiones, asi que proceda con cautela o sobreescribirá la tabla de particiones modificada. Se estropeará su sistema.}}
+
# dd if=/path/to/backup/first-sectors of=/dev/sdX bs=512 count=1
+
 
+
Una solución más segura es restaurar solo el MBR:
+
 
+
  # dd if=/path/to/backup/mbr-boot-code of=/dev/sdX bs=446 count=1
+
 
+
==Referencias ==
+
 
+
# Manual Oficial de GRUB2 - http://www.gnu.org/software/grub/manual/grub.html
+
# Página wiki de Ubuntu sobre GRUB2 - https://help.ubuntu.com/community/Grub2
+
# Página wiki de GRUB2 donde explica cómo compilarlo para sistemas UEFI - http://help.ubuntu.com/community/UEFIBooting
+
# Página de Wikipedia sobre la [[Wikipedia:BIOS Boot partition|partición de inicio del BIOS.]]
+
 
+
==Enlaces externos ==
+
 
+
# [https://github.com/the-ridikulus-rat/My_Shell_Scripts/blob/master/grub/grub_bios.sh A Linux Bash Shell script to compile and install GRUB(2) for BIOS from BZR Source]
+
# [https://github.com/the-ridikulus-rat/My_Shell_Scripts/blob/master/grub/grub_uefi.sh A Linux Bash Shell script to compile and install GRUB(2) for UEFI from BZR Source]
+

Latest revision as of 18:29, 8 July 2013

Redirect to: