Aufs


aufs implements a union mount for Linux file systems. The name originally stood for AnotherUnionFS until version 2.
Developed by Junjiro Okajima in 2006, aufs is a complete rewrite of the earlier UnionFS. It aimed to improve reliability and performance, but also introduced some new concepts, like writable branch balancing, and other improvements – some of which are now implemented in the UnionFS 2.x branch.
aufs was rejected for merging into mainline Linux. Its code was criticized for being "dense, unreadable, uncommented". Instead, OverlayFS was merged in the Linux kernel. After several attempts to merge aufs into mainline kernel, the author has given up.

Use

Aufs is included in Debian "jessie" and Ubuntu 16.04 out of the box. Debian "stretch" does not include aufs anymore, but provides a package aufs-dkms, which auto-compiles the aufs kernel module using Dell's dkms.
Docker originally used aufs for container filesystem layers. It is still available as one of the supported storage backends.
Several Linux distributions have chosen aufs as a replacement for UnionFS, including: