ffm - File-on-File Mounting File System
Interfaces documented on this reference page conform to industry standards
Refer to standards(5) for more information about industry standards and
their associated tags.
The File-on-File Mounting (FFM) file system allows regular files, character
device special files, or block device special files to be mounted on regu-
lar files or directories.
The ffm file system is used with the System V Release 4-compatible library
functions fattach(3) and detach(3) to enable a user process to have one
file descriptor pointing to the data associated with a named file and a
named STREAM. When one name is active, the other name is invisible.
For example, a user application mounts a file descriptor from a file named
a_file on a file that is named b_file. The file descriptor of file a_file
is accessible by two names, a_file and b_file. However, when the user
application attempts to open either file, only the file descriptor for
a_file is returned: the file descriptor for b_file is invisible while
a_file is mounted over it.
The fattach(3) function mounts a file over another; the fdetach(3) function
removes the association so the underlying file can be accessed.
The user process can also mount a regular file over a regular file in order
for it to be a clone of the underlying file. [Do not confuse this clone
with an AdvFS clone fileset.] In this case, the clone file is a character
device special file that is associated with a device driver that handles
such files. As a result, a user can specify one clone entry and then open
this device multiple times. Each time the device is opened, a new vnode is
obtained but exactly the same device behavoir is also obtained: the
behavior is cloned.
That mount occurs if the -o clone option is used in the mount command or as
an element of a ffm line in the /etc/fstab file. In this case, there are
two files with identical contents, separate names, and separate file
The following example shows an ffm mount of a_file on b_file. If the df
command were executed, its display would show a_file in the file system
column and b_file in the Mounted on column:
# mount -t ffm a_file b_file
The following example shows an ffm mount of a_file on b_file, with the
mount -o clone option specifying that a_file is a clone of b_file.
# mount -t ffm -o clone a_file b_file
The user process must be the root user or must be the owner of the files
and must have write permissions for the files.
[Tru64 UNIX] Before you can use the ffm file system, you must configure
the kernel option FFM_FS into the kernel. See System Administration for
information about configuring the kernel.
Commands: fdetach(8), mount(8)
Functions: fattach(3), fdetach(3), isastream(3), chmod(2), mount(2)