Use this guide to understand how to delete from our CLI  snapshots present on a server.


This could be a workaround in situations when GUI is not available as the storage limit occupation was reached, or when a general cleaning is required


Deleting snapshots


There're different ways to delete a snapshot from CLI depending on your necessities. 

Here are some alternatives we provide for most common scenarios



When no date criteria is relevant


When no date criteria is relevant you can delete a number of  snapshots, that are going to be cancelled  whitout a specific order criteria of data or size of the snapshots present on the system.


If the interest is to filter by schedules the snapshots to be deleted. 
There's a possibility to delete a number of snapshot considering only the type of schedule

for example: deleting 100 snapshots from the daily schedule of a specific datastore, or just all the snapshot related to that schedule.


Delete a number of snapshots 


Step 1: Verify how many snapshot are present on the system

  • zfs list -r -t snapshot | wc -l

Step 2:  Delete a number of snapshots without specific criteria

  • zfs list -r -t snapshot | awk '{ print $1 }' | head -n 1000 | xargs -L1 zfs destroy

    In the example above the number is 1000, feel free to modify this as required on your system



Delete snapshots with schedule criteria


To find datastore path, use : zfs list 



Scenario 1: Delete all snapshots of a specific schedule

  • zfs list -r -t snapshot <datastore> | grep weekly |  awk '{ print $1 }' | xargs -L1 zfs destroy

    In this example  the schedule is "weekly", feel free to modify the input with the schedule of your interest


Scenario 2: Delete a number of snapshots of a specific schedule

  • zfs list -r -t snapshot <datastore> | grep weekly |  awk '{ print $1 }' | head -n 100 | xargs -L1 zfs destroy

When date is relevant


in case you're looking to delete an amount of snapshots, or a single snapshot, based on date of creation, follow the bellow steps :



Delete a single snapshot 


To find datastore path, use : zfs list 


Step 1: List the datastore snapshots

  • zfs list -r -t snapshot flash/datastores/vm

    In the above example "vm" is the datastore name


Step 2: Delete the single snapshot of your interest

  • zfs destroy flash/datastores/vm@auto:minute-by-minute-flash--datastores--vm-2021-03-10-17:48

          Remember to be logged as sudoer, otherwise you will get permission error


Delete a selected group of snapshots 



Step 1: List the datastore snapshots

  • zfs list -r -t snapshot flash/datastores/vm


Step 2: Identify the slot of snapshots you're interested to delete, and define which is the first and the last of it


In the above you will see an example of the slot of our interest in red and the first and last snapshot in yellow. Meaning we are looking to delete all the protections for the datastore "VM" between  17:48 and 17:55 of the 10/03/2021


Step 3: Delete

  • To delete gather the entire path of the snapshot you defined as first and collect the path information on the last one from the "@". With this information proceed as follows:


  • zfs destroy flash/datastores/vm@auto:minute-by-minute-flash--datastores--vm-2021-03-10-17:48%auto:minute-by-minute-flash--datastores--vm-2021-03-10-17:55


In case of errors please contact our support team