Ok - I suffer so you don’t have to…
I had 4 Hyper-V Machines left that were on FreePBX-13/Sangoma6 and of course, being Hyper-V, I could not upgrade them.
But…If you mount them into VirtualBox, they upgrade just fine - so that is the route I took and it worked fine for all 4 machines…until I tried to put them back into Hyper-V - they would not boot.
You end up with a ton of errors, a LONG hang and then an emergency prompt with “Reached Target Basic System” and then a rescue prompt.
Come to find out, while it’s running and then being upgraded inside VirtualBox, once the upgrade is complete, it doesn’t have the Hyper-V Drivers anymore - so you have to rebuild the init for the system.
Boot into rescue from a CentOS-7 disc and do the following:
mount --bind /proc /mnt/sysimage/proc
mount --bind /dev /mnt/sysimage/dev
mount --bind /sys /mnt/sysimage/sys
mount --bind /run /mnt/sysimage/run
systemctl start multipathd.service
mkinitrd -f -v --with=hid-hyperv --with=hv_utils --with=hv_vmbus --with=hv_storvsc --with=hv_netvsc /boot/initramfs-3.10.0-1127.19.1.el7.x86_64.img 3.10.0-1127.19.1.el7.x86_64
Look in the directory and make sure you match EXACTLY the kernel version that is installed - currently 3.10.0-1127.19.1.el7.x86_64 in the above command, but as time goes by, it will change.
Once this is done, exit out of the rescue, eject the CentOS ISO and reboot and you are back in business.
Works for me and I didn’t have to migrate/reload - worth it!