Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previaPróxima revisiónAmbos lados, revisión siguiente |
es:howtos:slackware_admin:linux_kernel_options_for_uefi_and_elilo [2019/02/05 22:35 (UTC)] – [Using the new EFI variable filesystem] slackwarespanol | es:howtos:slackware_admin:linux_kernel_options_for_uefi_and_elilo [2019/02/05 22:56 (UTC)] – [My UEFI settings were reset and I can't boot, or planning ahead to avoid surprises] slackwarespanol |
---|
efibootmgr | efibootmgr |
</code> | </code> |
==== The EFI System Partition (ESP) ==== | ==== La partición del sistema EFI (ESP) ==== |
In order to boot from UEFI you need to create an EFI System Partition (ESP) using ''gdisk'' or ''cgdisk'' instead of the old ''fdisk'' and ''cfdisk''. The Slackware [[ftp://mirrors.usc.edu/pub/linux/distributions/slackware/slackware64-14.1/README_UEFI.TXT|README_UEFI.TXT]] recommends a size of 100M, which is also the minimum partition size (except for 4K native drives, where it is 260M). You also need to set the partition hex code to ''EF00'', which identifies it as the ESP. | Para arrancar desde UEFI, debe crear una partición del sistema EFI (ESP) utilizando '' gdisk '' o '' cgdisk '' en lugar del antiguo '' fdisk '' y '' cfdisk ''. El Slackware [[ftp://mirrors.usc.edu/pub/linux/distributions/slackware/slackware64-14.1/README_UEFI.TXT|README_UEFI.TXT]] recomienda un tamaño de 100M, que también es el tamaño de partición mínimo (excepto para unidades 4K nativas, donde es 260M). También debe configurar el código hexadecimal de partición en '' EF00 '', que lo identifica como el ESP. |
==== UEFI and ELILO ==== | ==== UEFI y ELILO ==== |
During the install procedure of Slackware 14.1 for ELILO (the ''eliloconfig'' script), the following happens and is required for booting from UEFI using ELILO. | Durante el procedimiento de instalación de Slackware 14.1 para ELILO (la secuencia de comandos '' eliloconfig ''), ocurre lo siguiente y es necesario para el arranque desde UEFI utilizando ELILO. |
| |
- The EFI System Partition (ESP) is located and mounted. On a running system it is usually found already mounted at ''/boot/efi''. This is a special FAT partition that is basically the UEFI firmware replacement of what the MBR was for BIOS. However, it can not only hold a bootloader (all the MBR was capable of), but also config files, the kernel, and other things you might want to access using the UEFI firmware. | - La partición del sistema EFI (ESP) está ubicada y montada. En un sistema en ejecución, normalmente se encuentra ya montado en '' /boot/efi ''. Esta es una partición FAT especial que básicamente es el reemplazo del firmware UEFI de lo que el MBR era para BIOS. Sin embargo, no solo puede contener un gestor de arranque (todo lo que el MBR era capaz de hacer), sino también los archivos de configuración, el kernel y otras cosas a las que tal vez quiera acceder utilizando el firmware UEFI. |
- The three items required by ELILO (and other bootloaders) are copied onto the ESP to ''/boot/efi/EFI/Slackware''. These include: | - Los tres elementos requeridos por ELILO (y otros cargadores de arranque) se copian en el ESP a '' /boot/efi/EFI/Slackware ''. Éstos incluyen: |
- The bootloader. In the case of ELILO it is ''elilo.efi'' | - El gestor de arranque. En el caso de ELILO es '' elilo.efi ''. |
- The config file. In the case of ELILO it is ''elilo.conf'' | - El archivo de configuración. En el caso de ELILO es '' elilo.conf ''. |
- The kernel, usually titled ''vmlinuz'' | - El núcleo, usualmente titulado '' vmlinuz '' |
- A boot entry variable is registered in the UEFI firmware using ''efibootmgr''. The exact command that is run is <code bash> | - Una variable de entrada de inicio se registra en el firmware UEFI utilizando '' efibootmgr ''. El comando exacto que se ejecuta es |
| |
| <code bash> |
EFI_DEVICE=$(mount | grep vfat | grep -w /boot/efi | cut -b 1-8) | EFI_DEVICE=$(mount | grep vfat | grep -w /boot/efi | cut -b 1-8) |
EFI_PARTITION=$(mount | grep vfat | grep -w /boot/efi | cut -f 1 -d ' ' | cut -b 9-) | EFI_PARTITION=$(mount | grep vfat | grep -w /boot/efi | cut -f 1 -d ' ' | cut -b 9-) |
efibootmgr -q -c -d $EFI_DEVICE -p $EFI_PARTITION -l "\\EFI\\Slackware\\elilo.efi" -L "Slackware" | efibootmgr -q -c -d $EFI_DEVICE -p $EFI_PARTITION -l "\\EFI\\Slackware\\elilo.efi" -L "Slackware" |
</code> so if ''mount'' outputs <code>/dev/sda1 on /boot/efi type vfat (rw)</code>EFI_DEVICE would be ''/dev/sda'' and EFI_PARTITION would be ''1'', each components of ''/dev/sda1'', which is the ESP. | </code> |
<note important>If for some reason you cannot register a boot entry with the UEFI firmware, you should put the bootloader at ''/EFI/boot/bootx64.efi''. This special location allows the UEFI firmware to run the bootloader without any boot entry.</note> | si sale ''mount'' <code>/dev/sda1 on /boot/efi type vfat (rw)</code>EFI_DEVICE sería ''/dev/sda'' and EFI_PARTITION sería ''1'', cada componente de '' /dev/sda1 '', que es el ESP. |
==== Upgrading your kernel ==== | <note important>Si por alguna razón no puede registrar una entrada de arranque con el firmware UEFI, debe colocar el cargador de arranque en '' /EFI/boot/bootx64.efi ''. Esta ubicación especial permite que el firmware UEFI ejecute el cargador de arranque sin ninguna entrada de arranque.</note> |
This task is now much easier than it used to be. All you really need to do is copy ''vmlinuz'' onto the ESP on top of the old kernel. No need to edit any configs or add any boot entries, unless you want to. Note that you can edit the config in place and ELILO will pick up the changes on next boot, no need to run any commands like with the old lilo. | ==== Actualizando tu kernel ==== |
==== Updating your UEFI firmware ==== | Esta tarea es ahora mucho más fácil de lo que solía ser. Todo lo que necesitas hacer es copiar '' vmlinuz '' en el ESP en la parte superior del núcleo antiguo. No es necesario editar configuraciones o agregar entradas de arranque, a menos que lo desee. Tenga en cuenta que puede editar la configuración en su lugar y ELILO recogerá los cambios en el próximo arranque, sin necesidad de ejecutar ningún comando como con el antiguo lilo. |
As all UEFI firmware has a flashing utility built-in, it is now much easier to update the firmware. All you have to do is copy the new firmware onto the ESP and the UEFI firmware should recognize it when you go to the flashing utility menu. However, remember that flashing the firmware can still potentially brick the system, especially if it is interrupted during the flashing process. | ==== Actualizando su firmware UEFI ==== |
| Como todo el firmware de UEFI tiene una utilidad flashing incorporada, ahora es mucho más fácil actualizar el firmware. Todo lo que tiene que hacer es copiar el nuevo firmware en el ESP y el firmware UEFI debería reconocerlo cuando vaya al menú de la utilidad que parpadea. Sin embargo, recuerde que la actualización del firmware aún puede potencialmente bloquear el sistema, especialmente si se interrumpe durante el proceso de actualización. |
<note important> | <note important> |
Updating your UEFI firmware may reset your settings and prevent you from booting unless you plan ahead. | La actualización del firmware de UEFI puede restablecer la configuración y evitar que arranque, a menos que planifique con anticipación. |
</note> | </note> |
==== My UEFI settings were reset and I can't boot, or planning ahead to avoid surprises ==== | ==== Mis configuraciones de UEFI se restablecieron y no puedo arrancar, o planeo con anticipación para evitar sorpresas ==== |
This can happen either after updating the UEFI firmware or after replacing the CMOS battery. There are three main ways to fix it: | Esto puede suceder después de actualizar el firmware UEFI o después de reemplazar la batería CMOS. Hay tres formas principales de solucionarlo: |
- Probably the easiest and most convenient way is to use the default boot location. Note that some UEFI firmwares do NOT support the default boot location, so this will not work. However, if it does, you won't have to worry about the system not booting again. To do this you can boot into the Slackware install DVD, mount the ESP and copy the files to the following places: | - Probablemente, la forma más fácil y conveniente es utilizar la ubicación de inicio predeterminada. Tenga en cuenta que algunos firmwares UEFI NO admiten la ubicación de inicio predeterminada, por lo que esto no funcionará. Sin embargo, si lo hace, no tendrá que preocuparse por que el sistema no se reinicie de nuevo. Para hacer esto, puede iniciar el DVD de instalación de Slackware, montar el ESP y copiar los archivos en los siguientes lugares: |
- ''elilo.efi'' -> ''/EFI/boot/bootx64.efi'' | - ''elilo.efi'' -> ''/EFI/boot/bootx64.efi'' |
- ''elilo.conf'' -> ''/EFI/boot/elilo.conf'' | - ''elilo.conf'' -> ''/EFI/boot/elilo.conf'' |
- ''vmlinuz'' -> ''/EFI/boot/vmlinuz'' | - ''vmlinuz'' -> ''/EFI/boot/vmlinuz'' |
- You can boot into the Slackware install DVD, run through the menus, and reinstall elilo. | - Puede iniciar el DVD de instalación de Slackware, ejecutar los menús y reinstalar elilo. |
- You can download and install one of the following EFI shells to the root directory of your ESP (that is ''/'' NOT ''/EFI''). | - Puede descargar e instalar uno de los siguientes shells EFI en el directorio raíz de su ESP (que es '' / '' NOT '' / EFI ''). |
- [[https://svn.code.sf.net/p/edk2/code/trunk/edk2/ShellBinPkg/UefiShell/X64/Shell.efi|This version supports only UEFI version 2 and up]] | - [[https://svn.code.sf.net/p/edk2/code/trunk/edk2/ShellBinPkg/UefiShell/X64/Shell.efi|Esta versión solo es compatible con UEFI versión 2 y superior]] |
- [[http://dl.dropbox.com/u/17629062/Shell2.zip | This version may support earlier UEFI versions]] | - [[http://dl.dropbox.com/u/17629062/Shell2.zip | Esta versión puede soportar versiones anteriores de UEFI]] |
- Boot into the shell and run: <code>bcfg boot add 0 fs0:\EFI\Slackware\elilo.efi Slackware</code> | -Arranque en el shell y ejecute: <code>bcfg boot add 0 fs0:\EFI\Slackware\elilo.efi Slackware</code> |
==== External Links ==== | ==== External Links ==== |
[[http://blog.uncooperative.org/blog/2014/02/06/the-efi-system-partition/|A comprehensive analysis of the ESP and default boot behavior.]] | [[http://blog.uncooperative.org/blog/2014/02/06/the-efi-system-partition/|A comprehensive analysis of the ESP and default boot behavior.]] |