The swap partition reserves space for the contents of RAM to be written to permanent storage. On ZFS, for example, one pool/partition can have multiple descendant file systems. Even then, some file systems allow their descendant file systems to be rolled back independently, so it still may not be necessary to have a separate partition for /home. Or if your operating system is installed on a file system that supports snapshots and rollbacks and you want to be able to rollback your operating system to an older snapshot without reverting the content in your user profiles. It can still be useful to have /home on a separate partition if you have a dual-boot setup and want both operating systems to share the same home directories. However, because modern Linux distributions are much better at doing in-place operating system upgrades, re-formatting shouldn’t be needed as frequently as it might have been in the past. Having /home on a separate partition makes it possible to re-format the other partitions without overwriting your home directories. This concern is no longer as significant because modern file systems support journaling. By partitioning the disk into separate file systems, one could limit the scope of the damage in the event of file system corruption. The file systems that had more write activity were much more likely to be irreversibly corrupted by a power outage than those that did not. It is much easier to change a disk quota than it is to re-partition a drive.Īnother reason for isolating /var was that file system corruption was much more common in the original version of the Linux Extended File System (EXT). Since modern drives tend to be much larger and since other means like log rotation and disk quotas are available to manage storage utilization, putting /var on a separate partition may not be necessary. One of the historical reasons for putting the /var directory on a separate partition was to prevent files that were frequently written to ( /var/log/* for example) from filling up the entire drive.
A single partition cannot be formatted with more than one type of file system. Since FAT file systems do not support access permissions, the boot loader must be on a separate file system than the rest of the operating system on modern UEFI-based computers. The Linux operating system, however, requires a POSIX-compliant file system that can designate access permissions to individual files. UEFI-based computers require that the boot loader ( which can be the Linux kernel directly) be on a FAT-formatted file system. However, modern UEFI-based computers have a different restriction that makes it necessary to have a separate partition for the boot loader. So for most people, this concern is no longer relevant. Most modern computers do not have the 1024 cylinder restriction. One of the reasons for putting the /boot directory on a separate partition was to ensure that the boot loader and kernel were located within the first 1024 cylinders of the disk. If you know more (or contradictory) historical details about the partitioning decisions that shaped the Linux operating systems used today, contribute what you know below in the comments section! Common partitions and why or why not to create them The boot partition
The following sections attempt to describe in brief some of the historical reasons for separating some parts of the file system out into separate partitions so that you can make a more informed decision when you install your Linux operating system. Or maybe you are running a database and have a small solid-state drive that would improve the database’s performance if its files are stored on the SSD. Do you have more than one storage drive? If so, you might be able to get a performance benefit by putting the write-heavy partitions ( var and swap for example) on a separate drive from the others that tend to be more read-intensive since most drives cannot read and write at the same time.
Distributions cannot know the details about how your hardware is configured or how you use your system though. Operating system distributions try to craft a one size fits all partition layout for their file systems.