Have you ever encountered a situation when you missed your user account password on a Linux System? And the situation can be worse if you forgot the root password. You cannot perform any system wide changes. If you forget user password, you can easily reset it using root account.
What if you forget your root password? You cannot reset root account password using user account. Since user account is not permitted to perform such task in general.

Well here is the guide which will take you out of any such situation if you ever get into it. Here in this article we will be taking you to the journey of resetting your RHEL 7 and CentOS 7 root password.
This very morning I turned my RHEL 7 Linux server to find out that it has been locked. Either I messed up with password I changed last night or I have really forgotten it.

So what should I do now? Should I login using my user account and try changing root password?

Oops I got “Only root can specify a user name” and I lost my control over root account. So I planned to boot into single user mode. To do this reboot the Server as soon as you get the below screen press 'e'
(stands for edit) from keyboard.

After you press 'e'
from keyboard you would see a lot of text which may be clipped as per the size of your screen.

Search for the text “rhgb quiet”
and replace it with “init=/bin/bash”
without quotes.

Once done editing press 'ctrl+x'
and it will start booting with specified parameter. And you will get bash prompt.

Now check the status of root partition by running following command on the single user mode.
# mount | grep root

You may notice that root partition is reported to be 'ro'
(Read Only). We need to have read-write permission on root partition to change the root password.
# mount -o remount,rw /
Also cross check, if the root partition is mounted with read-write permission mode.
# mount | grep root

Now you can change the root password by typing the passwd command. But that is not done. We need to relabel SELinux context. If we skip relabeling the whole SELinux context we would be able to login using using password.
# passwd root [Enter New Password] [Re-enter New Password]
# touch /.autorelabel

Reboot and login again to root account and see if everything works ok or not?
# exec /sbin/init

Clear in the above image that we have successfully log-in to RHEL 7 box by resetting root password from single user mode.
The above steps clearly showed how to login to RHEL 7 and CentOS 7 machine by resetting root password from single user mode.
That’s all for now. I’ll be here again with another interesting article soon. Till then stay tuned and connected to Tecmint. Don’t forget to provide us with your valuable feedback in the comments below. Like and share us and help us get spread.
it is really good explaining method.
thanks a lot…
Thank you so much
you helped me … my server was down and I wasn’t able to login in root password
I tried many techniques to recover root password but I failed
and your topic helped me so that I want to thank you from the deep of my hart <3
Very Helpful. Screen shots are awesome ! It saved me …
Procedure works OK. The only one comment.:In grub configuration change:
root=/dev/mapper/rhel-root ro
into:
root=/dev/mapper/rhel-root rw
After boot, root partition will be already mounted as rw. Then follow procedure
– change password
– touch relabel file
– reboot
@Radkowski,
Thanks for the tip about grub configuration changes, hope it will helpful to other users..
I don’t really reply to these generally but this is very misleading and incorrect from what I really had to do to make the system boot to single user mode
@Paul,
Could you please share your guidelines with us so that other users can also benefit from your trick..
Okay guys, I need some help here. I have tried the above example several times. All new minimal install vms. Every time I do it I still cant log in. what could I possible be doing wrong. Im using Centos 7. I tried it dmaraid s way as well.
do not give password less than 8 characters.
it says ok but NOT ok.
instead of init=/bin/bash you could also just type single at the end of that line to boot to the single user mode ;-)
Please post configuring networking using nmcli in RHEL7
Good thanks for the heads up, we really forget root password and this tutorial will help. Thanks again.
The official training for RHSCA 7 describes the “change root password” procedure as below:
Append “rd.break” to the kernel command line that starts with linux16 (this will break just before control is handed from the initramfs to the actual system) (sometimes it is needed to delete also everything after “…mapper/rhel-root ro” and append here)
mount -o remount,rw /sysroot
chroot /sysroot
passwd
touch /.autorelabel
“exit” and again “exit” and you are done.
rd.break works always, this one does not work if your home is encrypted, and that is why