Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Jan 2013 11:22:30 -0500
From:      Paul Kraus <paul@kraus-haus.org>
To:        FreeBSD Mailing List <freebsd-questions@freebsd.org>
Subject:   Re: Starting with ZFS on fresh install
Message-ID:  <4982641D-5691-4CF3-8385-6A836E4AC2A3@kraus-haus.org>
In-Reply-To: <201301281539.58864.jmc-freebsd2@milibyte.co.uk>
References:  <BLU0-SMTP4490AA5B4BAE0C642F7D64593180@phx.gbl> <201301281539.58864.jmc-freebsd2@milibyte.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 28, 2013, at 10:39 AM, Mike Clarke wrote:

> If you're going to be using ZFS then you'll probably be better off not =
having=20
> separate partitions and letting ZFS manage space allocation if you =
want to=20
> limit the size of /var or any other part of the system,

You can manage space within a ZFS pool, regardless of whether you give =
the zpool whole disks or a partition.

rootpool                 6.13G  56.4G    31K  none
rootpool/do-not-remove     31K  1024M    31K  none
rootpool/root            5.01G  56.4G  5.01G  /
rootpool/tmp             60.5K  56.4G  60.5K  /tmp
rootpool/var              111M  56.4G   111M  /var

Shows a system with a rootpool and within the rootpool three separate =
fielsyetms:

/ (root)
/var
/tmp

You can control space usage with the zfs quota property.

Note the rootpool/do-not-remove daatset. This has a quota and =
reservation of 1 GB. It's purpose is to permit recovery in case the =
zpool is accidentally filled. ZFS requires *some* free space top process =
file / directory remove operations. If the zpool is completely filled =
you will NOT be able to remove anything to free up space. By having a =
dataset with a quota and reservation of 1 GB, that space is already =
marked as used so it will not be allocated. If the remainder of the =
zpool fills, then you can quiet the system (so running processes don't =
steal the space you are about to free up), change the quota / =
reservation (I like going down to 512 MB), and then remove some files / =
directories to free up space.=20

Note that the zpool itself (rootpool) is NOT used as a dataset and is =
NOT mounted. My experience with ZFS under Solaris taught me that while =
you *can* use that dataset, if you have any child datasets (and any =
other datasets created will, by definition, be children of the rootpool) =
you will end up with hierarchical datasets. This means that future =
operations on datasets will have to take place in very specific order =
(such as mounting and un mounting). By avoiding hierarchical datasets =
(that are actually used) you avoid that complexity.

--
Paul Kraus
Deputy Technical Director, LoneStarCon 3
Sound Coordinator, Schenectady Light Opera Company




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4982641D-5691-4CF3-8385-6A836E4AC2A3>