How to Restore from ECFS Snapshot


Elastifile provides advanced features around the snapshot capability.

Snapshot is a "Point in Time" copy of the data for disaster recovery or backup purposes.


When using ECFS, you can create snapshots with the scheduler mechanism per data container.

snapshot schedule button menu


In addition to that, you can create a manual snapshot as well.


One of the unique capability of Elastifile is shifting the snapshots to an object store which configured by the same UI.

This options saves you the fast primary storage capacity for your critical application, and put the snapshots on the cheap storage.

Restoring files from snapshot

In the following example, I will mount an Elastifile DC called "test" on a linux client.

I create a text file and write some data, and then take a snapshot called 'first_snap'.

[root@instance-1 ~]# showmount -e
Export list for
/test/root *
[root@instance-1 ~]#
[root@instance-1 ~]# mkdir /mnt/test
[root@instance-1 ~]# mount /mnt/test
[root@instance-1 ~]#
[root@instance-1 ~]# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/sda1               10G  1.9G  8.2G  19% / 1000G     0 1000G   0% /mnt/test
[root@instance-1 ~]#
[root@instance-1 ~]# cd /mnt/test
[root@instance-1 test]# vi file.txt
[root@instance-1 test]# cat file.txt


After that, I will write more data on the same file and take another snapshot called 'second_snap'.

[root@instance-1 test]# vi file.txt
[root@instance-1 test]# cat file.txt


Now, by viewing the Elastifile DC I created, I can find my 2 snapshots.

snapshot name


In my client, under the mount point I created, I can enter an hidden directory called 'snapshot.

In that directory I can find all the snapshots which are related to the mounted DC.

In each snapshot directory, I can find a view of all the files were exist in the same point in time the snapshot was taken.

The files in the snapshot directories are read only and cannot be modified, but can be copied for restoring the file into the client share.

[root@instance-1 test]# cd .snapshot
[root@instance-1 .snapshot]#
[root@instance-1 .snapshot]# ll
total 0
drwxr-xr-x. 2 root root 0 Feb  3 06:59 first_snap
drwxr-xr-x. 2 root root 0 Feb  3 07:00 second_snap
[root@instance-1 .snapshot]#
[root@instance-1 .snapshot]# cd first_snap/
[root@instance-1 first_snap]# cat file.txt
[root@instance-1 first_snap]#
[root@instance-1 first_snap]# cd ../second_snap/
[root@instance-1 second_snap]# cat file.txt
[root@instance-1 second_snap]#
[root@instance-1 second_snap]# cd ../first_snap/
[root@instance-1 first_snap]#
[root@instance-1 first_snap]# cp file.txt /mnt/test
cp: overwrite ‘/mnt/test/file.txt’? y
[root@instance-1 first_snap]# cd /mnt/test
[root@instance-1 test]# cat file.txt


Was this helpful?

How can we improve it?
Clear search
Close search
Google apps
Main menu