Over the years with Puppy Linux I have gone backwards and forwards between using Aufs and Unionfs.
They each have advantages and disadvantages, but Unionfs has two major advantages that make me prefer it. The problem is that we have had ongoing stability issues with Unionfs and the developers are extremely slow to fix them. That was the reason for my last move from Unionfs to Aufs. However, for the latest experiments with the 2.6.33.x kernel we are once again playing with Unionfs. I need to explain why I want to use Unionfs, if it is stable, rather than Aufs. We have been discussing these reasons on my blog: http://bkhome.org/blog/?viewDetailed=01440 Now, it may be that these two things can be done in Aufs, but I don't know how: First reason Puppy Linux has the layers (branches) with basically the r/w "save file" or "save partition" on top, the main Puppy f.s. below as a r/o Squashfs file (what we call a SFS file), and optionally more SFS files as layers below that -- for example a complete c/c++ development environment, or OpenOffice. If we have a "save partition" on top, we also have the SFS files in that partition. Aufs will refuse to mount those SFS files as they are already inside a branch. Consequently, we are forced to copy the main SFS file into RAM and mount it from there. However, Unionfs is quite happy with mounting SFS files that are actually present in another branch. Second reason Both Unionfs and Aufs have mechanisms for detecting direct writes to branches, however they are not perfect. Unless, in the case of Aufs you go for the mode using inotify, but that has performance penalty. When running Puppy from Flash memory, we have the top branch as a tmpfs in RAM, and the "save file" or "save partition" below that. This is done to minimise writes to the Flash memory. When a package is installed, we would like to be able to install it directly to the "save" layer, the actual Flash memory and have all the files visible on top. Our package installer recognises if Unionfs is being used and is able to write direct to the "save" layer, and then is able to do a perfect operation to make all files visible on top by doing this: mount -t unionfs -o remount,incgen unionfs / ...this flushes the caches and does a complete re-evaluation of the layers. As far as I know, Aufs does not have the equivalent. Regards, Barry Kauler ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev