I was installing Big Sur on an old iMac 27 retina (2014 late), and I experienced the same problem — white logo on black screen for hours and the progress bar stays at about 90%.
Restarted into safe mode, the Big Sur screen appeared and got me logged in. Yet, the system runs in a slow and buggy way and blacked out to reboot.
By resetting the NVRAM, the progress bar run to the full end, but halted at 100% forever. Even worse, rebooted into Safe mode, but not able to login in since it's not responding.