I tried to mount an external storage device (a usb flash drive) with overlay (as the lowerdir the usb and as upper a temporary ramdisk)

mkdir /data

mkdir /data/lower
mkdir /data/rw
mkdir /data/root

Then creating the ramdisk

mount -t tmpfs none /data/rw
mkdir /data/rw/upper
mkdir /data/rw/work

I mounted the usb device

mount -t vfat /dev/sdb1 /data/lower

To finally use overlay :

mount -t overlay -o lowerdir=/data/lower,upperdir=/data/rw/upper,workdi=/data/rw/work none /data/root

Which give me the folowwing error

wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error

overlayfs: filesystem on '/data/lower' not supported

But according to the documentation

The lower filesystem can be any filesystem supported by Linux and does not need to be writable

Is there a link with automount and if so how I can fix it ?

  • I suspect that the documentation is lying and doesn't support any filesystem as written. Of course replacing vfat with ext4 works. Couldn't find something to confirm this (looking at sources would probably, but too much effort)
    – A.B
    Apr 30, 2019 at 13:56

1 Answer 1


It took some digging, but the overlay filesystem driver considers certain dentry flags "weird" (via ovl_dentry_weird) and refuses to mount in the associated directories. Common cause is case-folding filesystems -- these will always be flagged as weird.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .