Page 1 of 1

aufs vs overlay

Posted: Mon Mar 07, 2022 7:06 pm
by williwaw

What are the basic differences between the two from a users point of view? Pros and cons?


Re: aufs vs overlay

Posted: Mon Mar 07, 2022 11:46 pm
by wiak
williwaw wrote: Mon Mar 07, 2022 7:06 pm

What are the basic differences between the two from a users point of view? Pros and cons?

aufs allows adding/inserting extra layers to the layer system after booting, overlayfs doesn't. So easy to do sfs-load, after booting, if using aufs via new layers. That's about it.

However, KLV-Airedale and various DebianDogs that now use overlayfs demonstrate via a fredx181 utility that sfs-load via symlinks instead of via a merged in layer works very well indeed (to be fair tinycorelinux relies on similar methodology to load all its tcz files, which are actually squashed filesystems too). So that add/insert layer after boot disadvantage becomes, on the whole, close to irrelevant in practice from a users point of view - or at least probably better to adopt official layering method [overlayfs] and encourage developments like that to work around that limitation, rather than use less-supported technologies).

The principal advantage of overlayfs is simple, but large: it is official in the kernel (aufs isn't and needs special kernel build with application of aufs patch to include it). That means pretty much all official kernels from upstream (or anywhere) have overlayfs included as a module or a kernel built in, so no patching required. Great to thus be able to simply use all these well-tested and maintained upstream distro kernels!
Being official part of kernel development we can also trust overlayfs will be maintained and not cause unexpected issues - that's a huge plus IMO. See here for example (yes maintenance being done, but only after event and can you be sure aufs will always be maintained by its creator?): http://forum.puppylinux.com/viewtopic.p ... 662#p51662

Moreover, you can nest overlays inside other overlays and so on ad infinitum. In other words an already overlayfs merged layer can be used as a single layer on a new overlay structure - that 'could' have uses we haven't really investigated here much. You can't nest aufs layer builds inside other aufs layer structures as far as I know.

I've read that overlayfs is simpler code - that helps with maintenance and reliability.

Main thing for me is that overlayfs is available in upstream kernels - that allows me to boot many upstream distros using WeeDogLinux initrd (as scripted into my weedogit script) since WDL initrd opted to use overlayfs by default from WDL's original development in early 2019. Truth is it would only take minor changes to a few lines of WDL init code to use aufs instead, but I prefer to concentrate on overlayfs since time for development is always too short anyway.