GNU/Linux >> Tutoriales Linux >  >> Linux

Mueva su Linux del BIOS heredado a UEFI en su lugar con un tiempo de inactividad mínimo

No sé a ti, pero a mí no me gusta reinstalar mi sistema operativo. Me parece una completa pérdida de tiempo para algo que debería actualizarse en su lugar. Algunas personas, que a menudo usan otras plataformas, prefieren una buena limpieza y reinstalación una vez al año para recuperar la velocidad original de sus sistemas. Simplemente no suscribo este punto de vista. Hay muchas maneras de mantener un sistema y, por lo general, prefiero una depuración de investigación en lugar de borrar y esperar lo mejor.

Por esta razón, los sistemas como mi computadora portátil de trabajo podrían haber comenzado su vida hace mucho tiempo (Fedora 22 en una computadora portátil de cuarta generación basada en i7) y ya han visto tres actualizaciones de hardware, varias actualizaciones de unidades de estado sólido (SSD) y muchos Actualizaciones de Fedora (actualmente uso Fedora 32).

Cuando cambio de sistema, me gusta llevar mi sistema operativo conmigo y esperar que se inicie en la nueva máquina. Pero resulta que es un desastre a punto de suceder debido a las diferencias de hardware entre los sistemas nuevos y antiguos. El problema es que no es tan simple como sacar el disco duro de un sistema antiguo y colocarlo en uno nuevo y esperar que todo funcione como se desea. Este artículo describe cómo mover una instalación de Linux de una pieza de hardware, en este caso, una computadora portátil más antigua, a una más nueva.

La gran advertencia o los diez años de advertencia avanzada que UEFI nos dio

Cuando se introdujo la Interfaz de firmware extensible unificada (UEFI) a principios de la década de 2000, se diseñó para reemplazar el BIOS de la PC (Sistema básico de entrada/salida) y proporcionar a los usuarios de x86 algo tecnológicamente más avanzado. Las personas con sistemas SPARC o PowerPC Mac con OpenBoot PROM (OBP)/OpenFirmware ya habían experimentado el futuro muchos años antes. UEFI quería desalojar el BIOS para que sus predecesores ya no avergonzaran a la PC.

Para que la tecnología UEFI fuera ampliamente adoptada, los fabricantes optaron por hacerla opcional/seleccionable. desde el firmware de la máquina:¿Desea arrancar en modo Legacy BIOS o UEFI? En el transcurso de los siguientes diez años, UEFI lentamente eliminó Legacy BIOS y se convirtió en el modo predeterminado para las máquinas enviadas por los fabricantes.

Para ser justos, UEFI ofrece múltiples ventajas, incluidas estas:

  • Hace que el arranque múltiple sea más confiable y flexible.
  • Nos da (a los usuarios de Linux) la capacidad de ejecutar fwupdmgr para actualizar el firmware en nuestras máquinas desde Linux. Esto incluye casi cualquier firmware, incluso tarjetas complementarias.

En mis sistemas personales, simplemente ignoré el problema de UEFI y seguí habilitando Legacy BIOS en cualquier máquina nueva que obtuviera para poder iniciar mi sistema operativo Linux sin pensarlo dos veces.

Luego, llegó 2020 y apareció una computadora portátil nueva solo con UEFI. Sin arranque heredado de ningún tipo (excepto en memorias USB externas). Meses después, una nueva estación de trabajo portátil basada en Xeon llegó a nuestra casa y, de nuevo, esa bestia solo funcionaría con UEFI.

Estaba atascado con un SSD (BIOS heredado) con formato de registro de arranque maestro (MBR) y una máquina que solo arrancaba en modo UEFI. Siendo un habilidoso y un usuario de Linux, me dispuse a investigar el problema y la solución resultó no ser demasiado difícil y solo requeriría unos cinco minutos una vez que haya determinado qué hacer.

Una palabra de advertencia y algunas advertencias

Al encontrar el "procedimiento correcto" para mis sistemas físicos, dañé la máquina virtual de prueba que estaba usando varias veces. También corrompí uno de los sistemas de mi computadora portátil una vez, pero tenía una imagen completa de mi SSD gracias a CloneZilla. He aquí algunos consejos:

  • Realice una copia de seguridad completa a nivel de imagen de su sistema antes de continuar. Estarás tocando tus discos y las herramientas utilizadas para facilitar la eliminación de algo sin confirmación. Podría usar CloneZilla, AOMEI Partition Assistant, dd , o incluso Norton Ghost para hacer eso. Hay docenas de herramientas que hacen bien el trabajo.
  • Este procedimiento funciona incluso si tiene una máquina de arranque dual. Funciona con Logical Volume Manager (LVM), particiones simples y también con Linux Unified Key Setup (LUKS) o cualquier combinación de los mismos. Simplemente debe tener cuidado y adaptar las instrucciones a su configuración.
  • Para realizar este procedimiento, es necesario colocar su querido SSD en una máquina que pueda realizar ambos modos de arranque:Legacy BIOS y UEFI. Si intenta el procedimiento en un dispositivo solo BIOS, tendrá que esperar hasta que mueva su HDD o SSD a una máquina UEFI para saber si funcionó.
  • No tiene que mover físicamente su SSD a otra máquina. Simplemente puede clonar el antiguo SSD con formato MBR en un nuevo SSD en otra máquina y trabajar desde allí. Cambiarás la estructura de las particiones en tu disco. Ya sea que se trate de un dispositivo temporal o de un nuevo SSD en una computadora portátil nueva, depende totalmente de usted.
  • En el desafortunado caso de que no tenga espacio en disco que pueda liberar fácilmente en su SSD, todavía hay formas de operar. Los últimos cientos de MB de su LVM PV (volumen físico) podrían eliminarse de sus PE y el LVM PV podría redimensionarse para dejar espacio para la partición EFI. No describiré esto aquí, pero encontrará algunas referencias al final del artículo. Otra opción es aprovechar la oportunidad de comprar un SSD un poco más grande y restaurar su sistema Linux en él para tener algo de espacio libre.
  • Trabaje lentamente en el proceso y no dude en hacer preguntas en línea si necesita ayuda. Hay docenas de grupos de usuarios de Linux que te ayudarán si te quedas atascado.
  • Este artículo se escribió en un sistema portátil recién reinstalado con Fedora 33, pero se aplica a muchas configuraciones diferentes.
  • No intente esto si usa el sistema de archivos B-tree (BTRFS) con Fedora 33. No pude hacerlo funcionar después de convertir mi disco a la tabla de particiones GUID (GPT) cuando usé BTRFS.

¿Estoy usando un BIOS heredado?

Hay dos buenos indicadores de una máquina arrancada en Legacy BIOS.

1) Su disco de arranque tiene partición DOS/MBR:

[raistlin@localhost ~]$ sudo su -

[root@localhost ~]# df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2       119G  7.1G  111G   6% /

[root@localhost ~]# file -s /dev/sda
/dev/sda: DOS/MBR boot sector

2) Su kernel de Linux no tener variables EFI:

[root@localhost ~]# ls /sys/firmware/efi
ls: cannot access '/sys/firmware/efi': No such file or directory

En una máquina en modo UEFI, lo anterior produce un resultado similar a este:

[root@localhost ~]# ls /sys/firmware/efi
config_table  efivars  esrt  [...]  runtime  runtime-map  systab  vars

Inspeccionar el disco de arranque y decidir una estrategia

De lo anterior, descubrí que mi disco de arranque es /dev/sda . Eche un vistazo más de cerca con parted :

[root@localhost ~]# parted /dev/sda
GNU Parted 3.3
Using /dev/sda
Welcome to GNU Parted! Type' help' to view a list of commands.
(parted) p
Model: ATA LITEON L8H-128V2 (scsi)
Disk /dev/sda: 128GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 1075MB 1074MB primary ext4 boot
2 1075MB 128GB 127GB primary lvm

De lo anterior, verá que solo hay dos particiones presentes. La primera partición es una partición pequeña de 1 GiB, formateada como ext4 y contiene los granos. La segunda partición es una bestia diferente y usa LVM. Aunque he estado contento con LVM en mis sistemas Linux, no lo tocaré por el momento.

En consecuencia, usaré el espacio ocupado por la primera partición para hacer espacio para GPT y UEFI.

Tenga en cuenta que si usa LUKS o LVM, el procedimiento de conversión a UEFI también podría ser más seguro si usa la partición de arranque y su espacio.

Si recogiste BTRFS (el valor predeterminado en Fedora 33), esto podría no funcionar para usted, y mi intento inicial no pudo arrancar justo después de convertir el disco a GPT.

Si su partición de arranque es más pequeña que 1G y todo el espacio está ocupado por particiones, puede que no sea seguro hacer /boot menor que 512-600Mib. Es posible que no tenga suficiente espacio para continuar, y tal vez ahora sea un buen momento para obtener un SSD un poco más grande en el que pueda clonar su sistema.

Mi nombre es /dev/sda1

La partición de arranque en esta máquina tiene un tamaño de 1 Gib y tiene suficiente espacio libre para que podamos continuar:

[root@localhost ~]# df -h /boot
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       976M  238M  672M  21% /boot

Primero, cambia el tamaño del sistema de archivos a 512M:

[root@localhost ~]# resize2fs /dev/sda1 512M
resize2fs 1.45.6 (20-Mar-2020)
Filesystem at /dev/sda1 is mounted on /boot; on-line resizing required resize2fs: On-line shrinking not supported

Umount primero (puede, ya que Linux solo monta /boot como una conveniencia):

[root@localhost ~]# umount /boot

[root@localhost ~]# resize2fs /dev/sda1 512M
resize2fs 1.45.6 (20-Mar-2020)
Please run 'e2fsck -f /dev/sda1' first.

[root@localhost ~]# e2fsck -f /dev/sda1
e2fsck 1.45.6 (20-Mar-2020)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sda1: 414/65536 files (0.7% non-contiguous), 63590/262144 blocks

[root@localhost ~]# resize2fs /dev/sda1 512M
resize2fs 1.45.6 (20-Mar-2020)
Resizing the filesystem on /dev/sda1 to 131072 (4k) blocks.
The filesystem on /dev/sda1 is now 131072 (4k) blocks long.

[root@localhost ~]# mount /boot

[root@localhost ~]# df -h /boot
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       472M  200M  237M  46% /boot

El ext4 El sistema de archivos se redimensionó, pero la partición aún tiene un tamaño de 1 Gib. Lo cambiará de tamaño a continuación. Reducirá la partición a un tamaño ligeramente superior la del /boot sistema de archivos para estar a salvo de errores de redondeo. Redúzcalo a 700 Mib, lo que dejará unos 300 Mib libres. Dado que el sistema de archivos dentro de esa partición ahora tiene 512 Mib, es seguro reducir la partición de 1024 Mib a 700 Mib.

[root@localhost ~]# fdisk  -l /dev/sda|grep sda1
/dev/sda1  *       2048   2099199   2097152     1G 83 Linux

[root@localhost ~]# parted /dev/sda
GNU Parted 3.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) resizepart 1 700M
Warning: Shrinking a partition can cause data loss, are you sure you want to continue? Yes/No? yes
(parted) p
Model: ATA LITEON L8H-128V2 (scsi)
Disk /dev/sda: 128GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Disk Flags:
Number  Start   End    Size   Type     File system  Flags
 1      1049kB  700MB  699MB  primary  ext4         boot
 2      1075MB  128GB  127GB  primary  btrfs
(parted) quit
Information: You may need to update /etc/fstab.

[root@localhost ~]#

A continuación, vuelva a extender el sistema de archivos al tamaño completo de la partición (700Mib):

[root@localhost ~]# partprobe

[root@localhost ~]# resize2fs /dev/sda1
resize2fs 1.45.6 (20-Mar-2020)
Resizing the filesystem on /dev/sda1 to 170642 (4k) blocks.
The filesystem on /dev/sda1 is now 170642 (4k) blocks long.

La operación de cambio de tamaño concluye con el crecimiento de ext4 sistema de archivos de 512Mib al tamaño de la partición subyacente, que es 700Mib.

También podría haber usado Gparted para monitorear el progreso de los pasos anteriores. Aquí hay una captura de pantalla de la situación inicial:

Tan pronto como cambia el tamaño del sistema de archivos, aparece una advertencia:

Después de que la partición de arranque se redimensiona a 700M, una no asignada la fila aparece en Gparted:

Una vez que el sistema de archivos se vuelve a extender al tamaño de la partición, la advertencia desaparece:

Además, como es común en Linux, podría haber realizado toda la operación con un solo clic en GParted, pero no habría sido tan divertido:

Convertir el disco a GPT

Con algo de espacio libre disponible, ahora puede convertir el disco a GPT. Primero, necesitas instalar algunas herramientas:

[root@localhost ~]# yum install gdisk grub2-efi-x64-modules efibootmgr grub2-tools-efi -y Last metadata expiration check: 1:32:33 ago on Wed 27 Jan 2021 05:01:42 PM EST.
Package gdisk-1.0.6-1.fc33.x86_64 is already installed.
Package efibootmgr-16-9.fc33.x86_64 is already installed.
Package grub2-tools-efi-1:2.04-31.fc33.x86_64 is already installed.
Dependencies resolved.[...]

Usa gdisk para convertir la tabla de particiones a GPT y crear la partición de arranque del BIOS que necesita GRUB. Esta partición tendrá el número 3 (la primera partición disponible) y ser extraído de los primeros sectores del disco (sectores 34 a 2047).

[root@localhost ~]# gdisk /dev/sda
GPT fdisk (gdisk) version 1.0.6
Warning: The partition table header claims that the size of partition table entries is 12255407 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but the partition table may be garbage.
Warning: Partition table header claims that the size of partition table entries is 0 bytes, but this program supports only 128-byte entries.
 
Adjusting accordingly, but the partition table may be garbage.
Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************
Command (? for help): p
Disk /dev/sda: 250069680 sectors, 119.2 GiB
Model: LITEON L8H-128V2
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 6681F0D6-F645-4F97-93A5-E7E5E3912C62
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2048-sector boundaries
Total free space is 734681 sectors (358.7 MiB)
Number  Start (sector)
   1            2048
   2         2099200
End (sector)  Size       Code  Name
   1367187   666.6 MiB   8300  Linux filesystem
 250068991   118.2 GiB   8300  Linux filesystem
Command (? for help): n
Partition number (3-128, default 3): 3
First sector (34-250069646, default = 1368064) or {+-}size{KMGTP}: 34
Last sector (34-2047, default = 2047) or {+-}size{KMGTP}: [Press Enter to accept 2047] Current type is 8300 (Linux filesystem)
Hex code or GUID (L to sho codes, Enter = 8300): ef02
Changed type of partition to 'BIOS boot partition'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sda.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.

Así es como se ve el disco ahora:

[root@localhost ~]# partprobe

[root@localhost ~]# fdisk -l /dev/sda|grep sda
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
/dev/sda1     2048   1367187   1365140 666.6M Linux filesystem
/dev/sda2  2099200 250068991 247969792 118.2G Linux filesystem
/dev/sda3       34      2047      2014  1007K BIOS boot

A continuación, reinstale el cargador de arranque GRUB. Si tiene una versión más reciente de grub, en lugar de usar grub2-install.... utilice dnf reinstall shim-* grub2-efi-* en cambio:

[root@localhost ~]# grub2-install /dev/sda
Installing for i386-pc platform.
Installation finished. No error reported.

[root@localhost ~]#

Si solo deseaba convertir su disco de MBR a GPT, esa parte ya está terminada. En este punto, recomendaría reiniciar su sistema para verificar que su máquina basada en BIOS pueda iniciar el disco GPT recién convertido.

Así es como se ve el disco ahora:

Esto también se puede ver desde el shell:

[root@localhost ~]# fdisk  -l /dev/sda
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: LITEON L8H-128V2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 6681F0D6-F645-4F97-93A5-E7E5E3912C62
Device       Start       End   Sectors   Size Type
/dev/sda1     2048   1367187   1365140 666.6M Linux filesystem
/dev/sda2  2099200 250068991 247969792 118.2G Linux LVM
/dev/sda3       34      2047      2014  1007K BIOS boot
Partition table entries are not in disk order.

Agregar la partición del sistema EFI

A continuación, utilice el espacio liberado anteriormente para crear una cuarta partición:la partición del sistema EFI.

[root@localhost ~]# gdisk /dev/sda
GPT fdisk (gdisk) version 1.0.6
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present
Found valid GPT with protective MBR; using GPT.
Command (? for help): p
Disk /dev/sda: 250069680 sectors, 119.2 GiB
Model: LITEON L8H-128V2
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 6681F0D6-F645-4F97-93A5-E7E5E3912C62
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2-sector boundaries
Total free space is 732667 sectors (357.7 MiB)
Number  Start (sector)
End (sector)  Size       Code  Name
   1367187   666.6 MiB   8300  Linux filesystem
 250068991   118.2 GiB   8E00  Linux LVM
      2047   1007.0 KiB  EF02  BIOS boot partition
1 2 3
   2048
2099200
     34
Command (? for help): n
Partition number (4-128, default 4): [Press Enter to accept 4]
First sector (1367188-250069646, default = 1367188) or {+-}size{KMGTP}: [Press Enter to accept 1367188]
Last sector (1367188-2099199, default = 2099199) or {+-}size{KMGTP}: [Press Enter to accept 2099199]
Current type is 8300 (Linux filesystem)

Hex code or GUID (L to show codes, Enter = 8300): ef00
Changed type of partition to 'EFI system partition'
Command (? for help): p
Disk /dev/sda: 250069680 sectors, 119.2 GiB
Model: LITEON L8H-128V2
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 6681F0D6-F645-4F97-93A5-E7E5E3912C62
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2-sector boundaries
Total free space is 655 sectors (327.5 KiB)
Number  Start (sector)
End (sector)  Size
   1367187   666.6 MiB
 250068991   118.2 GiB
Code  Name
8300  Linux filesystem
8E00  Linux LVM
1 2 3 4
   2048
2099200
     34
1367188
2047 1007.0 KiB EF02 BIOS boot partition 2099199 357.4 MiB EF00 EFI system partition

A continuación, agregue una etiqueta a la partición EFI para hacer referencia a ella más adelante con mayor facilidad. Esto también se hace en gdisk :

Command (? for help): c
Partition number (1-4): 4
Enter name: EFI-system
Command (? for help): p
Disk /dev/sda: 250069680 sectors, 119.2 GiB
Model: LITEON L8H-128V2
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 6681F0D6-F645-4F97-93A5-E7E5E3912C62
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2-sector boundaries
Total free space is 655 sectors (327.5 KiB)
Number  Start (sector)
End (sector)  Size
   1367187   666.6 MiB
 250068991   118.2 GiB
Code  Name
8300  Linux filesystem
8E00  Linux LVM
1 2 3 4
   2048
2099200
     34
1367188
   2047   1007.0 KiB  EF02  BIOS boot partition
2099199   357.4 MiB   EF00  EFI-system
 Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sda.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.

Ahora debería ver aparecer la partición en /dev/disk/by-partlabel :

[root@localhost ~]# partprobe

[root@localhost ~]# ls -l /dev/disk/by-partlabel/
total 0
lrwxrwxrwx. 1 root root 10 Jan 27 21:57 'BIOS\x20boot\x20partition' -> ../../sda3 lrwxrwxrwx. 1 root root 10 Jan 27 21:57 EFI-system -> ../../sda4
lrwxrwxrwx. 1 root root 10 Jan 27 21:57 'Linux\x20filesystem' -> ../../sda1 lrwxrwxrwx. 1 root root 10 Jan 27 21:57 'Linux\x20LVM' -> ../../sda2

La partición de arranque EFI debe estar formateada como vfat :

[root@localhost ~]# mkfs -t vfat -v /dev/disk/by-partlabel/EFI-system
mkfs.fat 4.1 (2017-01-24)
/dev/disk/by-partlabel/EFI-system has 255 heads and 63 sectors per track,
hidden sectors 0x14dc94;
logical sector size is 512,
using 0xf8 media descriptor, with 732012 sectors;
drive number 0x80;
filesystem has 2 16-bit FATs and 16 sectors per cluster.
FAT size is 192 sectors, and provides 45723 clusters.
There are 16 reserved sectors.
Root directory contains 512 slots and uses 32 sectors.
Volume ID is 855d115e, no volume label.

Ahora es el momento de montar esta partición y mover los datos del subdirectorio efi que antes se encontraba debajo de /boot pero primero verifique si se instalaron los archivos adecuados (los nombres variarán según su distribución de Linux). Esto es lo que tengo en mi sistema Fedora 33:

[root@localhost ~]# du /boot/efi
8       /boot/efi/System/Library/CoreServices
12      /boot/efi/System/Library
16      /boot/efi/System
2508    /boot/efi/EFI/fedora/fonts
17988   /boot/efi/EFI/fedora
2748    /boot/efi/EFI/BOOT
20740   /boot/efi/EFI
20764   /boot/efi
[root@localhost ~]# df -h /boot/efi
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       623M  237M  340M  42% /boot

[root@localhost ~]# find /boot/efi -name shim\*
/boot/efi/EFI/fedora/shimx64.efi
 
/boot/efi/EFI/fedora/shim.efi
/boot/efi/EFI/fedora/shimia32.efi
/boot/efi/EFI/fedora/shimx64-fedora.efi
/boot/efi/EFI/fedora/shimia32-fedora.efi

[root@localhost ~]# mount -t vfat /dev/disk/by-partlabel/EFI-system /mnt

[root@localhost ~]# mv  /boot/efi/* /mnt

[root@localhost ~]# umount /mnt

[root@localhost ~]# du /boot/efi
4 /boot/efi

Ahora es el momento de agregar esta partición a /etc/fstab y mount es:

[root@localhost ~]# echo ‘/dev/disk/by-partlabel/EFI-system /boot/efi vfat defaults 0 2’ >> /etc/fstab

[root@localhost ~]# mount /boot/efi

[root@localhost ~]#

Cierta verificación está en orden en esta etapa. La partición EFI debe montarse y contener los datos que copió anteriormente:

root@localhost ~]# df /boot/efi
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/sda4         365784 20832    344952   6% /boot/efi

[root@localhost ~]# du /boot/efi
2760    /boot/efi/EFI/BOOT
2512    /boot/efi/EFI/fedora/fonts
18024   /boot/efi/EFI/fedora
20792   /boot/efi/EFI
16      /boot/efi/System/Library/CoreServices
24      /boot/efi/System/Library
32      /boot/efi/System
20848   /boot/efi

Ahora es el momento de reinstalar el cargador de arranque GRUB y hacer cumplir el arranque UEFI. Como arriba, si tiene una versión más nueva de grub, en lugar de usar grub2-install.... use dnf reinstall shim-* grub2-efi-* en cambio:

[root@localhost ~]# grub2-install --target=x86_64-efi /dev/sda
Installing for x86_64-efi platform.
EFI variables are not supported on this system.
EFI variables are not supported on this system.
grub2-install: error: efibootmgr failed to register the boot entry: No such file or directory.

[root@localhost ~]#

Los tres mensajes de error que se muestran arriba son normales y están relacionados con la ausencia de variables de firmware EFI. Esto sucede en el momento actual porque la última vez que arrancó la PC fue en modo Legacy BIOS. Una vez que esté en modo UEFI completo, estos errores desaparecerán. Respira hondo, reinicia tu PC y prepárate para ingresar a su firmware para cambiar su modo de arranque.

[ También te puede interesar: Cómo configurar el arranque PXE para hardware UEFI ]

Apagar y cambiar el firmware de Legacy BIOS a UEFI.

Las siguientes capturas son específicas del sistema en el que realicé el procedimiento. Debe buscar las instrucciones en el manual de su sistema para averiguar cómo cambiar de BIOS a UEFI. Aquí hay un ejemplo en mi computadora portátil:

Guarde la configuración y salga del firmware. Su PC se reiniciará e intentará iniciarse desde su disco en modo UEFI. Es posible que tenga que seleccionar su disco manualmente la primera vez que arranque en modo UEFI.

Arranque exitoso

Inmediatamente después del arranque, inicie sesión y comience a disfrutar de su Linux renovado con UEFI. Sí, todos sus archivos, cuentas y programas seguirán estando allí.

[root@localhost ~]# efibootmgr
BootCurrent: 0014
Timeout: 0 seconds
BootOrder: 0014,0013,0009,000D,0007,000A,000B,000C,0008,0012
Boot0000  Setup
Boot0001  Boot Menu
Boot0002  Diagnostic Splash Screen
Boot0003  Lenovo Diagnostics
Boot0004  Startup Interrupt Menu
Boot0005  Rescue and Recovery
Boot0006  MEBx Hot Key
Boot0007* USB CD
Boot0008* USB FDD
Boot0009* ATA HDD0
Boot000A* ATA HDD1
Boot000B* ATA HDD2
Boot000C* USB HDD

Boot000D* PCI LAN
Boot000E* IDER BOOT CDROM
Boot000F* IDER BOOT Floppy
Boot0010* ATA HDD
Boot0011* ATAPI CD
Boot0012* PCI LAN
Boot0013* Windows Boot Manager
Boot0014* Fedora
[root@localhost ~]# fwupdmgr get-devices|grep -i lenovo
 │ Vendor: │ Vendor: Vendor:
LENOVO (DMI:LENOVO)
DMI:LENOVO
DMI:LENOVO

Gparted muestra el estado final del disco:

[ Hoja de referencia gratuita:obtenga una lista de utilidades y comandos de Linux para administrar servidores y redes. ] 

Resumir

Ya sea que desee reinstalar desde cero o actualizar su entorno operativo en su lugar, hay muchas maneras de lograrlo con éxito. Sé dónde radica mi propia preferencia y esta publicación de blog intenta compartir algunos de los consejos que aprendí recientemente. Ten cuidado. Verifique la salida de sus comandos. Pide ayuda si necesitas algo. Además, hay herramientas en otros sistemas operativos para facilitar la conversión si así lo desea; un ejemplo de ello es el Asistente de partición AOMEI gratuito para plataformas Windows.

Curiosamente, a pesar de que esta computadora portátil con Fedora 33 cambió con éxito de BIOS a UEFI con GPT, no había actualizaciones de firmware disponibles a través de LVFS porque el sistema era demasiado antiguo.


Linux
  1. Supervise su sistema Linux en su terminal con procps-ng

  2. Escanee su seguridad Linux con Lynis

  3. ¿Es posible una memoria USB híbrida de Linux para UEFI y BIOS heredada?

  4. ¿Cómo hacer un Linux de arranque mínimo (solo con terminal) a partir del código fuente del kernel?

  5. ¿Cómo convierto mi disco Linux de MBR a GPT con UEFI?

Dale sabor a tu escritorio Linux con Cinnamon

Modernice su escritorio Linux con Enlightenment

Cómo verificar si su computadora usa UEFI o BIOS [tanto en Linux como en Windows]

Trabajar con Microsoft Exchange desde su escritorio Linux

Usa tu Chromecast desde Linux y MacOS con mkchromecast

Administre sus servidores con Cockpit Linux