[PC-BSD Dev] Subject: Re: 9.0 Recommendation: partitioning

Roger Marquis marquis at roble.com
Sun Sep 26 10:42:53 PDT 2010

Andrei Kolu wrote:
> In case of power failure during some write operations your filesystem
> would be inconsistent, that means after restart your filesystem(s)
> would be READ-ONLY. Now imagine that you got single / partition and
> can't start fsck placed in /stand, you have to start your system from
> livecd or something and hope that your partition scheme is not ruined.

Journalling is a better protection against boot-time fsck.  At the very
least ufs with soft-updates should be the default filesystem.

But what Andrei is advocating here is a read-only root.  That is not the
default now and, to the best of my knowledge nobody is seriously
advocating that as a PC-BSD default.  To create a read-only root you'd
need to partition at least /tmp, /usr, and /var, and that would create
more issues than it would solve because:

  * Every filesystem that has to be mounted at boot is a point-of-failure.

  * Unless you also mounted /home you'd need to symlink /usr/home.  This
    adds another one or two points-of-failure as well as the path issues
    that to accompany directory symlinks.

  * An unmountable /usr is worse than an an un-fsck'ed root partition
    for all but the most experienced end-users.

  * Every intra-disk partition reduces the free space of all remaining
    partitions, and increases the risk of diskfull partitions.

> Disk full trouble from servers of workstations? With single /
> partition your system would be unusable if it is full but with
> multiple partitions you are able to use it and at least delete some
> files.

Hasn't been my experience but then my systems have all used journalling
filesystems for several years now.  Plus, anyone who knows how to login
to a diskfull system with multi-intra-disk partitions probably also knows
how to "mount -o rw /".

> Also remember /usr partition  where /usr/home directory with
> all users files are stored. Now recall quota feature. You don't want
> to set quota for your system processes, do you? Quota is set by
> partition.

If you need quotas you need partitions no question, however, few
end-users need quotas.  If you install non-journalling filesystems you
may also benefit from partitions, at the expense of increasing the
chances you'll experience inconsistent non-root filesystems.

Bottom line, partitions within a disk create more points of failure than
they eliminate.  This is statistics 101.  IMO, the defaults should
reflect the fact that diskfull issues are more common than quotas and
fsck issues for the average user.  The keywords here are "probability"
and "average user".

More importantly, and the bottom line for PC-BSD, end-users who
experience diskfull problems due to unnecessary partitioning or fsck
issues due to unjournalled filesystems are more likely to move to an OS
with more intelligent defaults.

Roger Marquis

More information about the Dev mailing list