Ubuntu: How to Change the Root Password

Updated: January 28, 2024 By: Guest Contributor Post a comment

Ubuntu, like other Linux distributions, is known for its robust security model, which is significantly bolstered by the use of passwords for user accounts, including the root account. Despite security advice against routinely using the root account in favor of ‘sudo’, there might still be instances where one needs to change the root password. This tutorial will walk you through the step-by-step process on how to securely alter the root password in Ubuntu, covering methods suitable for beginners as well as advanced users.

Understanding Root User in Ubuntu

In Ubuntu, the ‘root’ user is the superuser with overarching access to all commands and files. This user has the capabilities to perform any action on the system, hence why the access to this account is often discouraged for regular tasks to avoid accidental system-wide changes or security issues. By default, the root user password is locked in Ubuntu, encouraging the use of ‘sudo’ command where users periodically grant administrative privileges to their own user accounts.

Unlocking the Root Account

Before you proceed with changing the root password, you first need to unlock the root account if it hasn’t been done previously. Here is how you can unlock it:

sudo passwd root

After executing this command, you will be prompted to enter a new UNIX password for root user and then to retype it for verification. Ensure to choose a strong password. Once successfully completed, the root account will be unlocked.

Changing the Root Password

Once the root account has been unlocked, you can change the password at any time. Here’s how to do it:

sudo passwd root

Again, you will be asked to enter the new password twice. Be sure to remember it, as there will be no way to use the system as root without it.

Using the ‘sudo’ Command

Using ‘sudo’ is often the preferred way of obtaining root privileges as it keeps a log of root access and actions. To use sudo to change the root password you would execute the following command:

sudo passwd

And follow the onscreen instructions to change the root password.

Recovering a Lost Root Password

In case you’ve forgotten the root password, you can recover it as follows. First, reboot your system and hold down the Shift key after the BIOS loads to bring up the GRUB menu. Highlight the Ubuntu menu entry and press ‘e’ to edit it. Find the line starting with ‘linux’ and append ‘rw init=/bin/bash’ at the end of the line, then press F10 to boot. Now, you will enter a root shell environment where you can reset the password:

passwd root

After typing a new password, reboot the system by pressing Ctrl+Alt+Del. You should now be able to use the new root password.

Switching to the Root User

If you’re performing multiple tasks as root, it may be useful to switch to the root user. This can be done by using the command:

su -

You will be prompted to enter the root password and you will then be given a root shell.

Advanced: Automating Password Changes

For more advanced users, who handle many Ubuntu servers, automating the root password change can be accomplished through Ansible, a powerful automation tool. Using an Ansible playbook, you can create a script that will reach out to all your servers and change the root password. The playbook could look something like this:

---
- hosts: all
  become: yes
  tasks:
  - name: Change root password
    user:
      name: root
      password: '{{ new_password|password_hash('sha512') }}'

In the above playbook example, replace ‘{{ new_password }}’ with a variable that contains your new password or a vault-encrypted string if you’re using Ansible Vault to encrypt passwords.

Conclusion

Changing the root password on Ubuntu is a straightforward task, but one which should be handled with care to maintain system security. Always use the ‘sudo’ approach whenever possible, only switch to the root user when absolutely necessary, and remember to employ strong, unique passwords. By following the provided guidelines, you can ensure that your Ubuntu system remains secure and under proper administrative control.