One of the more alarming errors you may encounter on a Linux system is:
sudo: unable to stat /etc/sudoers: No such file or directory
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
This issue effectively locks you out of administrative (sudo
) privileges and can cause panic — but don’t worry. This guide will walk you through the causes, implications, and solutions for this error.
What Does This Error Mean?
The file /etc/sudoers
defines which users can run commands with sudo
privileges. If sudo
can’t read this file, it doesn’t know who is allowed to execute administrative commands. As a safety feature, it then denies all sudo
access.
The message:
- “unable to stat” means the file doesn’t exist or can’t be accessed.
- “no valid sudoers sources found” means there are no fallback configurations.
- “unable to initialize policy plugin” confirms that sudo can’t proceed.
Common Causes
- Accidental deletion or renaming of
/etc/sudoers
. - Corruption of the file due to a misconfigured edit.
- Wrong permissions or ownership on the sudoers file.
- Filesystem issues (e.g., disk errors or a read-only root filesystem).
How to Fix the Error
Since you can’t use sudo
, you’ll need root access without sudo. There are a few ways to achieve this:
Option 1: Use the Root Account (If Enabled)
If the root account is enabled:
- Switch to the root user:
su -
- Enter the root password.
- Recreate or fix the
/etc/sudoers
file (see below for steps).
Many systems like Ubuntu have the root account disabled by default. If
su
doesn’t work, try the recovery options below.
Option 2: Boot into Recovery Mode
- Reboot the machine.
- At the GRUB menu, select Advanced Options > (recovery mode).
- Choose root from the recovery menu to open a root shell.
- Remount the filesystem in read-write mode:
mount -o remount,rw /
- Fix the sudoers file as shown below.
Option 3: Use a Live CD/USB
If the above doesn’t work:
- Boot from a live Linux USB/DVD.
- Open a terminal and mount your system partition:
sudo fdisk -l # Identify your Linux partition (e.g., /dev/sda1)
sudo mount /dev/sda1 /mnt
sudo chroot /mnt # Enter the system environment
- Now, you have root access and can fix
/etc/sudoers
.
Fixing the /etc/sudoers
File
Once you have root access, follow these steps:
Step 1: Restore or Recreate the File
If the file is missing, recreate it with safe defaults:
echo 'Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
root ALL=(ALL:ALL) ALL' > /etc/sudoers
Alternatively, copy from a similar system or backup:
cp /etc/sudoers.bak /etc/sudoers
Step 2: Set Correct Permissions
The /etc/sudoers
file must have the correct permissions:
chmod 440 /etc/sudoers
chown root:root /etc/sudoers
Step 3: Use visudo
to Validate
visudo
checks the syntax before saving to avoid misconfigurations.
visudo
This opens the sudoers file in a safe editor. If it opens successfully, save and exit. If you manually edited the file earlier, use visudo -c
to check:
visudo -c
If everything is OK, you should see:
/etc/sudoers: parsed OK
Reboot and Test
After fixing, reboot:
reboot
Now test:
sudo whoami
It should return:
root
Preventive Tips
- Always use
visudo
to edit the sudoers file. - Keep a backup of a working sudoers file:
cp /etc/sudoers /etc/sudoers.bak
- Be cautious with permissions — 440 and owned by
root:root
is non-negotiable. - Consider enabling the root account temporarily if you’re experimenting with sudoers:
sudo passwd root
Conclusion
The “unable to stat /etc/sudoers” error can seem fatal, but with recovery access and a little care, you can restore full administrative functionality. Whether by restoring the file or fixing permissions, the key is careful access and verification using visudo
.
If you’re managing critical systems, consider automating regular backups of your configuration files — it can save a lot of trouble down the line.