On Friday 07 July 2006 16:52, Jon LaBadie wrote:
> Granted the inode for a changed file has to be
> copied, but I don't see why the data blocks do.
Which is, in fact, what happens. LVM snapshots are implemented at the device
level, not the filesystem level, which means copy-on-write takes place
whenever the filesystem driver (not the user) writes a particular block out
to disk. "data block" in this context does not mean "blocks containing file
data", but rather "blocks containing filesystem data, which may include file
data or file metadata".
The particular question of which blocks will be allocated will depend on the
semantics of the filesystem in question, of course. Deleting a file, for
example, may include changes to any number of blocks, depending on how the
filesystem manages its directory structures.
Cheers,
--Ian
--
Zmanda: Open Source Data Protection and Archiving.
http://www.zmanda.com
|