Re: Adding snapshot capability to Linux

From: Andreas Dilger (adilger@clusterfs.com)
Date: Mon Apr 22 2002 - 12:07:46 EST


On Apr 22, 2002 12:58 +0200, Libor Vanlk wrote:
> I'm going to start my dissertation work which is "Adding snapshop
> capability to Linux kernel with copy-on-write support". My idea is add
> it as another VFS - I know that there is some snapshot support in LVM
> but it's working on "device-level" and I'd like/have to do it on fs level.
>
> My idea is to use it this way:
> - I have running system with some "/foo" dir
> - I want to make snapshot of "/foo/bar" to "/foo/snap1"
> - I run "mount -t snapshot /foo/bar /foo/snap1"
> - This creates virtual image of "/foo/bar" to the "/foo/snap1" with
> hidden file (something like journal) in "/foo/snap1" - all files are
> linked to "/foo/bar"
> - Whenever is some file/dir changed in "/foo/bar" there is created
> physical copy of it to the snapshot(s) before writing changes (for
> making records about this will be used the hidden file)
> - Of course that one directory can be snapshoted more times
> - Probably the hidden file with records about all snapshots and details
> should be stored in "/foo/bar"
> - Question is how to handle ACLs and EA for XFS/JFS/... and if it won't
> collide with journal
>
> I'd like to do it not only because I have to but I want people to use it
> (I want to make it GPL) and maybe it will be one nice day part of Linux
> kernel ;-)
>
> So I'd like if you can send me any suggestions/tips/warnings/links etc.
> before I start coding so I know what should I avoid/use.

Please see:
http://www-mddsp.enel.ucalgary.ca/People/adilger/snapfs/

What you describe is exactly what snapfs does. The Sourceforge project
is currently inactive, but the code itself is GPL and only needs some
polishing up and maintenance to be useful (probably also some work to
get it all OK under 2.4 again). There is already ext2 and ext3 support
for snapfs, and it would probably still be a worthwhile project to add
snapfs support for reiserfs.

Cheers, Andreas

--
Andreas Dilger
http://www-mddsp.enel.ucalgary.ca/People/adilger/
http://sourceforge.net/projects/ext2resize/

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Apr 23 2002 - 22:00:31 EST