Choosing a partitioning scheme


The /usr directory stores the binary files, documentation, libraries, and head files of third-party applications. Some articles advise keeping /usr on the root directory in case using a separate partition interferes with the boot process, but that is rarely a problem on modern Linux systems. Some prefer instead to mount /usr/local separately instead, which places most of /usr on its own partition. The contents of /usr are reasonably stable, which means that you can gain extra security by setting its permissions as read-only. However, if you do this, you will need to add write permissions when you upgrade. Allocate 50-100GB for the /usr directory, and you should never need to worry about it again, even if you are constantly adding applications.


Spools, logs, internal mail, and other frequently used files are stored in the subdirectories of /var. This content can change quickly depending on what happens on your system. Left on the root directory, it could sometimes quickly fill the disk, causing a system crash. Putting /var on its own partition limits the amount of space these files can take over. Allocating 4GB for it should be more than enough for a workstation, but double or triple that recommendation for any kind of server.

Other Considerations

How you use your system can also affect how you partition. For example, if you are installing multiple distributions on the same system, you might want a separate boot partition, plus a minimum of 12GB per distribution – more for the ones on which you are doing serious work. You may have to edit the bootloader manually to include all the distributions.

To simplify the setup, you should use a single partition for each distribution, because having a half dozen partitions for each distribution seems guaranteed to cause confusion, to say nothing of reducing performance.

A similar setup may be useful for dual-booting with Windows or any other operating system. Additionally, consider using mkdir to create a directory on which you can store data that will be used with all operating systems. You can also mount the Windows partition from within Linux, but that risks accidental writing to Windows, which may cause problems. Watch, too, for other custom partitioning schemes, including those for different RAID configurations, which are too detailed to be explained here.

After you have created partitions and installed, you can check how they are filling up by running the df command or the free command for swap space (Figure 1). If any partition seems to approach 100 percent usage on a regular basis, you can probably steal a few gigabytes more from the /home directory.

Figure 1: Note that the first entries that df lists are virtual filesystems created as the computer starts. Similarly, free's information is a combination of RAM and virtual memory.

In the end, the partitioning scheme you choose will reflect not only your computing needs but also how security conscious you are and how much effort you are willing to make to obtain the degree of security you prefer.

Regardless of your chosen configuration, the easiest time to realize it is when you are first setting up your system. Take the time to figure out the partitioning scheme that works best for you and allow for generous margins of errors before you start Parted or GParted. That way, you will save yourself the trouble of having to resize or move partitions to get a setup that works.

The Author

Bruce Byfield is a computer journalist and a freelance writer and editor specializing in free and open source software. In addition to his writing projects, he also teaches live and e-learning courses. In his spare time, Bruce writes about Northwest Coast art. You can read more of his work at

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Disk Partitioning

    Partitioning prepares your disk to receive an operating system. We help you navigate this unfamiliar landscape safely.

  • 10 reasons for using multiple partitions
  • Ask Klaus!

    New fdisk behavior, booting Knoppix from USB, and using PHP mail() in Apache.

  • Command Line: Encrypting Partitions

    Modern installers offer the option of encryption with just a few clicks, but you might want to take control of the process. We show how to encrypt your partitions safely without sacrificing convenience.


    Klaus Knopper is the creator of Knoppix and co-founder of the LinuxTag expo. He currently works as a teacher, programmer, and consultant. If you have a configuration problem, or if you just want to learn more about how Linux works, send your questions to: klaus@linux-magazine. com

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More