Forum OpenACS Development: Re: Partitioning with RH8.0

Posted by Frank N. on
With FreeBSD I have standardized on a six partition layout for servers and most other machines as well. Here are the details and the reasoning as to why I do as I do.

*) / needs its own partition, as it cannot be part of a Vinum/RAID plex on FreeBSD. This doesn't apply to Linux AFAIK, but I mirror the rest of the partitions, save for swap.

*) Swap is a no brainer, must have its own partition.

*) There is a significant performace difference between disk cylinders on the disk located near the rim as opposed to those near the center. Thus heavily used parts of the filesystem ought to be located near the edge (first) on the disk. Also a busy part of the filesystem may benefit from not sharing the space with large number of essentially static files due to fragmentation and subsequently longer seek times (this may be a non-issue on multi-disk setups).

Ie. on FreeBSD I wouldn't want the ports collection, essentially ~500MB of thousands of small files, to share the DB filesystem. Thus /var needs a separate partition than /usr.

*) Also making /usr a separate partition allows you to mount it read+execute only on production machines. This may give you a small security advantage.

*) /home cannot be read only, so it needs to be separate as well.

*) By definition everyone and anything can write to /tmp, thus it is the most likely candidate for a disk-filling DoS attack/accident. The least damage to most parts of the machine will be done, if /tmp cannot steal the space from the other sections mentioned above.

So I usually use a partition layout looking like this (in order from the rim):


/ and /tmp are mostly fairly small. /home is essentially empty on a server, and I have yet to run out of space on any machines I have made.