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]a| dataset@snapnamea|

DESCRIPTION
     Creates  a  snapshot  of  a  dataset  or  multiple  snapshots  of different
     datasets.

     Snapshots are created atomically.	That is, a snapshot is a consistent  im-
     age of a dataset at a specific point in time; it includes all modifications
     to the dataset made by system calls that have successfully completed before
     that  point in time.  Recursive snapshots created through the -r option are
     all created at the same 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 snapshot 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 ports 15.quarterly	  July 11, 2022 		 ZFS-SNAPSHOT(8)

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

home | help