public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andreas Dilger <adilger@clusterfs.com>
To: Libor Vanlk <libor@conet.cz>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Adding snapshot capability to Linux
Date: Mon, 22 Apr 2002 11:07:46 -0600	[thread overview]
Message-ID: <20020422170745.GD3017@turbolinux.com> (raw)
In-Reply-To: <3CC3ECD2.9000205@conet.cz>

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/


  parent reply	other threads:[~2002-04-22 17:09 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-04-22 10:58 Adding snapshot capability to Linux Libor Vaněk
2002-04-22 12:06 ` Peter Wächtler
2002-04-22 12:19   ` Libor Vanek
2002-04-22 12:42     ` Jasper Spaans
2002-04-22 15:02       ` Alvaro Figueroa
2002-04-23  5:36   ` rpm
2002-04-23 14:30     ` Alvaro Figueroa
2002-04-23 14:45       ` Alexander Viro
2002-04-23 14:58         ` Xavier Bestel
2002-04-23 18:48         ` Libor Vanek
2002-04-23 19:04         ` Jeremy Jackson
2002-04-23 20:22           ` Andreas Dilger
2002-04-22 17:07 ` Andreas Dilger [this message]
2002-04-22 17:41   ` Kent Borg
2002-04-22 18:39     ` Andreas Dilger
2002-04-22 18:19   ` Sandy Harris

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020422170745.GD3017@turbolinux.com \
    --to=adilger@clusterfs.com \
    --cc=libor@conet.cz \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox