This article will guide you through simple steps to reset forgotten root password in RHEL-based Linux distributions such as CentOS 8 and Fedora 35/34.
Resetting the forgotten root user password generally requires a few easy instructions that will guide you to reset the root password and you will thereafter be able to log in using the new password.
Reset Forgotten Root Password in RHEL/CentOS & Fedora
First, restart your system, and at the boot grub menu choose the kernel (mostly the first option) you wish to boot into and press the key 'e'
on your keyboard.

On the next screen, you will see the following kernel boot parameters, here find the line that starts with kernel=
and add the parameter rd.break
at the end as shown and press Ctrl + x keys.

On the next screen, you will land into emergency mode, here press Enter key to get into the shell prompt. Now, make sure to confirm that you remount the sysroot directory with read and write permissions. By default, it is mounted with read-only mode indicated as ro
.
# mount | grep sysroot

Now remount the sysroot directory with read and write permissions and confirm the permissions again. Note that this time, the permissions have changed from ro
(read-only) to rw
(read and write) as shown.
# mount -o remount,rw /sysroot/ # mount | grep sysroot

Next, mount the root file system in read and write mode using the following command.
# chroot /sysroot
Next, use the passwd command to reset the root password with the new password and confirm it.
# passwd

At this point, you have successfully reset your root user password. The only remaining part is to relabel all of the files with the accurate SELinux contexts.
# touch /.autorelabel

Finally, type exit and then log out to start the SELinux relabelling process.

This generally takes a few minutes and once done, the system will reboot and prompt you to log in as the root user with the new password.

And that’s how you would reset a forgotten root password in RHEL/CentOS 8 and Fedora 35/34 Linux distributions.