Snapshots

From UMIACS
Jump to navigation Jump to search

Snapshots are a implementation of copy-on-write that allows for a file system to quickly take a point-in-time copy of the file system and provide access to the data through a .snapshot directory. Snapshots provide a fast, user-accessible way to recover data that has been accidentally deleted or corrupted within a recent time window, rather than having to retrieve the data from comparatively slow tape backups. They also help to span the time gap between full backups.

We provide snapshots on our Isilon, ZFS, VAST, and Qumulo filers to certain file systems. If you are ever unsure if a particular volume has snapshots enabled, please contact the Help Desk.

Snapshot Retention Policy

Our core file systems are on a 4 hour snapshot cycle.

Snapshot Name Retention Length When is it taken?
Hourly 24-32 hours Every day 12am, 4am, 8am, 12pm, 4pm
Daily 2 days Every day 8pm or 12am
Weekly 1 week Every Saturday 8pm or Sunday 12am

In other words, we retain up to either 6 or 8 hourly snapshots, 2 daily snapshots and 1 weekly snapshot. Hourly snapshots may be superseded by daily snapshots, and daily snapshots may be superseded by the weekly snapshot.

Snapshot Restoring

If you have deleted a file by mistake and you need to get it back, you can use the snapshots directory to recopy the file. It generally will not be visible, even when viewing hidden directories.

It will be either:

  • .snapshot for the Isilon, VAST, or Qumulo filers
  • .zfs/snapshot for the ZFS filer

The inside of one of these will look something like:

Isilon filesystem:

$ pwd
/nfshomes/username
$ cd .snapshot
$ ls
nfshomes_2024-09-14_00:00  nfshomes_2024-09-16_04:00                           
nfshomes_2024-09-15_00:00  nfshomes_2024-09-16_08:00                           
nfshomes_2024-09-15_16:00  nfshomes_2024-09-16_12:00                           
nfshomes_2024-09-15_20:00  Weekly_nfshomes_2024-09-08_00:00                    
nfshomes_2024-09-16_00:00  Weekly_nfshomes_2024-09-15_00:00

ZFS filesystem:

$ pwd
/nmhomes/username
$ cd .zfs/snapshot
$ ls
zfs-auto-snap_daily-2024-09-14-2000   zfs-auto-snap_hourly-2024-09-16-0000     
zfs-auto-snap_daily-2024-09-15-2000   zfs-auto-snap_hourly-2024-09-16-0400     
zfs-auto-snap_hourly-2024-09-15-0400  zfs-auto-snap_hourly-2024-09-16-0800     
zfs-auto-snap_hourly-2024-09-15-0800  zfs-auto-snap_hourly-2024-09-16-1200     
zfs-auto-snap_hourly-2024-09-15-1200  zfs-auto-snap_weekly-2024-09-14-2000     
zfs-auto-snap_hourly-2024-09-15-1600

For an example of file restoration, please see this page.