74 lines
2.6 KiB
Groff
74 lines
2.6 KiB
Groff
'\" t
|
|
.\" Title: rofiles-fuse
|
|
.\" Author: Colin Walters <walters@verbum.org>
|
|
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
|
|
.\" Date: 05/17/2017
|
|
.\" Manual: rofiles-fuse
|
|
.\" Source: rofiles-fuse
|
|
.\" Language: English
|
|
.\"
|
|
.TH "ROFILES\-FUSE" "1" "" "rofiles-fuse" "rofiles-fuse"
|
|
.\" -----------------------------------------------------------------
|
|
.\" * Define some portability stuff
|
|
.\" -----------------------------------------------------------------
|
|
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
.\" http://bugs.debian.org/507673
|
|
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
|
|
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
.ie \n(.g .ds Aq \(aq
|
|
.el .ds Aq '
|
|
.\" -----------------------------------------------------------------
|
|
.\" * set default formatting
|
|
.\" -----------------------------------------------------------------
|
|
.\" disable hyphenation
|
|
.nh
|
|
.\" disable justification (adjust text to left margin only)
|
|
.ad l
|
|
.\" -----------------------------------------------------------------
|
|
.\" * MAIN CONTENT STARTS HERE *
|
|
.\" -----------------------------------------------------------------
|
|
.SH "NAME"
|
|
rofiles-fuse \- Use FUSE to create a view where directories are writable, files are immutable
|
|
.SH "SYNOPSIS"
|
|
.HP \w'\fBrofiles\-fuse\ SRCDIR\ MNTPOINT\fR\ 'u
|
|
\fBrofiles\-fuse SRCDIR MNTPOINT\fR
|
|
.SH "DESCRIPTION"
|
|
.PP
|
|
Creating a checkout from an OSTree repository by default uses hard links, which means an in\-place mutation to any file corrupts the repository and all checkouts\&. This can be problematic if one wishes to run arbitrary programs against such a checkout\&. For example, RPM
|
|
%post
|
|
scripts or equivalent\&.
|
|
.PP
|
|
In the case where one wants to create a tree commit derived from other content, using
|
|
\fBrofiles\-fuse\fR
|
|
in concert with
|
|
\fBostree commit \-\-link\-checkout\-speedup\fR
|
|
(or the underlying API) can ensure that only new files are checksummed\&.
|
|
.SH "EXAMPLE: UPDATE AN OSTREE COMMIT"
|
|
.sp
|
|
.if n \{\
|
|
.RS 4
|
|
.\}
|
|
.nf
|
|
# Initialize a checkout and mount
|
|
$ ostree \-\-repo=repo checkout somebranch branch\-checkout
|
|
$ mkdir mnt
|
|
$ rofiles\-fuse branch\-checkout mnt
|
|
|
|
# Now, arbitrary changes to mnt/ are reflected in branch\-checkout
|
|
$ echo somenewcontent > mnt/anewfile
|
|
$ mkdir mnt/anewdir
|
|
$ rm mnt/someoriginalcontent \-rf
|
|
|
|
# Commit and cleanup
|
|
$ fusermount \-u mnt
|
|
$ ostree \-\-repo=repo commit \-\-link\-checkout\-speedup \-b somebranch \-s \*(AqCommit new content\*(Aq \-\-tree=dir=branch\-checkout
|
|
$ rm mnt branch\-checkout \-rf
|
|
|
|
.fi
|
|
.if n \{\
|
|
.RE
|
|
.\}
|
|
.SH "SEE ALSO"
|
|
.PP
|
|
\fBostree\fR(1)
|