[CentOS] Query: Filesystems

Fri Nov 25 00:27:14 UTC 2005
Maciej Żenczykowski <maze at cela.pl>

Hello,

Just a few quick, but not very simple questions...:

Do any Linux filesystems (besides XFS) support freezing?
(ie. in conjuction with LVM snapshots this can allow a mounted
filesystem to be frozen [freezing all processes writing to this 
filesystem] in a valid state (with possibly dangling
unlinked files), the device can be snapshotted via LVM, and the
original filesystem unfrozen - the snapshot now contains a valid snapshot 
in time of the original filesystem - with no corruption.

Can this (freezing) be used for the root filesystem or other important 
filesystems? ie. might it cause something vitally important to freeze?

Can a snapshotted LVM (the snapshot, not the original filesystem) be 
modified (I assume snapshots are purely readonly...) - so as to remove the 
dangling deleted/unlinked files and possibly modify the uuid (I realize 
there is a nouuid mount option for XFS).

And the last question: is there some sort of filesystem which supports 
generating 'in-filesystem' snapshots (ie. some sort of copy-on-write block 
semantics applicable both to files and directories combined with both a 
root rw directory to access current files and a ro /snapshot/YYMMDD-HHMMSS 
hierarchy to access snapshots from past dates with the possibility of 
deleting them at will (ie. generate a snapshot every hour, after 24 hours 
leave only every 6th one, after 7 days leave only dailies, after a month 
leave only weeklies etc... - much too complicated, but it's easier to 
get the basic idea across on a larger example - probably organized via 
cronjob).

I realise such a solution would not be foolproof (if the disk goes bad or 
the filesystem goes haywire it's pretty much useless) so a hard-copy would 
still need to be maintained (probably via freeze/snapshot/unfreeze/dump it 
somewhere else) - but this would be useful for the users (the ability to 
restore past deleted files...)

In a way this could possibly be realized via  some twidling with rsync 
(although for space efficiency this would require copy-on-write hardlinks 
or something like that) but I see no way of doing this without wasting a 
lot of space (at least 1 copy of the snapshoted filesystem, the rest 
could probably be hardlinked).  And to maintain full R/O status, this 
would need to be a seperate partition, etc...

Any comments/ideas?

Cheers,
MaZe.