posixovl -- FUSE file system that provides POSIX functionality
mount.posixovl [-F] [-S SOURCE_DIR] TARGET_DIR [-- fuseopts]
If no source directory is given, the TARGET_DIR specifies both source and target (mount point), yielding an "over mount".
Supports: chmod, chown, hardlink, mkfifo, mknod, symlink/readlink ACLs/xattrs (only in passthrough mode, no emulation).
Using posixovl on an already POSIX-behaving file system (e.g. XFS) incurs some issues, since detecting whether a path is POSIX behaving or not is difficult. Hence, the following decision was made:
- permissions will be set to the default permissions (see below) unless a HCB is found that can override these - all lower-level files will be operated on/created with the user who initiated the mount
If no HCB exists for a file or directory, the default permissions are 644 and 755, respectively. The owner and group of the inode will be the owner/group of the real file.
Each non-regular, non-directory virtual file will have a zero-size real file. Simplifies handling, and makes it apparent the object exists when using other operating system.
Command df(1) will show:
$ df -Tah File System Type Size Used Avail Use% Mounted on /dev/hda5 vfat 5.9G 2.1G 3.9G 35% /windows/D posix-overlay(/windows/D) fuse.posixovl 5.9G 2.1G 3.9G 35% /windows/D
- Option -F will disable permission and ownership checks that would be required in case you have a POSIX mount over VFAT. For example, where /vfat is vfat, and /vfat/xfs is a POSIX-behaving file system.
In general, posixovl does not handle case-insensitivity of the underlying file system (in case of VFAT, for example). If you create a file X0 on VFAT, it is usually lowercased to x0, which may break some software, namely X.org. In order to make VFAT behave more POSIX-like, the following mount options are recommended:
mount -t vfat /dev/sda5 /mnt/vfat -o check=s,shortname=mixed
Program was written by Jan Engelhardt <firstname.lastname@example.org>.
This manual page was written by Jari Aalto <email@example.com>, for the Debian GNU system (but may be used by others). Released under license GNU GPL version 2 or (at your option) any later version. For more information about license, visit <http://www.gnu.org/copyleft/gpl.html>.