Convert CentOS7 Legacy Bios to Uefi

From Bitbull Wiki
Revision as of 07:12, 22 January 2021 by Chris (talk | contribs) (Created page with "=Intro= Sometimes it is needed to convert a legacy Bios system into Uefi. I got this working for CentOS7 and RHEL7 as well, but it is not easy at all. This are my notes about...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

1 Intro

Sometimes it is needed to convert a legacy Bios system into Uefi. I got this working for CentOS7 and RHEL7 as well, but it is not easy at all. This are my notes about how to do it.

2 Links

  • NICE HOW TO

https://www.reddit.com/r/linux/comments/ij9por/howto_migrate_a_centos_installation_from/

  • CDROM LOCAL REPO:

https://access.redhat.com/solutions/1355683

  • EFI INSTALL RHEL:

https://access.redhat.com/solutions/3486741

3 Prepare

  • Ensure the kernel RPM of this version is copied to the local filesystem of the OS
rpm -qa | grep kernel
hint:
yum downloadonly
  • Install RPMs needed by UEFI
yum install grub2-common grub2 grub2-efi-x64 grub2-efi-x64-modules shim-x64 grub2-tools-extra grub2-pc-modules grubby grub2-tools-minimal grub2-tools grub2-pc efibootmgr dosfstools gdisk


4 Configure Disks needed by UEFI

  • increase lun (where /boot resides) by at least 200MB
we assume its /dev/mapper/mpatha
  • switch OS from legacy bios to uefi
  • reboot into rescue cd
  • verify its an UEFI system
ls -l /sys/firmware/efi/
  • list disk config
lsblk
  • save current state

fdisk -l /dev/mapper/mpatha | tee -a fdisk gdisk -l /dev/mapper/mpatha | tee -a gdisk

  • create UEFI partition
gdisk /dev/mapper/mpatha
n
4 -> part
<ENTER>
+200M
ef00
x
a
4 -> part
2
<ENTER>
w
y

partprobe /dev/mapper/mpatha

fdisk -l /dev/mapper/mpatha | tee -a fdisk
gdisk -l /dev/mapper/mpatha | tee -a gdisk


mkfs.fat -F32 -s1 /dev/mapper/mpatha4
lsblk | tee -a lsblk
blkid | tee -a blkid


echo 'UUID=XXXX-YYYY          /boot/efi               vfat    umask=0077,shortname=winnt 0 0' >> /etc/fstab
mount -a
mount
df -hPT
  • Install/Configure UEFI bootloader
grub2-install --target=x86_64-efi --bootloader-id="Red Hat Enterprise Linux 7" --boot-directory=/boot --efi-directory=/boot/efi --recheck --verbose /dev/mapper/mpatha
grub2-mkconfig -o /boot/grub2/grub.cfg
grep efi /boot/grub2/grub.cfg


5 Reinstall Kernel (initrd)

rpm -qa | grep kernel
rpm -e kernel
yum install kernel
# or manually: yum -C install /media/cdrom/Packages/kernel-3.10xxx.rpm
# or manually: rpm -ihv /media/cdrom/Packages/kernel-3.10xxx.rpm
yum update kernel

6 Reboot

sync
reboot