How To Automount File Systems on Linux

Today I’m going to show you how to automatically mount a drive at boot time in Linux. My laptop have one SSD and one mechanical drive. I install operating systems on SSD and store files on mechanical drive. So often times I need to mount the mechanical drive in file manager manually to access my mp3 and video files. Mounting drive manually is just a waste of time. So I’m going to show you an easy way to automount drive in Linux.

Step 1: Get the Name, UUID and File System Type

Open your terminal, run the following command to see the name of your drive, its UUID(Universal Unique Identifier) and file system type.

sudo blkid

sudo blkid command

In the output of this command, the first column is the name of your drives. The second column is the label of the drive (if you set a label for it) and the third column is the UUID of your drives.

First you need to know the name of the drive that is going to be automatically mounted. For example, the name of the drive that is going to be automatically mounted on my computer is /dev/sdb9.

Then you need to know it’s UUID and file system type. As you can see the UUID of /dev/sdb9 is eb67c479-962f-4bcc-b3fe-cefaf908f01e and the file system of /dev/sdb9 is ext4 which is the standard file system in Linux.

Step 2: Make a Mount Point For Your Drive

We are going to make a mount point under /mnt directory. Enter the following command,

sudo mkdir /mnt/<name-of-the-drive>

For example, I issued the following command:

sudo mkdir /mnt/sdb9

Step 3: Edit /etc/fstab File

Run the following command to edit the /etc/fstab file. Nano is a command line editor on Linux.

sudo nano /etc/fstab

We need to append one line of code at the end of the file. The format of this line of code is as follows:

UUID=<uuid-of-your-drive>  <mount-point>  <file-system-type>  <mount-option>  <dump>  <pass>

Note that you need to separate these items with Tab key. For example, I added the following line to the end of /etc/fstab.

UUID=eb67c479-962f-4bcc-b3fe-cefaf908f01e  /mnt/sdb9  ext4  defaults  0  2

/etc/fstab automount

If you want to automount a NTFS file system, here is an example.

UUID=<uuid-of-ntfs-file-system>   /mnt/ntfs   ntfs   defaults  0  2

Save and close the file. Then reboot your system to see the if it works. So that’s how you automount a file system in Linux.

Some Explanation

For swap partitions, the mount point field should be specified as none.

The defaults mount option will give users read and write access to the file system.

The value of dump field is usually zero.

The pass field is used by the fsck program to determine the order in which filesystem checks are done at reboot time. As you can see in this file, the value of the pass field for the root file system is 1. Swap partitions do not need to be checked and the value for them is zero. All other file systems should have a value of 2. So I set the pass value as 2 for my drive.

Rate this tutorial
[Total: 3 Average: 5]

11 Responses to “How To Automount File Systems on Linux

  • Robert Cotterman
    4 months ago

    Hello, this works beautifully minus one problem, i can’t write to the volumes without using sudo or some other form of root access

    • You can run the following command to grant read, write and execute permissions. Replace username with your real username and mount-point with the path of mount point.

      sudo setfacl -R -m u:username:rwx mount-point
      • Robert Cotterman
        4 months ago

        Thank you, i will try this once i am finished repairing the pc

  • Thank you, this technique has worked very well for me. I think it is also worth mentioning that if there is an error or typo in fstab, it will boot in emergency mode, at least in my case using Debian 10.

  • I also have my OS(ubuntu) on an SSD drive and had the same problem, I opened nautilus from the terminal with root access to open and edit the file with GUI text editor, entered a carriage return, then entered lines as instructed (NTFS file systems) saved the fstab , ^C out of nautilus and reboot then os failed to boot and entered emergency mode from which I deleted the added lines and reboot again, where do you think the problem is? editing the text with graphical tools or opening it with nautilus? cause I’m sure I didn’t make any mistakes typing the directories and device names

  • Kenneth
    1 month ago

    The trouble with this method is that many people (me!) have a lot of usb drives for various purposes. Trying to maintain a fstab with a listing for each of them would be impossible, not to mention creating all those different mountpoints.

    Better to let udev handle it. If you give the usb drive partitions a label, it will create “/media//

  • Kenneth
    1 month ago

    The number of usb ports isn’t really the issue with regard to what I said. I didn’t suggest I had dozens of USB drives all plugged in at once. Even if I had only one port, and I plugged in my USB drives one at a time ( I have many! ), each partition on each drive would have its own UUID, and would need its own individual entry in fstab. If I was *sure* no two would be plugged in at the same time, I could escape with just one mountpoint, although any programs and scripts that referenced it might get confused.

    On the other hand, with udev, you just give each partition it’s own label, and all would be taken care of. No fstab changes needed.

    • By default, when you insert an USB drive to a Linux computer, you need to click the name of the drive in file manager to mount it.

      This article assumes the USB drive is plugged in before the computer boots, adding a fstab entry would automatically mount it. This is useful when the Linux system doesn’t have a GUI or does’t have a monitor connected to it, like a Raspberry Pi.

  • Pierre-Yves
    3 weeks ago

    Didn’t work for mounting volumes on my RAID5 array. Rebooted in emergency mode where I had to remove the /etc/fstab additional line. Volumes automatically mount when I click on them in Nautilus. Is there a way to see how they are mounted in order to reproduce this in /etc/fstab? (Not a big deal, but until I manually mount them in Nautilus, Plex server doesn’t see the files.)

    My mdadm conf file has the following line:

    ARRAY /dev/md/pv00 metadata=1.2 UUID=f28ef44a:f135a3ed:6314af35:6f68c74c name=nasdcde96:pv00

    What should the /etc/fstab line be ?

Leave a Comment

  • Comments with links are moderated by admin before published.
  • Your email address will not be published.
  • Use <pre> ... </pre> HTML tag to quote the output from your terminal/console.
  • Please use the community (https://community.linuxbabe.com) for questions unrelated to this article.
  • I don't have time to answer every question. Making a donation would incentivize me to spend more time answering questions.