[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

UEFI arranque dual o más usando rEFInd

Las nuevas maquinas estan llegando con el estandar UEFI. Esto presenta algunas ventajas como la capacidad de inicio desde discos sobre los 2TiB y los componentes modulares Pre-OS como drivers pueden ser cargados en el firmware UEFI. Pero los usuarios Linux encontraron que, de repente, era más difícil el multi-boot que en el pasado. Sin embargo, ellos tienen una variedad de recursos y encontraron un camino para trabajar con el nuevo estandar. No es tan sencillo como en el pasado, pero no es demasiado difícil.

rEFInd es principalmente una herramienta para administrar los bootloaders, es decir, un administrador de arranque.

Algunas advertencias para el uso de rEFInd son:

  1. Gestiona y arranca varios binarios diferentes de EFI(.efi files),
  2. Arranca el kernel Linux ubicados en la partición EFI; así que rEFInd puede además ser un bootloader en si mismo,
  3. Puede que no haya necesidad de instalar GRUB o ELILO en la partición EFI,
  4. Un menú en pantalla con múltiples opciones predefinidas para arrancar binarios o kernel de EFI en el arranque.
  5. ;-) Podemos potencialmente tener un ambicioso multiboot por ejemplo con Windows o Mac OS X, Slackware con ELILO y Ubuntu con GRUB2.

En este articulo, encontrara un pequeño sumario de arranque multipl en maquinas UEFI, descripción de los pasos para asegurar que la instalación se realice correctamente y como podemos acceder a nuestra(s) distribución(es) Linux; a continuación vamos a describir la instalación de rEFInd y como usarlo. Explicaremos la configuración de rEFInd cuidadosamente, ya que esto definirá las opciones y el comportamiento de nuestro gestor de arranque.

Instalación de ditribuciones linux

A partir de ahora, asumiremos que tenemos un disco duro que utiliza GPT con la siguiente configuración

  • sda1 (FAT) - OEM software de seguridad o cualquier tipo de software de mantenimiento.
  • sda2 (FAT) - partición EFI
  • sda3 (NTFS) - Windows 10
  • espacio suficiente sin asignar.

Usualmente, compramos una máquina y esta viene con una gran partición con Windows u otro SO en él. Es una mala práctica mantener un disco duro con éste tipo de configuración. Así que, aconsejamos a las personas particionar su disco duro (PC or laptops) cuando se use por primera vez, ya sea que usen arranque dual o no. Podemos reducir nuestra partición principal del sistema operativo a un tamaño adecuado y el resto de espacio sin asignar pueden tener particiones para nuestros datos.

De esta manera, el sistema operativo no es obstaculizado cuando el disco se llena con nuestros archivos personales, por lo que continúa en ejecución y leyendo el disco a una velocidad bastante alta. También de esta manera se evita el riesgo de pérdida de datos si el sistema operativo se bloquea.

Es recomendable reducir la partición desde el propio Windows usando su administrador de discos y luego hacer otra partición con GPartEd o gdisk/cgdisk usando algún disco/usb de arranque. Windows es conocido por archivar en cualquier lugar en una partición; así que si necesita reducirlo a un espacio mas pequeño que lo permitido, use un programa de terceros, o Windows puede bloquearse debido a la falta de archivos y luego tendrás que reparar la instalación de Windows con un disco de reparación.

Procedemos con nuestro ejemplo. Asumimos que usamos gdisk e hicimo las siguientes particiones:

  • sda4 - swap
  • sda5 (Linux) - para instalar Slackware
  • sda6 (Linux) - para instalar Ubuntu

Consideramos primero la instalación de Slackware y luego la de Ubuntu.

Instalación de Slackware con UEFI

En la versión 14.1 y en adelante, Slackware64 soporta EFI. Incorpora tanto ELILO como GRUB EFI-compatible; puede elegir entre los dos, ELILO es la opción predeterminada.

ELILO

Durante la instalación, Slackware le pregunta acerca de la instalación de ELILO en la partición EFI. Si usted elige instalarlo, un directorio se creará en la partición EFI (EFI/Slackware) y el binario ELILO EFI (elilo.efi) será colocado allí.El directorio también contendrá un archivo elilo.conf y una copia de la imagen del kernel (vmlinuz). Debería poder iniciar su sistema Linux de inmediato.

GRUB

Si ELILO no fue instalado, necesitaremos inicializar GRUB para tener un systema de arranque. Así que, justo después del proceso de instalación, no reinicie. en nuestro sistema recien instalado. Vamos a chrootear en nuestro sistema recién instalado de inmediato.

Normalmente, el sistema recién instalado se monta en /mnt. Use el comando df para ver que más se monta y dónde.

→ Montar algunos sistemas de archivos útiles (if they are not already present):(si no están ya presentes):

# mount -t vfat /dev/sda2 /mnt/boot/efi

# mount -t proc /proc /mnt/proc
# mount --rbind /sys /mnt/sys
# mount --rbind /dev /mnt/dev
# mount --rbind /run /mnt/run

→ hacer chroot en el sistema recientemente instalado:

# chroot /mnt env -i HOME=/root TERM=$TERM PS1='\u@\h:\w# ' PATH=/usr/bin:/usr/sbin:/bin:/sbin bash --login +h

→ Luego instalamos el gestor de arranque GRUB en la partición EFI.

# modprobe efivars
# modprobe efivarfs

# modprobe dm-mod
# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB --recheck --debug

# mkdir -p /boot/grub/locale
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
# grub-mkconfig -o /boot/grub/grub.cfg
Los módulos efivars y efivarfs deben cargarse cada vez que usamos el comando efibootmgr, aquí llamado grub-install. En realidad, grub-install lo habría cargado automáticamente, pero lo mencionamos explícitamente para que esté completo.
El comando grub-install anterior genera muchos resultados. Puede redirigirlo a un archivo de registro para verlo más tarde. Entre las últimas líneas de la salida, debemos observar el uso del comando efibootmgr para registrar el binario EFI en la configuración del firmware UEFI. Recomiendo leer las páginas del manual para efibootmgr para entender el comando.
Una cosa interesante aquí es que, en caso de que Windows esté instalado, grub-mkconfig dice que detecta el cargador de arranque de Windows (bootmgfw.efi) pero no lo admite. Por lo tanto, no podrá generar una entrada para él en grub.cfg.Entonces deberíamos poner una entrada manualmente en grub.cfg. Esto es algo que podemos trabajar con rEFInd.

En este punto tendremos el archivo EFI/GRUB/grubx64.efi y el arbol /boot/grub. El grubx64.efi está registrado en la configuración del firmware, por lo que podemos arrancarlo.Puedes usar la opción '-v' con efibootmgr para ver si todo está bien.Si necesita cambiar el orden de algunos cargadores de arranque, puede usar la opción '-o'. A continuación se muestra un ejemplo:

# efibootmgr -v
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0001,3002,0000,2001,2002
Boot0000* Slackware     HD(2,145800,82000,366fa6fd-9e79-4904-a879-fe0ef1ee349c)File(\EFI\Slackware\elilo.efi)
Boot0001* Windows Boot Manager  HD(2,145800,82000,366fa6fd-9e79-4904-a879-fe0ef1ee349c)File(\EFI\Microsoft\Boot\bootmgfw.efi)
Boot2001* EFI USB Device        RC
Boot2002* EFI DVD/CDROM RC
Boot3002* Internal Hard Disk or Solid State Disk        RC

# efibootmgr -o 0000,0001,2001,2002,3002
# efibootmgr -v
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000,0001,2001,2002,3002
Boot0000* Slackware     HD(2,145800,82000,366fa6fd-9e79-4904-a879-fe0ef1ee349c)File(\EFI\Slackware\elilo.efi)
Boot0001* Windows Boot Manager  HD(2,145800,82000,366fa6fd-9e79-4904-a879-fe0ef1ee349c)File(\EFI\Microsoft\Boot\bootmgfw.efi)
Boot2001* EFI USB Device        RC
Boot2002* EFI DVD/CDROM RC
Boot3002* Internal Hard Disk or Solid State Disk        RC
Dos tips más, en caso de que arruines algo ;-)

Si necesita eliminar una entrada de la lista de binarios de EFI, puedes usar la opción '-B'. Digamos que desea eliminar EFI binario 0001:

efibootmgr -b 0001 -B

Y si necesita agregar un binario en EFI (digamos EFI /Slackware/elilo.efi) en la configuración del firmware:

efibootmgr -c -g -d /dev/sda -p 2 -w -L "ELILO" -l '\EFI\Slackware\elilo.efi'

Sólo observe que nuestra partición EFI es /dev/sda2; es por eso que hay “-d /dev/sda” y “-p 2”. Estos dos argumentos le dicen a efibootmgr que nuestra partición EFI es la segunda partición en el dispositivo /dev/sda.

Ubuntu

La instalación de Ubuntu es bastante sencilla. Arrancamos el DVD / USB y procedemos con la instalación, ya que la partición ya se ha realizado. Solo ten cuidado con Ubuntu donde pregunta dónde instalarlo. Ubuntu detectará Windows y preguntará si queremos Ubuntu junto a Windows, borrando así el resto. Por lo tanto, asegúrese de permanecer en el modo manual tanto como sea posible. Elija “Something else” Cuando pregunte sobre las particiones. Además, asegúrese de que detectó la partición EFI.

Al final de la instalación, Ubuntu habrá instalado su GRUB en la partición EFI en el directorio EFI /ubuntu y habrá ejecutado grub-mkconfig y efibootmgr.

Instalando rEFInd

Para los usuarios de Slackware, la forma más fácil de obtener rEFInd mire en https://slackbuilds.org/. El script SlackBuilds vuelve a empaquetar el binario precompilado para Slackware. Después de instalar el paquete, debemos pasar por un último paso para que se vuelva a encontrar en la partición EFI. Como root

# /usr/share/refind-${VERSION}/install.sh

${VERSION} Debe ser reemplazado con la versión. Este comando normalmente detectará la partición EFI y la arquitectura del sistema, y ​​copiará los archivos necesarios. Puede indicar si no obtuvo alguna información automáticamente.

En cuanto a Ubuntu u otras distros linux, rEFInd es muy probablemente parte de los repositorios de paquetes oficial. De cualquier forma, solo necesitamos instalar rEFInd en cualquier distro.

Instalación manual de rEFInd

En realidad, lo bueno de rEFInd es que no tiene que estar alojado en ningún sistema operativo. También puede copiarse directamente a la partición EFI, siempre que sepa qué archivos copiar. Por lo tanto, puede descargar un archivo de restauración de https://sourceforge.net/projects/refind/, y extraerlo. Normalmente, usaríamos un sistema de 64 bits, por lo tanto, cree el directorio /boot/efi/EFI/refind y copie los archivos apropiados allí:

# mkdir /boot/efi/EFI/refind
# cp -R PATH_TO_REFIND_SOURCE/refind/drivers_x64 /boot/efi/EFI/refind/
# cp -R PATH_TO_REFIND_SOURCE/refind/icons /boot/efi/EFI/refind/
# cp -R PATH_TO_REFIND_SOURCE/refind/refind.conf-sample /boot/efi/EFI/refind/refind.conf
# cp -R PATH_TO_REFIND_SOURCE/refind/refind_x64.efi /boot/efi/EFI/refind/
# cp -R PATH_TO_REFIND_SOURCE/keys /boot/efi/EFI/refind/

Pero luego tenemos que registrar manualmente nuestro binario en EFI de refind en el firmware con efibootmgr:

# efibootmgr -c -g -d /dev/sda -p 2 -w -L "rEFInd" -l '\EFI\refind\refind_x64.efi'

Una vez más, nuestra partición EFI se encuentra en /dev/sda2.

Note que ambos caminos de instalación de rEFInd puede realizarse inmediatamente después de la instalación de Slackware (antes de reiniciar). Solo tenemos que montar los sistemas de archivos necesarios y chroot en el sistema recién instalado. Luego instale el paquete refind Slackware o la instalación manual. Hay muchas posibilidades.

Configurando rEFInd

Esta es la parte más importante.rEFInd normalmente busca la mayoria de los directorios en la partición durante el arranque y detecta automáticamente todos los binarios o kernels de su EFI, rEFInd además analiza en volumenes y detectará kernels y los listará como opciones de de arranque.Pero esto se considera peligroso ya que permite el arranque en el modo de usuario único u otros cargadores de arranque de recuperación. Por lo tanto, buscaremos una configuración manual del script EFI/refind/refind.conf para un mejor control sobre el proceso de arranque.

rEFInd no analiza su propio directorio en la partición EFI (EFI/refind/).

Si arrancas dentro de rEFInd sin modificar refind.conf, veras muchas entradas de arranque en la pantalla de inicio. Modificaremos refind.conf para eliminar muchas de estas entradas y colocar nuestras entradas personalizadas allí. El archivo refind.conf predeterminado colocado por el script de instalación en EFI/refind/ contiene ejemplos y algunas explicaciones.

Poner en orden

Omitir volúmenes de escaneo

Podemor desactivar el escaneado de ciertos volúmenes utilizando el comando dont_scan_volumes. Usamos el comando con etiquetas de volumen. la entrada en en refind.conf es

dont_scan_volumes "WINRE","Windows"
Omitir la exploración de directorios específicos

No queremos que refind detecte todos los binarios de EFI automáticamente, porque entonces, no podremos controlar el número de entradas. Por lo tanto, no queremos volver a analizar los directorios donde se encuentran los archivos binarios de EFI, refind.conf ya tiene la entrada.

dont_scan_dirs ESP:/EFI/boot,EFI/Dell,EFI/memtest86

Añadiremos lo siguiente:

(we need to begin the list of directories with "+")
dont_scan_dirs + EFI/Boot,EFI/Microsoft,EFI/Slackware,EFI/ubuntu
Omitir archivos específicos de escaneo

En última instancia, esto evitará que se enumeren ciertos archivos binarios específicos de EFI, ya que agregaremos una sola entrada para cada uno más adelante.

dont_scan_files shim.efi,MokManager.efi,elilo-x86_64.efi,bootmgfw.efi,bootmgr.efi

Esto evitará que el ELILO aparezca en la lista de la instalación de Slackware o de cualquier otro directorio en la partición EFI. Y, se omitirá los binarios de Windows.

Omita el escaneo del kernel Linux
scan_all_linux_kernels false
Directorio de escaneo para los controladores

Normalmente, los controladores se deben colocar en el directorio tools/ en la partición EFI. Algunos controladores se encuentran en el directorio compartido de refind en /usr/share/refind-${VERSION}/refind/drivers_x64/. Para habilitar el escaneo de EFI/tools:

scan_driver_dirs EFI/tools

Arrancando los binarios de EFI

Digamos que tenemos el siguiente árbol de directorios en la partición EFI:

EFI/
 |
 |_ Boot/
 |     |_ bootx64.efi
 |
 |_ Microsoft/
 |     |_ Boot/
 |          |_ bootmgfw.efi
 |
 |_ Slackware/
 |     |_ elilo.efi
 |
 |_ ubuntu/
 |     |_ grubx64.efi
 |
 |_ refind/
       |_ refind_x64.efi

Deberíamos agregar entradas personalizadas para cada uno de los binarios EFI que queremos que aparezcan en el menú de refind.

→ Entrada para Windows:

menuentry Windows {
  icon EFI/refind/icons/os_win8.png
  loader EFI/Microsoft/Boot/bootmgfw.efi
}

Tenga en cuenta que podemos elegir cualquiera de los iconos del directorio EFI/refind/icons/. Más adelante describimos el uso de iconos personalizados. Note that we can choose any of the icons from the EFI/refind/icons/ directory. Later we describe the use of custom made icons.

→ Entrada para Slackware:

menuentry Slackware {
  icon EFI/refind/icons/os_win8.png
  loader EFI/Slackware/elilo.efi
}

→ Entrada para Ubuntu:

menuentry Ubuntu {
  icon EFI/refind/icons/os_ubuntu.png
  volume 9f5b153d-d103-4314-bc98-455fa5d0c625
  loader EFI/ubuntu/grubx64.efi
}

Tuvo que colocar el volumen allí ya que GRUB tendrá que acceder a ese volumen para su archivo de configuración.

Apple Mac

Para un Mac, refind detectara automáticamente el binario de EFI. Lo más probable es que se llame “boot.efi”, así que asegúrese de que boot.efi no esté en la lista de archivos para no buscar. Es posible que también deba colocar un controlador hfs en el directorio EFI/tools:

# cp /usr/share/refind-${VERSION}/refind/drivers_x64/hfs_x64.efi /boot/efi/EFI/tools/

Booteando Kernels

La parte buena de refind es que también podemos usarlo como un boot loader. De manera que, no necesitemos GRUB o ELILO. Tenemos que colocar el kernel que queremos arrancar en la partición EFI. Para esta parte usaremos un ejemplo con el siguiente árbol de directorios bajo EFI/:

EFI/
 |_ Slackware14.1/
 |         |_ vmlinuz-generic-3.10.104
 |         |_ initrd-3.10.104.gz
 |         
 |_ Slackware14.2/
 |         |_ vmlinuz-generic-4.4.29
 |         |_ initrd-4.4.29.gz
 |         
 |_ Ubuntu16.04/
       |_ vmlinuz-4.4.16-21.generic
       |_ initrd.img-4.4.16-21.generic
       |_ vmlinuz-4.4.0-31.generic
       |_ initrd.img-4.4.0-31.generic
Tenga en cuenta que ni Slackware ni Ubuntu colocan sus kernels genéricos en la partición EFI de forma predeterminada. Hicimos estos directorios manualmente y colocamos kernels seleccionados allí. Un kernel (huge) se coloca en el directorio EFI/Slackware solo en el caso de que instalemos ELILO.

→ Entrada para Slackware 14.1:

menuentry Slackware14.1_with_kernel_generic-3.10.104 {
  icon EFI/refind/icons/os_slackware.png
  volume cac2f895-6c8e-414c-8bc7-876519e828c0
  loader EFI/Slackware14.1/vmlinuz-generic-3.10.104
  options "ro root=UUID=cac2f895-6c8e-414c-8bc7-876519e828c0"
  initrd EFI/Slackware14.1/initrd-3.10.104.gz
}

La etiqueta de esta entrada de menú se usa como una breve descripción y se muestra en la parte inferior del menú de reenvío cuando se coloca el cursor sobre los iconos. El identificador de volumen para un sistema de archivos particular se puede obtener usando el comando blkid:

# blkid /dev/sda12
/dev/sda12: UUID="9f5b153d-d103-4314-bc98-455fa5d0c625" TYPE="ext4"

→ Entrada para Slackware 14.2:

menuentry "Slackware14.2 on sda12" {
  icon EFI/refind/icons/os_slackware.png
  volume 9f5b153d-d103-4314-bc98-455fa5d0c625
  loader EFI/Slackware14.2/vmlinuz-generic-4.4.29
  initrd EFI/Slackware14.2/initrd-4.4.29.gz
  submenuentry "Linux 4.4.29 generic" {
    options "ro root=UUID=9f5b153d-d103-4314-bc98-455fa5d0c625"
  }
  submenuentry "Linux 4.4.29 generic (recovery mode)" {
    options "ro root=UUID=9f5b153d-d103-4314-bc98-455fa5d0c625 single"
  }
}

Esta vez hicimos una entrada con entradas de submenú para que tengamos la opción de iniciar en modo de usuario único. También tenga en cuenta cómo citamos la etiqueta porque usamos espacios. En el menú de arranque refind, deberemos colocar la selección en este ícono y presionar F2 para acceder a las opciones. Si se presiona ENTER de inmediato en el ícono, se iniciará la configuración predeterminada, esa es la primera entrada del submenú. La entrada refind.conf podría hacerse más concisa con el comando add_options. Ya que la única diferencia entre las dos opciones es el parámetro single, podemos agregarlo a la entrada del modo de recuperación:

menuentry "Slackware14.2 on sda12" {
  icon EFI/refind/icons/os_slackware.png
  volume 9f5b153d-d103-4314-bc98-455fa5d0c625
  loader EFI/Slackware14.2/vmlinuz-generic-4.4.29
  initrd EFI/Slackware14.2/initrd-4.4.29.gz
  options "ro root=UUID=9f5b153d-d103-4314-bc98-455fa5d0c625"
  submenuentry "Linux 4.4.29 generic" {
  }
  submenuentry "Linux 4.4.14 generic (recovery mode)" {
    add_options "single"
  }
}
Para los usuarios de slackware: notamos que se necesitaba un initrd incluso para arrancar el kernel huge porque algunos drivers son necesarios. Los drivers necesarios, para arrancar un kernel huge sin un initrd, son cargados desde un shell EFI. Muchos drivers fueron ubicados en EFI/tools pero cuando refind explora el directorio, no todos los driver cagaron fueron cargados automaticamente. Así que resulta más fácil hacer un initrd que acompañe cada kernel.

→ Entrada para Ubuntu 16.04:

menuentry "Ubuntu 16.04" {
  icon EFI/refind/icons/os_ubuntu.png
  volume d3c5b9fa-53d7-42df-889f-78630cb9acea
  submenuentry "Linux 4.4.16-21 generic" {
    loader EFI/Ubuntu16.04/vmlinuz-4.4.16-21.generic
    options "ro root=UUID=d3c5b9fa-53d7-42df-889f-78630cb9acea"
    initrd EFI/Ubuntu16.04/initrd.img-4.4.16-21.generic
  }
  submenuentry "Linux 4.4.0-31 generic" {
    loader EFI/Ubuntu16.04/vmlinuz-4.4.0-31.generic
    options "ro root=UUID=d3c5b9fa-53d7-42df-889f-78630cb9acea"
    initrd EFI/Ubuntu16.04/initrd.img-4.4.0-31.generic
  }
}

Aquí usamos entradas de submenú para tener opciones entre dos versiones diferentes del kernel. Se podrían haber agregado más entradas de submenú para tener modos de usuario único, como arriba, para cada versión de kernel.

Usando un archivo refind_linux.conf

Si hemos colocado un kernel en la partición EFI, como arriba, también podemos colocar un archivo llamado refind_linux.conf, que contiene las opciones de arranque, en el mismo directorio que el kernel. Por ejemplo,

→ EFI/Slackware14.2/refind_linux.conf:

"Boot with standard options" "ro root=UUID=9f5b153d-d103-4314-bc98-455fa5d0c625"
"Boot into single-user mode" "ro root=UUID=9f5b153d-d103-4314-bc98-455fa5d0c625 single"
"Boot with minimal options"  "root=UUID=9f5b153d-d103-4314-bc98-455fa5d0c625"

→ Entonces la entrada refind.conf para Slackware 14.2 se convierte en:

menuentry "Slackware14.2 on sda12" {
  icon EFI/refind/icons/os_slackware.png
  volume 9f5b153d-d103-4314-bc98-455fa5d0c625
  loader EFI/Slackware14.2/vmlinuz-generic-4.4.29
  initrd EFI/Slackware14.2/initrd-4.4.29.gz
}

Las opciones aparecerán solo después de presionar F2 en el ícono en el menú refind. ENTER en el icono iniciará automáticamente el primer conjunto de opciones, es decir, 'Arrancar con opciones estándar'.

Si ponemos dos o más kernels en el mismo directorio, necesitaremos tener una entrada separada como la anterior por cada kernel. Entonces, las opciones de refind_linux.conf serán aplicadas a cada uno.

Selección predeterminada y tiempo de espera

Cuando el menú refind aparece, si no son precionadas las teclas antes del tiempo de espera, refind arrancará la opción predeterminada. Si ésta no es definida explicitamente en refind.conf, refind arrancará la primera entrada en pantalla. El tiempo de espera se establece con timeout y la opción predeterminada se establece con default_selection.

timeout 10

default_selection 2  (will boot the second entry by default after timeout)

default_selection +  (will boot the loader most recently booted)

default_selection "Slackware14.1"  (will boot Slackware 14.1)

Respecto a la última opción, cualquier subcadena que corresponda al título o volumen del cargador funcionará. Pero hay que tener cuidado cuando tenemos entradas con titulos similares como nuestros dos Slackware de arriba.

Herramientas Non-bootloader

En el menú refind, bajo los íconos para la selección de cargadores de arranque y kernels, hay un conjunto de íconos para herramientas/opciones útiles, por ejemplo, EFI shell, memtest, programa de particionamiento, a cerca de, apagado, reinicio. Podemos elegir las opciones que serán visibles en el menú usando el comando showtools :

showtools reboot,shutdown,about

Las opciones disponibles son:

  • shell : El shell de EFI
  • memtest : programa memtest86
  • gdisk : herramienta para particionamiento
  • apple_recovery
  • windows_recovery
  • mok_tool : Herramienta de mantenimiento de la clave de propietario de la máquina (MOK)
  • shutdown : Apagado
  • reboot : Reinicio
  • firmware : reinicio la computadora en la configuración de firmware UEFI
  • about : información a cerca de rEFInd

Modificando la apariencia de rEFInd

Ahora que hemos arreglado nuestras entradas de arranque, podemos jugar un poco y modificar la apariencia de nuestro menú.

Resolución

Podemos establecer la resolución manualmente, para asegurar que los banners/background estén bien escalados. La resolución por defecto del sistema es 800×600.

resolution 1920 1080

Usando íconos personalizados

Como vimos anteriormente con las entradas del menú personalizado, podemos elegir íconos para cada entrada con la opción icon. Entonces podemos hacer nuestros propios íconos y colocarlos en el directorio EFI/refind/icons/. El tipo predeterminado de iconos es bmp o png. Hay dos tipos de íconos, unos pequeños para las opciones non-bootloader (p.e. apagado, reinicio, …), y unos grandes para las entradas bootloaders/kernel. Todos los iconos son cuadrados y los tamaños predeterminados son 48×48 para los iconos pequeños y 128×128 para los iconos grandes. Todos los iconos deben tener un tamaño superior a 32×32. El tamaño de los iconos se puede configurar utilizando:

large_icon 128
small_icon 48

Si los íconos son físicamente más pequeños, se estirarán para que coincidan con el tamaño establecido.

Cuando el cursor se mueve en el menú de refindir, un fondo de selección cambia de un icono a otro. Podemos crear nuestros propios fondos de selección y copiarlos en el directorio EFI/refind y luego cambiar refind.conf:

selection_big   myselectionbig.png
selection_small myselectionsmall.png

Los formatos aceptados son de nuevo bmp y png. png se utiliza principalmente para tener soporte para la transparencia. Los tamaños predeterminados son 64×64 para el pequeño y 144×144 para el grande.

Y finalmente, para incluir nuestro icono en nuestra entrada del menú:

menuentry "Bootloader title" {
  icon EFI/refind/icons/mycustom_icon.png
  ...
  ...
}

El fondo

También podemos crear nuestro propio fondo y colocarlo en el directorio EFI / refind /. Las líneas requeridas en refind.conf son:

banner mybackground.bmp
banner_scale noscale

Con noscale la imagen se recortará si es demasiado grande. La otra posibilidad es fillscreen. El valor predeterminado es noscale.

Fuentes

 es:howtos:slackware_admin:uefi_triple_boot_with_refind_on_slackware ()