Re: Best Practices Survey: Disk Partitioning

From: Juha Laiho (
Date: 09/08/02

From: Juha Laiho <>
Date: Sun, 08 Sep 2002 08:32:01 GMT said:
>>> Do current practitioners recommend a separate partition for /tmp ? Does
>>> it make sense to put /var /usr/ and /usr/local (and possibly /usr/src)
>>> on separate partitions?
>>> I'm already aware of the usefulness of a /home partition. :)
>True however there are obviously still going to be some good *general*
>practices, and if anyone has any usage-specific stipulations, suggestions
>along those lings would obviously be welcome as well.
>I mean I know *I* am not looking for a
>partition-guide-to-end-all-partition-guides posting here, and I doubt the
>original poster was either.

Ok, let's start with something.

- separate read/write and read-mostly/read-only filesystems
- minimise root fs; minimise writes to root fs
- disallow public writes to root fs

- in events of disaster, partitions with the most disk write
  activity are the most prone to corruption
  => try to get as much static (read-only) data off from the
     actively changed filesystems to minimise the loss in
  => minimise size of actively changed filesystems to speed
     up post-disaster recovery
- a minimally sized root fs is less prone to corruption, and
  in the case of corruption fsck has better chances to succeed
  - minimising changes on root fs help this, too
  => tolerant root fs with necessary tools to resue rest of the
     system after a disaster
- filling up root fs can cause loss of log information and
  loss of configuration data

So, fs list:

The /boot is more or less optional; I see it mostly beneficial when
sharing the machine with another OS; it's then possible to just
allocate a minimalistic /boot on the boot drive, and have rest of
the linux installation on a separate drive.

For more resilience, add

(same rationale as with /tmp; in this case check also other ways
 users can maliciously fill up /var)

For mail servers, add
(and possibly add also /var/spool/imap, if using Cyrus imapd)

(again to restrict most disk activity to a more limited partition,
 also to segregate disk consumption by mail content and mail logs)

For news servers, add

For web cache servers, add some fs for web cache content
(/var/spool/squid, f.ex.)

Then the next question is, how these should be located on a disk or
shared across disks (when having the luxury of multiple independent
disks -- and note that IDE drives sharing a channel are not independent,
whereas SCSI drives sharing a channel are)

I tend to group the actively updated filesystems as closely together
as I can, with read-mostly filesystems residing on both sides of this
"write zone". This might just be a superstition, though, but I expect
some added performance by minimising the average seek distance.

>From the list above, the various filesystems beneath /var/spool are
likely to benefit from a disk of their own (if the servers are really

Wolf  a.k.a.  Juha Laiho     Espoo, Finland
(GC 3.0) GIT d- s+: a C++ ULSH++++$ P++@ L+++ E- W+$@ N++ !K w !O !M V
         PS(+) PE Y+ PGP(+) t- 5 !X R !tv b+ !DI D G e+ h---- r+++ y++++
"...cancel my subscription to the resurrection!" (Jim Morrison)