CVE and update status of the FreeBSD ports tree3,295 unaddressed CVEs in 670 portsAll times are CET
Port details

filesystems/zfstools 0.3.6_3

OpenSolaris-compatible auto snapshotting for ZFS

Port info

Maintainer
bdrewery@FreeBSD.org
Packages
latest: 0.3.6_3
Upstream
up to date
Last update
to 0.3.6_3 · 5c20dfde6f
Quarterly
2026Q4: 0.3.6_3
Formerly
sysutils/zfstools until 2024-11-06
WWW
https://github.com/bdrewery/zfstools
Links
cgit · VuXML

Install

Package
# pkg install zfstools
installs 0.3.6_3 from latest; from quarterly (2026Q4) 0.3.6_3
Port
# cd /usr/ports/filesystems/zfstools && make install clean
# make -C /usr/ports/filesystems/zfstools config  # change options first
Size
9.5 KiB download · 25 KiB installed
Depends on
devel/rubygem-getoptlong 0.2.1, lang/ruby34 3.4.9_2,1
License
BSD2CLAUSE
Options
1 of 1 on in the package: DOCS
pkg-message
Shown after installing
To enable automatic snapshots, place lines such as these into /etc/crontab:

    PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
    15,30,45 * * * * root /usr/local/sbin/zfs-auto-snapshot frequent  4
    0        * * * * root /usr/local/sbin/zfs-auto-snapshot hourly   24
    7        0 * * * root /usr/local/sbin/zfs-auto-snapshot daily     7
    14       0 * * 7 root /usr/local/sbin/zfs-auto-snapshot weekly    4
    28       0 1 * * root /usr/local/sbin/zfs-auto-snapshot monthly  12

This will keep 4 15-minutely snapshots, 24 hourly snapshots, 7 daily snapshots,
4 weekly snapshots and 12 monthly snapshots. Any resulting zero-sized snapshots
will be automatically cleaned up.

Enable snapshotting on a dataset or top-level pool with:

    zfs set com.sun:auto-snapshot=true DATASET

Children datasets can be disabled for snapshot with:

    zfs set com.sun:auto-snapshot=false DATASET

Or for specific intervals:

    zfs set com.sun:auto-snapshot:frequent=false DATASET

See website and command usage output for further details.

Packages by version and architecture

latest

FreeBSD versionamd64aarch64i386
FreeBSD 160.3.6_30.3.6_3–
FreeBSD 150.3.6_30.3.6_3–
FreeBSD 140.3.6_30.3.6_30.3.6_3

quarterly (2026Q4)

FreeBSD versionamd64aarch64i386
FreeBSD 150.3.6_30.3.6_3–
FreeBSD 140.3.6_30.3.6_30.3.6_3

version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.

Unaddressed and VuXML only (0)

No unaddressed CVE and nothing reported by pkg audit for the packaged version 0.3.6_3.

Fixed (0)

No VuXML entries for this package.

Problem reports (0) · open in Bugzilla, most recently changed first

None.

Commits (33)

Bryan Drewery (bdrewery) · 0.3.6_3
filesystems/zfstools: Fix with Ruby 3.4.

It needs rubygem-getoptlong.

PR:	294720
5c20dfde6f
Robert Clausecker (fuz) · 0.3.6_2
filesystems: add new category for file systems and related utilities

The filesystems category houses file systems and file system utilities.
It is added mainly to turn the sysutils/fusefs-* pseudo-category into
a proper one, but is also useful for the sundry of other file systems
related ports found in the tree.

Ports that seem like they belong there are moved to the new category.
Two ports, sysutils/fusefs-funionfs and sysutils/fusefs-fusepak are
not moved as they currently don't fetch and don't have TIMESTAMP set
in their distinfo, but that is required to be able to push a rename
of the port by the pre-receive hook.

Approved by:	portmgr (rene)
Reviewed by:	mat
Pull Request:	https://github.com/freebsd/freebsd-ports/pull/302
PR:		281988
6e2da9672f
Muhammad Moinur Rahman (bofh) · 0.3.6_2 · as sysutils/zfstools
Mk/**ruby.mk: Switch from USE_RUBY=yes to USES=ruby

Switch from Mk/bsd.ruby.mk to Mk/Uses/ruby.mk

Notable changes are.

- Mk/bsd.ruby.mk is moved to Mk/Uses/ruby.mk.
- USE_RUBY=yes is replaced with USES=ruby.
- USE_RUBY_EXTCONF is replaced with USES=ruby:extconf.
- USE_RUBY_RDOC is replaced with USES=ruby:rdoc.
- USE_RUBY_SETUP is replaces with USES=ruby:setup.
- RUBY_NO_BUILD_DEPENDS and RUBY_NO_RUN_DEPENDS are replaced with
  USES=ruby:{build,none,run}.
- RUBY_REQUIRE isn't used anywhere, so removed.
- USES=gem now implies USES=ruby.

This is mainly the work of yasu@ at https://reviews.freebsd.org/D27863

I have just made some cosmetic changes and ran exp-run to test that the
tree is not in a BROKEN state.

Approved by:	portmgr
Differential Revision:	https://reviews.freebsd.org/D37925
18c6e18276
Stefan Eßer (se) · 0.3.6_2 · as sysutils/zfstools
Remove WWW entries moved into port Makefiles

Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.

This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.

Approved by:		portmgr (tcberner)
fb16dfecae
Stefan Eßer (se) · 0.3.6_2 · as sysutils/zfstools
Add WWW entries to port Makefiles

It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
b7f05445c0
Mathieu Arnold (mat) · 0.3.6_1 · as sysutils/zfstools
One more small cleanup, forgotten yesterday. Reported by:	lwhsu
cf118ccf87
Mark Felder (feld) · 0.3.6_1 · as sysutils/zfstools
sysutils/zfstools: Add SHEBANGFIX

Approved by:	maintainer timeout
Differential Revision:	https://reviews.freebsd.org/D9473
29e0f5107a
Mathieu Arnold (mat) · 0.3.6 · as sysutils/zfstools
http://github.com redirects to https://github.com, spare everyone a redirect.

Sponsored by:	Absolight
bbf7ef5615
Bryan Drewery (bdrewery) · 0.3.6 · as sysutils/zfstools
Update to 0.3.6.

Changes:
  - Restore snapshotting of volumes.
8edd9d818e
Bryan Drewery (bdrewery) · 0.3.5 · as sysutils/zfstools
- Update to 0.3.5

Changes:
 - Optimize coalescing of snapshots on a system with a DB.
 - Avoid division by zero when creating snapshots. [1]

PR:		203115
0f42b0c24b
Bryan Drewery (bdrewery) · 0.3.4 · as sysutils/zfstools
- Update to 0.3.4

Changes:
  - Fixes handling of multiple pools for creating multiple snapshots
    at once.
e164717b45
Bryan Drewery (bdrewery) · 0.3.3 · as sysutils/zfstools
- Update to 0.3.3

Changes:
  - Fix to not snapshot unmounted datasets in some cases.
  - Optimize snapshot creation by specifying multiple snapshots in 1
    'zfs create' execution.
  - Fix cleanup of recursive snapshots with -P.
  - Handle spaces in dataset names
e387b43add
Bryan Drewery (bdrewery) · 0.3.2_2 · as sysutils/zfstools
Force a rebuild for newer Ruby.

Pkg is not properly reinstalling this when ruby is upgraded which
causes this to break since it is left around in the old ruby
dir.

PR:	199828
8e6e8918f4
Bryan Drewery (bdrewery) · 0.3.2_1 · as sysutils/zfstools
Fix DISTNAME after USE_GITHUB changes in r384932.

PR:		199069
Pointyhat to:	bdrewery
With hat:	portmgr
fa44fda0f0
Bryan Drewery (bdrewery) · 0.3.2_1 · as sysutils/zfstools
Update USE_GITHUB so it does not require GH_COMMIT.

Using this new scheme allows only setting the _tag_ or _commit hash_ in
GH_TAGNAME and not having to know the hash for a tag.  This scheme will
download a tarball that has a different checksum than before due to a changed
directory name for extraction.

The following MASTER_SITES are provided to retain the old checksum and
directory structure (that require GH_COMMIT):
  GH -> GHL
  GITHUB -> GITHUB_LEGACY

Differential Revision:	https://reviews.freebsd.org/D748
Submitted by:	amdmi3
Reviewed by:	mat, swills, antoine, bdrewery
With hat:	portmgr
5b5a90256d
Bryan Drewery (bdrewery) · 0.3.2_1 · as sysutils/zfstools
Bump only to test INDEX building for Freshports/portsnap/indexbuild after bsd.port.mk started enforcing OSVERSION==UNAME_r
2ed1701dbc
Bryan Drewery (bdrewery) · 0.3.2 · as sysutils/zfstools
- Update to 0.3.2

Changes:
  - Fix trying to snapshot unmounted datasets
56af08d0bf
Emanuel Haupt (ehaupt) · 0.3.1 · as sysutils/zfstools
According to the Porter's Handbook (5.12.2.3.) default options must be added to OPTIONS_DEFINE. This policy has been implemented only recently that's why we have many ports violating this policy.

This patch adds the default options specified in the Porter's Handbook to
OPTIONS_DEFINE where they are being used. Ports maintained by
gnome@FreeBSD.org, kde@FreeBSD.org and x11@FreeBSD.org have been excluded.

Approved by:    portmgr (bapt)
5005b67362
Bryan Drewery (bdrewery) · 0.3.1 · as sysutils/zfstools
- Update to 0.3.1

Changes:
  * Fixed PostgreSQL support
40a4ae8370
Bryan Drewery (bdrewery) · 0.3.0 · as sysutils/zfstools
- Add NO_STAGE until validated to be safe for upcoming staging support
2324655f20
Bryan Drewery (bdrewery) · 0.3.0 · as sysutils/zfstools
- Update to 0.3.0 - Note in pkg-message that crontab needs an updated PATH as well

Changes:
  - PostgreSQL support added
161afd1b40
Bryan Drewery (bdrewery) · 0.2.2 · as sysutils/zfstools
- Update to 0.2.2 - Drop rubygem- prefix from PKGNAME as this no longer uses rubygems - Add mirror - Add setup instructions in pkg-message - Add LICENSE

Changes:
  * Scripts are now installed to /usr/local/sbin
    instead of /usr/local/bin
  * Add '-P pool' flag to `zfs-auto-snapshot` to limit
    the snapshotting to the specified pool/dataset.
  * Fix usage output
62db6b5c76
Bryan Drewery (bdrewery) · 0.2.1 · as sysutils/zfstools
- Update to my new maintainer address

Approved by:	eadler (mentor)
b70d151d98
Eitan Adler (eadler) · 0.2.1 · as sysutils/zfstools
ZFSTools is an OpenSolaris-like and compatible auto snapshotting script, which also supports auto snapshotting mysql databases.

PR:		ports/167898
Submitted by:	"Bryan Drewery" <bryan@shatow.net>
b3ef50bed6