shithub: unionfs

ref: a1a08e5b2ae3f03401e6f845a9bd6e53987770ab
dir: /unionfs.man/

View raw version
.TH UNIONFS 4
.SH NAME
unionfs \- union file server
.SH SYNOPSIS
.B unionfs
[
.B -abiC
] [
.B -M
|
.B -m
.I mtpt
] [
.B -s
.I srvname
] [
.B -c
]
.I path ....
.SH DESCRIPTION
.PP
.I Unionfs
serves a file tree representing a deep
merge of the trees given by the
.I path
arguments - this is unlike the standard set of
namespace operators which merge only at the
mountpoint level.
.PP
A
.I path
tree marked with the create flag
.I -c
is used as the destination for newly created
files; the first path in the list is used by default.
The path leading up to the new file or a directory
will be created if necessary.
.PP
The command line options are:
.TF ".............."
.TP
.B -a, -b, -C
Mount flags, see
.IR bind (1).
.TP
.BI -c \ path
Mark a
.I path
as the create destination.
.TP
.B -i
Talk on standard input / output.
.TP
.BI -m \ mtpt
Mount on
.IR mtpt ;
.I /mnt/union
by default.
.I -M
disables automatic mounting.
.TP
.BI -s \ srvname
Post channel to
.RI /srv/ srvname .
.TP
.B -D
9P debug trace.
.PD
.SH EXAMPLES
Construct the
.I /bin
tree:
.PP
.EX
; unionfs -m /bin \\
	$home/bin/$objtype $home/bin/rc \\
	/rc/bin /$objtype/bin
.EE
.PP
Compile the system, redirecting all the build
artifacts to a
.IR ramfs (4):
.PP
.EX
; ramfs
; bind /sys/src /mnt/src
; unionfs -m /sys/src /tmp /mnt/src
; @{cd /sys/src; mk install}
.EE
.PP
The temporary bind is necessary for
avoiding a cycle caused by unioned tree
.I /sys/src
being the same as the mountpoint.
.SH SEE ALSO
.IR bind (1),
.IR bind (2),
.IR ramfs (4)
.SH SOURCE
.B git://code.a-b.xyz/unionfs
.SH BUGS
.PP
You're.