Trafeoffs of aggressive filesystem partitioning

Most systems administrators will tell you it’s important to partition your install into anywhere from 4-7 discrete patitions (or slices if you’re in the BSD camp). While I think it’s good advice in certain cases, the headaches of mis-guessing disk space requirements have bitten me so many times that I’ve grown jaded and only create a new partition for a filesystem if there’s a really good reason such as:

1. Performance
2. Preventing an application, user, or logging subsystem from filling up the whole disk
3. To keep the operating system and data separate (which eases upgrades, restores, etc…)
4. If I have multiple disks or RAID arrays and can’t or don’t want to use an LVM

In my personal experience partitioning a disk into root, boot, var, home, usr/local, tmp, var/mysql, etc… is generally overkill and has caused me far more headaches than it has prevented problems. Eventually you end up having one filesystem with gigabytes free that you really need for another filesystem which leads you to do a dump-repartition-restore. And that’s always a hassle if the machine is in use by real users during business hours so you end up having to work a night or weekend.

So, while I still like to have 4 partitions on heavy duty production servers (root, var, app-or-user-data, swap), I no longer bother with desktop, development, or light use production servers. I prefer the ultra simple 2 partition scheme of root and swap and since I started doing that 3 years ago I’ve had to do far fewer dump-repartition-restores.

This entry was posted in FreeBSD, Linux, Systems Administration. Bookmark the permalink.

2 Responses to Trafeoffs of aggressive filesystem partitioning