Re: cow-links

From: Andreas Dilger (adilger@home.com)
Date: Sun Mar 05 2000 - 23:37:34 EST


Ville Herva writes:
> > FWIW I have been working on the design for such a filesystem (or
> > `filesystem block-allocation indirection layer') for a few months now.
>
> Well, I would have been surprised if nobody had been researching this kind
> of approach...

We actually have a working prototype version of a filesystem that can do
copy-on-write, among other things. The filesystem (OBDFS) is part of
the Lustre project (see www.lustre.org for more details), and it uses
a file-centric rather than block centric approach to managing storage.
Since there is a clean abstraction between the VFS interface and the
on-disk storage, it was relatively straight forward to add a "snapshot"
layer which will do COW, and we can have dated snapshots that can be
mounted as read-only filesystems, or restored to the current read-write
filesystem

The filesystem is based on ext2, and it is currently functional, but
definitely not production quality, and doesn't have a working e2fsck
when using snapshots. We have been developing with 2.3.34, but the code
may work with later kernels. You can download the latest tarball to
get a working version, or anonymous CVS for the bleeding-edge code at
www.lustre.org.

> Actually, there are filesystems available and developed that do not lose
> the deleted files or older versions changed files. Instead, they make a
> new copy on change, and later you can mount for example "last mondays"
> situation. In certain applications, that is very useful. These fs's
> propably use a kind of per-file or per-inode cow-link

The OBDFS snapshots we have developed work on a per-inode basis (rather
than a per-block COW). What is really interesting about OBDFS is that
the VFS/disk separation allows all kind of "functional layers" to be
added, snapshots are only one of them. Other possibilities include
mirroring/RAID, encryption, RPC (remote disks/NAS), etc.

Cheers, Andreas

-- 
Andreas Dilger  \ "If a man ate a pound of pasta and a pound of antipasto,
                 \  would they cancel out, leaving him still hungry?"
                                                                -- Dogbert

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



This archive was generated by hypermail 2b29 : Tue Mar 07 2000 - 21:00:19 EST