Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ZFS-SNAPSHOT(8)		    System Manager's Manual	       ZFS-SNAPSHOT(8)

NAME
       zfs-snapshot -- create snapshots	of ZFS datasets

SYNOPSIS
       zfs snapshot [-r] [-o property=value] dataset@snapname

DESCRIPTION
       All  previous modifications by successful system	calls to the file sys-
       tem are part of the snapshots.  Snapshots are taken atomically, so that
       all snapshots correspond	to the same moment in time.  zfs snap  can  be
       used  as	 an  alias  for	 zfs snapshot.	See the	"Snapshots" section of
       zfsconcepts(7) for details.

       -o property=value
	   Set the specified property; see zfs create for details.

       -r  Recursively create snapshots	of all descendent datasets

EXAMPLES
   Example 1: Creating a ZFS Snapshot
       The following command creates a snapshot	named yesterday.   This	 snap-
       shot is mounted on demand in the	.zfs/snapshot directory	at the root of
       the pool/home/bob file system.
	     # zfs snapshot pool/home/bob@yesterday

   Example 2: Creating and Destroying Multiple Snapshots
       The  following  command	creates	snapshots named	yesterday of pool/home
       and all of its descendent file systems.	Each snapshot  is  mounted  on
       demand  in  the .zfs/snapshot directory at the root of its file system.
       The second command destroys the newly created snapshots.
	     # zfs snapshot -r pool/home@yesterday
	     # zfs destroy -r pool/home@yesterday

   Example 3: Promoting	a ZFS Clone
       The following commands illustrate how to	test out  changes  to  a  file
       system, and then	replace	the original file system with the changed one,
       using clones, clone promotion, and renaming:
	     # zfs create pool/project/production
	       populate	/pool/project/production with data
	     # zfs snapshot pool/project/production@today
	     # zfs clone pool/project/production@today pool/project/beta
	       make changes to /pool/project/beta and test them
	     # zfs promote pool/project/beta
	     # zfs rename pool/project/production pool/project/legacy
	     # zfs rename pool/project/beta pool/project/production
	       once the	legacy version is no longer needed, it can be destroyed
	     # zfs destroy pool/project/legacy

   Example 4: Performing a Rolling Snapshot
       The following example shows how to maintain a history of	snapshots with
       a  consistent  naming scheme.  To keep a	week's worth of	snapshots, the
       user destroys the oldest	snapshot, renames the remaining	snapshots, and
       then creates a new snapshot, as follows:
	     # zfs destroy -r pool/users@7daysago
	     # zfs rename -r pool/users@6daysago @7daysago
	     # zfs rename -r pool/users@5daysago @6daysago
	     # zfs rename -r pool/users@4daysago @5daysago
	     # zfs rename -r pool/users@3daysago @4daysago
	     # zfs rename -r pool/users@2daysago @3daysago
	     # zfs rename -r pool/users@yesterday @2daysago
	     # zfs rename -r pool/users@today @yesterday
	     # zfs snapshot -r pool/users@today

SEE ALSO
       zfs-bookmark(8),	    zfs-clone(8),     zfs-destroy(8),	  zfs-diff(8),
       zfs-hold(8), zfs-rename(8), zfs-rollback(8), zfs-send(8)

FreeBSD	14.3			March 16, 2022		       ZFS-SNAPSHOT(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=zfs-snapshot&manpath=FreeBSD+14.3-RELEASE+and+Ports>

home | help