LOFS(4FS) File Systems LOFS(4FS)
NAME
lofs - loopback virtual file system
SYNOPSIS
#include <sys/param.h> #include <sys/mount.h> int mount(
const char *dir,
const char *virtual,
int mflag,
"lofs",
NULL,
0);
DESCRIPTION
The loopback file system device allows new, virtual file systems to be
created, which provide access to existing files using alternate
pathnames. Once the virtual file system is created, other file systems
can be mounted within it, without affecting the original file system.
However, file systems which are subsequently mounted onto the original
file system
are visible to the virtual file system, unless or until the
corresponding mount point in the virtual file system is covered by a
file system mounted there.
virtual is the mount point for the virtual file system.
dir is the
pathname of the existing file system.
mflag specifies the mount
options; the MS_DATA bit in
mflag must be set. If the MS_RDONLY bit in
mflag is not set, accesses to the loop back file system are the same as
for the underlying file system. Otherwise, all accesses in the
loopback file system will be read-only. All other
mount(2) options are
inherited from the underlying file systems.
A loopback mount of
/ onto
/tmp/newroot allows the entire file system
hierarchy to appear as if it were duplicated under
/tmp/newroot,
including any file systems mounted from remote NFS servers. All files
would then be accessible either from a pathname relative to
/ or from a
pathname relative to
/tmp/newroot until such time as a file system is
mounted in
/tmp/newroot or any of its subdirectories.
Loopback mounts of
/ can be performed in conjunction with the
chroot(2) system call, to provide a complete virtual file system to a process or
family of processes.
Recursive traversal of loopback mount points is not allowed. After the
loopback mount of
/tmp/newroot, the file
/tmp/newroot/tmp/newroot does
not contain yet another file system hierarchy; rather, it appears just
as
/tmp/newroot did before the loopback mount was performed (for
example, as an empty directory).
EXAMPLES
lofs file systems are mounted using:
mount -F lofs /tmp /mnt
SEE ALSO
chroot(2),
mount(2),
sysfs(2),
lofi(4D),
vfstab(5),
lofiadm(8),
mount(8)NOTES
All access to entries in
lofs mounted file systems map to their
underlying file system. If a mount point is made available in multiple
locations via
lofs and is busy in any of those locations, an attempt to
mount a file system at that mount point fails unless the overlay flag
is specified. See
mount(8). Examples of a mount point being busy
within a
lofs mount include having a file system mounted on it or it
being a processes' current working directory.
WARNINGS
Because of the potential for confusing users and applications, you
should use loopback mounts with care. A loopback mount entry in
/etc/vfstab must be placed after the mount points of both directories
it depends on. This is most easily accomplished by making the loopback
mount entry the last in
/etc/vfstab.
illumos November 24, 2014 illumos