zfs snapshot_limit is not respected

Ultima ultima1252 at gmail.com
Fri Feb 3 15:27:50 UTC 2017


Hey Gary,

You are probably right. Do you know how to "lock" this property by chance?
I'v read this exact line several times trying to understand the exact
meaning. The "user is allowed to change the limit" I *think* is referring
to the zfs allow command. The problem is that I checked the dataset and it
is showing no permissions granted to a user. So I guess user in this case
is also including the root user, but how does one lock the property from
root? I keep going through the manpage looking for something I may have
missed but keep coming up empty.

Thanks for replying,
Ultima

On Fri, Feb 3, 2017 at 7:42 AM, Gary Palmer <gpalmer at freebsd.org> wrote:

> On Thu, Feb 02, 2017 at 09:31:58PM -0500, Ultima wrote:
> > I recently moved some data on a box with limited space. I decided I
> should
> > limit the snapshots so that space would not become an issue. I just check
> > back a week later to find out the box is hitting the borderline. Doing I
> > quick check I realized that the snapshot_limit is not being respected.
> >
> > # uname -a
> > FreeBSD R1 11.0-STABLE FreeBSD 11.0-STABLE #17 r312232: Sun Jan 15
> 10:59:10
> > EST 2017     root at S1:/usr/src/11-STABLE/obj/usr/src/11-STABLE/src/sys/
> MYKERNEL
> >  amd64
> >
> > # zfs create zroot/bhyve/test
> > # zfs set snapshot_limit=0 zroot/bhyve/test
> > # zfs snapshot zroot/bhyve/test at 1
> >
> >
> > # zfs snapshot zroot/bhyve/test at 2
> > # zfs snapshot zroot/bhyve/test at 3
> > # zfs list -t snapshot | grep zroot/bhyve/test
> > zroot/bhyve/test at 1                                           0      -
> >  88K  -
> > zroot/bhyve/test at 2                                           0      -
> >  88K  -
> > zroot/bhyve/test at 3                                           0      -
> >  88K  -
> > # zfs get all zroot/bhyve/test | grep snapshot
> > zroot/bhyve/test  usedbysnapshots       0                      -
> > zroot/bhyve/test  snapshot_limit        0                      local
> > zroot/bhyve/test  snapshot_count        3                      local
> >
> > Also wanted to verify 0 was not being mistaken for none.
> >
> > # for snapshot in `zfs list -t snapshot | grep zroot/bhyve/test | awk
> > '{print $1}'`; do zfs destroy $snapshot ; done
> >
> > # zfs get all zroot/bhyve/test | grep snapshot
> > zroot/bhyve/test  usedbysnapshots       0                      -
> > zroot/bhyve/test  snapshot_limit        0                      local
> > zroot/bhyve/test  snapshot_count        0                      local
> >
> > # zfs set snapshot_limit=1 zroot/bhyve/test
> > # zfs snapshot zroot/bhyve/test at 1
> > # zfs snapshot zroot/bhyve/test at 2
> > # zfs snapshot zroot/bhyve/test at 3
> > # zfs get all zroot/bhyve/test | grep snapshot
> > zroot/bhyve/test  usedbysnapshots       0                      -
> > zroot/bhyve/test  snapshot_limit        1                      local
> > zroot/bhyve/test  snapshot_count        3                      local
> >
> >
> > Also tested on head
> > FreeBSD S1 12.0-CURRENT FreeBSD 12.0-CURRENT #26 r312388: Wed Jan 18
> > 12:38:52 EST 2017
> > root at S1:/usr/src/head/obj/usr/src/head/src/sys/MYKERNEL-NODEBUG
> >  amd64
>
> Hi,
>
> I suspect this line from the manpage is key:
>
> The limit is not enforced if the user is allowed to change the limit
>
> Regards,
>
> Gary
>


More information about the freebsd-fs mailing list