On Fri, 2006-01-13 at 08:42 +0900, Junichi Uekawa wrote: > Hi, > > > > This is an update on using userland COW method with pbuilder. > > > > > > cowdancer is a tool that allows you to "cp -al" (hardlink) a tree, and > > > break the hardlink when a write-open to a file is performed. The > > > adventurous part of cowdancer COW implementation is that it's trying > > > to do this from within userland only. > > > > > > cowbuilder doesn't really exist yet; it's a name for pbuilder ported > > > to fully use cowdancer. cowdancer is under development, and Debian > > > package exists in unstable. It seems like it's getting nearly there > > > with the feature set. With version 0.8, performance is improved > > > against a large tree (I profiled against building the kernel), and > > > with version 0.9, I fixed a bug which you could not replace /lib/ld.so > > > while cowdancer was running. > > > > Are you aware of fl-cow, which is a LD_PRELOAD userspace COW tool ? > > It seems to be the tool with a same kind of goal. If I knew it > existed, I might have started from it. However, it only supports > 'open', so it will have problems when used with pbuilder; for example, > file permissions are shared between files with same i-nodes. The > scope of implementation between the two applications is a bit > different. ... > Considering the difference, it might be better to improve desciprtions > of both packages. > > > > Another difference I noticed is that fl-cow takes a list of > directories to protect in FL_COW, and seems to copy files > unconditionally on 'open'. > > cowdancer caches a list of i-nodes so that it won't try to break > hardlinks more than once. (cow-shell does this much work). Nice. I'm not sure both tools need to be in debian. How mature is cowdancer - can it replace fl-cow at this point? (fl-cows primary use is to be told 'these paths may contain hardlinked files, please unhardlink any of them on write'). Rob -- GPG key available at: <http://www.robertcollins.net/keys.txt>.
Description: This is a digitally signed message part