In this article, i will explain how to solve “failed to mount /etc/fstab” boot error in Linux. The file in question contains descriptive information concerning the filesystems the system can mount automatically at boot time.
This information is static and is read by other programs on the system such as mount, umount, dump and fsck. It has six important filesystem mount specification fields: the first field describes the block special device or remote filesystem to be mounted, the second field defines the mount point for the filesystem and the third specifies the filesystem type.
The fourth field defines the mount options associated with the filesystem, and the fifth field is read by dump tool. The last field is used by fsck tool to establish the order of filesystem-checks.
Suggested Read: How to Determine and Fix Boot Issues in Linux
After editing the /etc/fstab to create an automount and rebooting my system; it booted into emergency mode showing the error message below.
I logged in as root from the interface above, and typed the following command to look through the systemd journal; then I saw the errors shown in the screen shot (indicated using red).
As you can see, the main error (failure of etc-fstab.mount unit) lead to several other errors (systemd unit dependency issues) such as failure of local-fs.target, rhel-autorelabel-mark.service etc.
# journalctl -xb
Causes of “failed to mount /etc/fstab” Error in Linux
The error above may result from any of the issues below, in the /etc/fstab file:
- missing /etc/fstab file
- wrong specification of filesystem mount options,
- failing mount points or
- unrecognized characters in the file.
To solve it, you can use the original file if you created a backup, otherwise comment out any changes you made using the “#” character (and also ensure that all the uncommented lines are filesystem mount lines).
So I opened the /etc/fstab using vi/m text editor to check for any errors.
# vi /etc/fstab
I realized I had typed an
“r” letter at the beginning of the file as shown in the screen shot above – this was recognized by the system as a special device which did not actually exist in the filesystem, thus resulting to the sequential errors shown above.
This took me several hours before noticing and fixing it. So I had to remove the letter, commented out the first line in the file, closed and saved it. After running a reboot, the system booted well again.
How to Avoid Such Issues in the Future
To avoid encountering such issues on your system, take note of the following:
Always create a backup of your config files before editing them. In case of any errors in your configs, you can revert to the default/working file.
# cp /etc/fstab /etc/fstab.orig
Secondly, check config files for any errors before saving them, certain applications offer utilities to check syntax of config files before running the application. Use these utilities where possible.
However, if you happen to get any system errors messages:
First look through the systemd journal using the journalctl utility to determine what exactly caused them:
# journal -xb
If you can’t resolve the errors in one way or the other, run to any of the millions of Linux forums on the web and post the issue there.
Do check out some useful related articles.
- A Basic Guide to Linux Boot Process
- 4 Best Linux Boot Loaders
- Manage Log Messages Under Systemd Using Journalctl [Comprehensive Guide]
- Managing System Startup Process and Services (SysVinit, Systemd and Upstart)
- Process Management in RHEL 7: Boot, Shutdown, and Everything in Between
That’s it for now. In this article, I explained how to solve the “failed to mount /etc/fstab” boot error in Linux. Once again, to avoid such issues (or if you encounter any boot issues), remember to follow the guidelines offered above. Lastly, you can add your thoughts to this guide via the feedback form below.
11 thoughts on “How to Fix “failed to mount /etc/fstab” Error in Linux”
My cloned Fedora has the same issue.
Journalctl also shows errors with /etc/fstab.
I followed your steps and in emergency mode, there is no vi and no /etc/fstab.
Can you advise how to fix it?
Hi, I have tried with the above one but it did not work. I cant able to write in /etc/fstab and while opening the /etc/sudoers file it is showing as permission denied.
Can you please help me to resolve the issue?
I am currently experiencing the same issue with an incorrect statement in my fstab file. when I use vim to edit /etc/fstab and correct the problem, I can’t save the file because it says it is a read-only file. how do I bypass this in order to save the correction made to the fstab file?
Try to edit it with sudo or root privileges:
@john, Simply shift-right-click a folder previous (like the etc folder) and choose to open as administrator (or whatever the verbiage is).
Your tutorial makes sense, however I as hoping to see you address the issue, what if your system says “cannot cd into /etc/fstab no such directory or file“?
It is an Ubuntu 14.04 with an ubuntu3.13-107 generic kernel.
We were having frequent power brownouts.
This was a practical problem that i faced before, that is why i came up with the solution. Most times you’ll encounter the failed to mount /etc/fstab or Cannot read /etc/fstab: file not found; these are the two most common errors with /etc/fstab file.
If the file is missing(say accidentally deleted), then you need to recover it, in case you have a backup you can restore the it or else manually add all the necessary auto-mount entries.
Thanks, I had typed some characters without knowing at the beginning of that file. This happens more often when you’re demoted in from a mobile device, cause you’re unsure of where the cursor is, etc.
Welcome, thanks for the feedback.
Thanks for this, one issue that i had encountered was that /var directory was moved to a different locations thus the system created a new /var directory making the fstab failed.
Yes, i tested /var, and encountered a few errors as well. You probably do not have to delete it, simply mount it into new partition and ensure that every thing works well before deleting.