zfs−prune−snapshots − Remove snapshots from one or more zpools that match given criteria
zfs−prune−snapshots [OPTIONS] <time> [[DATASET1] ...]
Remove snapshots from one or more zpools that match a criteria given over the command line.
−h |
print this message and exit | ||
−n |
dry−run, don’t actually delete snapshots | ||
−l |
list only mode, just list matching snapshots names without deleting (like dry−run mode with machine−parseable output) |
−p <prefix>
snapshot prefix string to match
−s <suffix>
snapshot suffix string to match
−i |
invert matching of prefix and suffix |
|||
−q |
quiet, do not printout removed snapshots |
|||
−R |
recursively delete, pass ’−R’ directly to ’zfs destroy’ |
|||
−v |
increase verbosity |
|||
−V |
print the version number and exit |
TIMESPEC
The first argument denotes how old a snapshot must be for it to be considered for deletion − possible specifiers are
s seconds
m minutes
h hours
d days
w weeks
M months
y years
zfs−prune−snapshots 1w
Remove snapshots older than a week across all zpools
zfs−prune−snapshots −vn 1w
Same as above, but with increased verbosity and without actually deleting any snapshots (dry−run)
zfs−prune−snapshots 3w tank1 tank2/backup
Remove snapshots older than 3 weeks on tank1 and tank2/backup. Note that this script will recurse through all of tank1 and all datasets below tank2/backup
zfs−prune−snapshots −p ’autosnap_’ 1M zones
Remove snapshots older than a month on the zones pool that start with the string "autosnap_"
zfs−prune−snapshots −s ’_frequent’ 2M tank
Remove snapshots older than two months on the tank pool that end with the string "_frequent"
zfs−prune−snapshots −i −p ’autosnap_’ 1M zones
Remove snapshots older than a month on the zones pool that do not start with the string "autosnap_"
〈https://github.com/bahamas10/zfs-prune-snapshots〉
Dave Eddy <bahamas10> <[email protected]> (https://www.daveeddy.com)
zpool(1M), zfs(1M)
MIT License