1ROFILES-FUSE(1) rofiles-fuse ROFILES-FUSE(1)
2
3
4
6 rofiles-fuse - Use FUSE to create a view where directories are
7 writable, files are immutable
8
10 rofiles-fuse SRCDIR MNTPOINT
11
13 Creating a checkout from an OSTree repository by default uses hard
14 links, which means an in-place mutation to any file corrupts the
15 repository and all checkouts. This can be problematic if one wishes to
16 run arbitrary programs against such a checkout. For example, RPM %post
17 scripts or equivalent.
18
19 In the case where one wants to create a tree commit derived from other
20 content, using rofiles-fuse in concert with ostree commit
21 --link-checkout-speedup (or the underlying API) can ensure that only
22 new files are checksummed.
23
25 # Initialize a checkout and mount
26 $ ostree --repo=repo checkout somebranch branch-checkout
27 $ mkdir mnt
28 $ rofiles-fuse branch-checkout mnt
29
30 # Now, arbitrary changes to mnt/ are reflected in branch-checkout
31 $ echo somenewcontent > mnt/anewfile
32 $ mkdir mnt/anewdir
33 $ rm mnt/someoriginalcontent -rf
34
35 # Commit and cleanup
36 $ fusermount -u mnt
37 $ ostree --repo=repo commit --link-checkout-speedup -b somebranch -s 'Commit new content' --tree=dir=branch-checkout
38 $ rm mnt branch-checkout -rf
39
40
42 ostree(1)
43
44
45
46rofiles-fuse ROFILES-FUSE(1)