Ubuntu – What are the advantages and disadvantages of mounting various directories on separate partitions


While installing Ubuntu with the "something else" option, I found out that there are many folders that can be mounted on separate partitions, as you can see in the image below.

many folders can be mounted on separate partitions

So what are the advantages and disadvantages of mounting these folders(or directories) on separate partitions?

Specifically the directories are

  1. /boot
  2. /home
  3. /tmp
  4. /usr
  5. /var
  6. /srv
  7. /opt
  8. /usr/local

Best Answer

Long long time ago...

... There was a time when people used to install Linux and configure it by hand for their specific needs. Some of this is true even today for servers. The choices you see in gparted are some of the popular ones for those who had very different needs as compared with the average desktop users, the intended audience for Ubuntu desktop.

Let us take these one at a time. I will skip the ones I don't know much about.

  1. /boot there was a time when the Linux file system was fragile and hard drives were small. People were afraid that the hard drive would fill up or get corrupted and Ubuntu won't boot. Keeping the kernels in a separate partition helped the system to boot when other things went wrong. In those days Linux users used to compile their own kernel and clean up old ones. As recently as with Ubuntu 16.04 LTS, the Software Updater app installed the latest kernel update but did not remove the old kernels. As a result, a small /boot partition filled up with old kernels and the system stopped booting unless one cleaned it periodically. See what happened if you had a separate /boot partition and forgot to clean it regularly: How do I free up more space in /boot? With Ubuntu 18.04 LTS the Software Updater app not only keeps the system up-to-date, but also removes the old kernels. It keeps the last two kernels in case the latest kernel has some issues and one needs to revert back the previous one.
  2. On the other hand, if you want to encrypt the / partition (to safeguard the secret software you are working on), you will need a separate (and unencrypted) /boot partition. Otherwise the system won't boot. Similarly, if you have a RAID drive, keeping /boot in a non-RAID partition may be useful. Many people thinks having a separate /boot partition is a very good idea for these and other reasons.
  3. /home Keeping home in a separate partition still makes some sense. This folder/partition has your personal files and having it in a separate partition allows you to format / and reinstall Ubuntu while keeping your files untouched. Recent versions of the Ubuntu installation software includes a choice of update from DVD/USB. This option keeps /home intact even it it is not on a separate partition. If you run out of space in your primary drive with / partition. You may want to add a new drive and create a single /home partition in the new drive.
  4. /tmp is where temporary files go. If you are running a server that creates large temp files, they may fill up all the disk space and bring your server to a halt. Keeping it in a separate partition will only fill up that partition and may stop the process that was creating the big temp files but will not stop the rest of the system. I am told it is easier to deal with a filled up /tmp partition than a temporary folder under / partition.
  5. /usr/, /opt/, and /usr/local are all places where programs and apps are kept under different conditions. If you develop software for Linux, it may make sense to keep these in separate partitions, so that if you reinstall Ubuntu, you won't delete the programs you have written or have been working on.
  6. Keeping /opt/ and /usr/local in separate partition also makes sense if you install programs from source (your own or from somewhere else) and want to use them in another distribution (say Red Hat) installed in the same computer in its own partition. Then both the distributions, Ubuntu and Red Hat can share the /opt and /usr/local partitions. (Thanks Rmano!)
  7. /srv and /var are particularly useful as separate partitions if you run servers or develop web pages. For the average desktop user these folders don't take up much space and does not hold anything that is of value to the user. For a web developer losing /var/www may mean losing her job.

To be sure, these are not the only directories one can mount as partitions. In Linux, one can mount a partition as any folder anywhere. Partitions are often mounted as sub-directories of /mnt/ and /media.

Hope this helps