Public bug reported: ---------- Configuration # echo -e $(grep VERSION= /etc/os-release)\\nSIGNATURE=\"$(cat /proc/version_signature)\" VERSION="16.04.3 LTS (Xenial Xerus)" SIGNATURE="Ubuntu 4.10.0-35.39~16.04.1-generic 4.10.17" # dpkg --list | grep zfs ii libzfs2linux 0.6.5.6-0ubuntu18 ii zfs-doc 0.6.5.6-0ubuntu18 ii zfs-initramfs 0.6.5.6-0ubuntu18 ii zfs-zed 0.6.5.6-0ubuntu18 ii zfsutils-linux 0.6.5.6-0ubuntu18
---------- Fault: Creating an overlay of multiple directories on a ZFS volume does not work # df /var/tmp Filesystem Type 1K-blocks Used Available Use% Mounted on tank07/var/tmp zfs 129916288 128 129916160 1% /var/tmp # mkdir /var/tmp/{lower,middle,upper,workdir,overlay} # mount -t overlay overlay -olowerdir=/var/tmp/middle:/var/tmp/lower,upperdir=/var/tmp/upper,workdir=/var/tmp/workdir /var/tmp/overlay mount: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so. # dmesg|tail -1 [276328.438284] overlayfs: filesystem on '/var/tmp/upper' not supported as upperdir ---------- Control test 1: Creating an overlay of multiple directories on another filesystem works # df /tmp Filesystem Type 1K-blocks Used Available Use% Mounted on tmpfs tmpfs 1048576 133492 915084 13% /tmp # mkdir /tmp/{lower,middle,upper,workdir,overlay} # mount -t overlay overlay -olowerdir=/tmp/middle:/tmp/lower,upperdir=/tmp/upper,workdir=/tmp/workdir /tmp/overlay # mount | grep overlay overlay on /tmp/overlay type overlay (rw,relatime,lowerdir=/tmp/middle:/tmp/lower,upperdir=/tmp/upper,workdir=/tmp/workdir) ---------- Control test 2: Creating an overlay using AuFS works on ZFS volume and elsewhere # mount -t aufs -obr=/tmp/lower:/tmp/middle:/tmp/upper:/tmp/workdir none /tmp/overlay # mount -t aufs -obr=/var/tmp/lower:/var/tmp/middle:/var/tmp/upper:/var/tmp/workdir none /var/tmp/overlay # mount | grep aufs none on /var/tmp/overlay type aufs (rw,relatime,si=9ead1ecae778b250) none on /tmp/overlay type aufs (rw,relatime,si=9ead1ec9257d1250) ---------- Remark While the use of AuFS can be used as a workaround in the above scenario, AuFS in turn will not work with [fuse.]glusterfs mounts (this has been documented elsewhere). Given that OverlayFS is part of the (upstream) kernel and Ubuntu now officially supports ZFS, the above should be fixed. ** Affects: linux (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1718761 Title: It's not possible to use OverlayFS (mount -t overlay) to stack directories on a ZFS volume Status in linux package in Ubuntu: New Bug description: ---------- Configuration # echo -e $(grep VERSION= /etc/os-release)\\nSIGNATURE=\"$(cat /proc/version_signature)\" VERSION="16.04.3 LTS (Xenial Xerus)" SIGNATURE="Ubuntu 4.10.0-35.39~16.04.1-generic 4.10.17" # dpkg --list | grep zfs ii libzfs2linux 0.6.5.6-0ubuntu18 ii zfs-doc 0.6.5.6-0ubuntu18 ii zfs-initramfs 0.6.5.6-0ubuntu18 ii zfs-zed 0.6.5.6-0ubuntu18 ii zfsutils-linux 0.6.5.6-0ubuntu18 ---------- Fault: Creating an overlay of multiple directories on a ZFS volume does not work # df /var/tmp Filesystem Type 1K-blocks Used Available Use% Mounted on tank07/var/tmp zfs 129916288 128 129916160 1% /var/tmp # mkdir /var/tmp/{lower,middle,upper,workdir,overlay} # mount -t overlay overlay -olowerdir=/var/tmp/middle:/var/tmp/lower,upperdir=/var/tmp/upper,workdir=/var/tmp/workdir /var/tmp/overlay mount: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so. # dmesg|tail -1 [276328.438284] overlayfs: filesystem on '/var/tmp/upper' not supported as upperdir ---------- Control test 1: Creating an overlay of multiple directories on another filesystem works # df /tmp Filesystem Type 1K-blocks Used Available Use% Mounted on tmpfs tmpfs 1048576 133492 915084 13% /tmp # mkdir /tmp/{lower,middle,upper,workdir,overlay} # mount -t overlay overlay -olowerdir=/tmp/middle:/tmp/lower,upperdir=/tmp/upper,workdir=/tmp/workdir /tmp/overlay # mount | grep overlay overlay on /tmp/overlay type overlay (rw,relatime,lowerdir=/tmp/middle:/tmp/lower,upperdir=/tmp/upper,workdir=/tmp/workdir) ---------- Control test 2: Creating an overlay using AuFS works on ZFS volume and elsewhere # mount -t aufs -obr=/tmp/lower:/tmp/middle:/tmp/upper:/tmp/workdir none /tmp/overlay # mount -t aufs -obr=/var/tmp/lower:/var/tmp/middle:/var/tmp/upper:/var/tmp/workdir none /var/tmp/overlay # mount | grep aufs none on /var/tmp/overlay type aufs (rw,relatime,si=9ead1ecae778b250) none on /tmp/overlay type aufs (rw,relatime,si=9ead1ec9257d1250) ---------- Remark While the use of AuFS can be used as a workaround in the above scenario, AuFS in turn will not work with [fuse.]glusterfs mounts (this has been documented elsewhere). Given that OverlayFS is part of the (upstream) kernel and Ubuntu now officially supports ZFS, the above should be fixed. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1718761/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp