If you have forgotten your root user password for your Debian system, you can reset the password to new value, without entering the old one, by going into grub and editing the commands before booting the system.
Edit GRUB before Debian boot
During you machine boot process, you should be presented with GNU GRUB screen with countdown, before the default boot option is activated.
Press any key during the countdown period stop the boot process, and then press e key to edit the commands before booting.
One you have entered into editing mode, find the line starting with linux, followed by /boot/vmlinuz-*, and containing section with root=UUID=.
Line should be towards the end, usually two lines before the final line.
On the end of that line, in most case after ro quiet, add one of the following two: init=/bin/bash
or init=/bin/sh
, as shown on picture below.
After you have added the init value, press Ctrl+x or F10 key to boot the with the selected options.
Debian should now boot to single user mode, with the root filesystem mounted in read-only mode.
You need to remount it to read-write mode with the following command:
mount -n -o remount,rw /
.
After that you can use passwd
command to change the root password to a new value.
Type passwd
to be asked for a new password, and then reenter the new password again, once asked to retype it, and you should then be presented with following message:
passwd: password updated successfully
You can now reboot your machine, and use the new root password on your system.
Alternative method
If this method is not working for your, you can try to boot the system from a LiveCD, and then mount the partition holding your /etc, and edit the shadow file.
In the shadow file, find the line starting with root:, and change the hashed password between “root:” and next “:” to just “!”.
Shadow file should initially look something like this:
root:random_characters_of_hashed_password:12345::12345:1:::bin:*:12345:0:12345:1:::
After the change it should look something like this:
root:!:12345::12345:1:::bin:*:12345:0:12345:1:::
This allows you to get access to the system with no root password, when you access recovery mode in Advanced options for Debian GNU/Linux.
Press any key during the countdown period stop the boot process, and then select Advanced options for Debian GNU/Linux.
After you selected Advanced options, select to boot recovery mode.
After you press Enter to boot recovery mode, you will be logged as root, and can just issue passwd
command to change your root password.