Oracle Linux 7.9 Replication from on perm to OCI not Booting in to OS looping in to cycle
Background :
Source server Oracle Linux 7.9 with the below configuration
/ ( root ) file system is not an LVM
/usr ( or any other critical OS directory ) is on LVM
When we migrate this kind of configuration server from On perm to OCI Target server not able to boot back in to OS
Environment details :
RMM v7.4.0.583
Oracle Linux Server 7.9
Host sync autoprovision
Issue:
Target will not boot in to OS , RMM host sync will fail with the below error
Timed out while waiting for xxxx-tgt to boot into the host operating system
Symptoms :
Target will be looping in to cycle as given in the below screen shot if we force reboot target from OCI console and select Rackware microkernel in the boot menu will boot in to Rackware micro kernel
Root cause:
/(root ) file system not and lvm and /usr ( or other critical directory is on LVM ) server is not able to determine where the /usr configuration is present
Patch to Fix the issue :
If root / is on LVM then this would work without issue.
We also have temporary patch . If you exclude any file systems that is on LVM it could cause an issue.
To apply the patch
copy patch to /opt/rackware on the RMM server
then run
patch -p1 < usr-bootfix.patch
Manual Work around :
If you have another server that has issues like this, and you don't have the patch you can manually boot by checking source kernel parameters
cat /proc/cmdline
take each rd.lvm value from the source, and manually add it to the line like
kernel<uefi|16>=/vmlinuz-
ex: rd.lvm.lv=ol/usr
linux16 /vmlinuz-3.10.0-1127.el7.x86_64 root=/dev/mapper/ol-root ro crashkernel=auto rd.lvm.lv=ol/user rhgb quiet LANG=en_US.UTF-8
This will be a one time boot.
then you can run
rw host release <rmm friendly name>
then modify /etc/default/grub
add the same rd.lvm values from above into the line:
GRUB_CMDLINE_LINUX=
after that is modified, you need to generate the grub.cfg
on uefi this will usually be /boot/efi/EFI/redhat/grub.cfg
bios: /boot/grub2/grub.cfg
grub2-mkconfig -o <grub-cfg file here>
It is a good idea to back it up before running this.