Corrected the "-dump" report of fragment start position.
[rrq/fusefile.git] / fusefile.8
index 395438955609bdf2843c1a7edb448f617b3fc19c..b952f5574075e2ae9b0df699ead855873618a772 100644 (file)
@@ -6,26 +6,24 @@ fusefile, fusedisk \- FUSE file mount for combining file fragments
 .SH SYNOPSIS
 .B fusefile \fR[\fIfuse-opts\fR] \fBmountpoint\fR \fR[\fIoverlay\fR] \fIfilename/from-to\fR ...
 .br
+.B fusefile \fB-dump\fR \fR[\fIfuse-opts\fR] \fBmountpoint\fR \fR[\fIoverlay\fR] \fIfilename/from-to\fR ...
+.br
+.B fusefile \fB-push\fR \fR[\fIfuse-opts\fR] \fBmountpoint\fR \fR[\fIoverlay\fR] \fIfilename/from-to\fR ...
+.br
 .B fusedisk \fR[\fIfuse-opts\fR] \fBmountpoint\fR \fR[\fIoverlay\fR] \fIfilename/from-to\fR ...
 
 .SH DESCRIPTION
 
-\fBfusefile\fR is a FUSE file mount that presents a series of
-fragments of other files as a contiguous concatenation. It bind mounts
-a driver on top of the file mountpoint to present the nominated file
-fragments as a single, contiguous file. \fBfusefile\fR accepts
-over-writing on the fused file (i.e. the mountpoint) which gets
-distributed accordingly to the fragments, but it cannot change size;
-any writing thus merely replaces content without truncating fragments.
-All fragment files are held open while \fBfusefile\fR is active.
+\fBfusefile\fR is a FUSE \fIfile mount\fR that presents a series of
+fragments of other files as a contiguous concatenation. Technically it
+bind mounts a driver on top of the filename mountpoint to provide
+access to the given file fragments as if in a single, contiguous file.
 
-\fBfusedisk\fR is a helper script to set up a \fBfusefile\fR as a
-block device (via \fIfuseblk\fR) by using the device mapper
-(\fBdmsetup\fR) to manage an empty block device mapping where content
-is handled at the mountpoint via \fBfusefile\fR. (Note that the same
-thing may be done with the device manager directly, but then all
-fragments need to be in sectors of N*512 bytes. With \fBfusedisk\fR
-only the fused file as a whole is "clipped" at N*512 bytes)
+\fBfusefile\fR accepts over-writing on the fused file (i.e. the
+mountpoint) which gets distributed accordingly to the fragments. But
+neither the fused file nor the fragments can change size; any writing
+thus merely over-writes content without truncating fragments. All
+fragment files are held open while \fBfusefile\fR is active.
 
 By using the optional \fB-overlay:\fIfilename\fR argument between the
 mount point and the fragments, an overlay file may be set up. The
@@ -35,6 +33,34 @@ any new written fused file regions followed by meta data to
 distinguish between new, written content and old content that comes
 from the fragments.
 
+By instead using the \fB-overlay:\fIlist\fR argument where \fIlist\fR
+is a colon-separated list of filenames, \fBfusefile\fR will use those
+as an ordered stack of overlays and "inject" them as fragments on top
+of each other.
+
+The option \fB-dump\fR as first argument together with a fusefile
+setup will print the setup to standard output rather than establishing
+a fusefile mount. This is of most use with a prior overlay setup where
+then the printout includes the portions of updates that have been
+captured in the overlay. The printout is the series of fusefile
+fragment argments to give in order to intersperse the captured overlay
+portions according to the overlay table.
+
+The option \fB-push\fR as first argument together with a fusefile
+setup will push the overlay into the sources (except for
+write-protected fragments). This is only of use with a prior overlay
+setup where then the updates that have been captured in the overlay
+get pushed into the fragments.
+
+\fBfusedisk\fR is a helper script to set up a \fBfusefile\fR as a
+block device (via \fIfuseblk\fR) by using the device mapper
+(\fBdmsetup\fR) to manage an empty block device mapping where content
+is handled at the mountpoint via \fBfusefile\fR. (Note that the same
+thing may be done with the device manager directly, but then all
+fragments need to be in sectors of N*512 bytes whereas with
+\fBfusedisk\fR, only the fused file as a whole is "clipped" at nearest
+N*512 bytes below actual size)
+
 .SH FRAGMENT ARGUMENTS
 
 The fragment arguments include the filename of a source file, and
@@ -79,7 +105,15 @@ This section enumerates the most interesting options to use with
 \fBfuesfile\fR. See "man fuse" and "man mount" for more options.
 
 .TP
-\fI-oallow_other\fB
+\fB-dump\fR
+
+The \fB-dump\fR "option" tells \fBfusefile\fR to print out the
+applicable fragment sequence for the current setup, including the
+overlay table, if any. The printout is done instead of setting up a
+mount point.
+
+.TP
+\fB-o\fIallow_other\fB
 
 The fuse option \fI-oallow_other\fR is needed for sharing the fused
 file with other users who otherwise will not have access to it
@@ -87,18 +121,18 @@ file with other users who otherwise will not have access to it
 \fI/etc/fuse.conf\fR.
 
 .TP
-\fI-ononempty\fR
+\fB-o\fInonempty\fR
 
 The fuse option \fI-ononempty\fR may need to be used when reusing an
 existing file as mountpoint.
 
 .TP
-\fI-ouid=...\fR,  \fI-ogid=...\fR, 
+\fB-o\fIuid=...\fR and \fB-o\fIgid=...\fR, 
 
-The mount options \fI-ouid=...\fR and \fI-ogid=...\fR, where \fI...\fR
- is a user or group id respectively, are useful for root when using
- \fBfusedisk\fR and thereby give user or group ownership for the mount
- to the nominated user or group.
+These mount options, where \fI...\fR is a user or group id
+respectively, are useful for root when using \fBfusedisk\fR and
+thereby give user or group ownership for the mount to the nominated
+user or group.
 
 .SH EXAMPLES
 This section illustrates uses of \fBfusefile\fR.