mount.composefs(8)

πŸ“¦ version 1.0.8, in ubuntu resolute, ubuntu stonking

✨ mount.composefs(8) ✨

okay bestie, this is the page for mount.composefs, living in the mount.composefs(8) slot of the manual (User Commands section, we're fancy like that πŸ’…). let's get into it 🫢


🌸 NAME 🌸

mount.composefs β€” mount a composefs filesystem image πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

mount.composefs [-o OPTIONS] IMAGE TARGETDIR

πŸ’œ DESCRIPTION πŸ’œ

so here's the vibe: the composefs project uses an EROFS image file to store metadata, and then one or more separate directories that hold content-addressed backing data for the regular files. it's giving split personality but make it intentional πŸ’…

mount.composefs mounts one of those EROFS files, combined with a given set of basedir, at the location you specify. you can call it directly, or use it as a mount helper by running mount -t composefs .... slay, flexible queen πŸ‘‘


πŸŽ€ OPTIONS πŸŽ€

the IMAGE argument you pass in must be a valid composefs (EROFS) metadata image, no exceptions bestie. and TARGETDIR is gonna be the mount target. periodt.

mount.composefs accepts the following colon-separated mount options when you pass them through the -o OPTIONS argument:

  • basedir=PATH β€” this path gets used to resolve non-empty file references stored in the composefs metadata image. the big main-character use case? making it the same path you gave to mkcomposefs --digest-store=PATH. you can specify multiple paths, separated by :. stack 'em up 🧚
  • digest=DIGEST β€” the image file gets validated to have the specified fs-verity digest before it's used. this builds a chain of trust that makes sure only the expected data is ever visible in the mount. πŸ”₯ also, this option implies verity. two for one, we love efficiency.
  • idmap=PATH β€” specify a path to a user namespace whose ID mapping should be used. the typical format for this kind of path is /proc/<pid>/ns/user πŸ‘‘
  • verity β€” if this is specified, all files in the IMAGE must specify an fs-verity digest, and all the files in the base dirs must have a matching fs-verity digest.
heads up bestie: this needs support for the overlayfs "verity" option in the kernel, which was added in 6.6rc1. no kernel support, no vibes 😭
  • ro β€” mounts the filesystem read-only. this is mainly useful when you're using upperdir, since unlayered composefs images are naturally readonly anyway. it's giving belt-and-suspenders ✨
  • rw β€” overrides a previous ro option. flip the switch, we're writable now πŸ’…
  • upperdir β€” specify an upper dir in the overlayfs mount that composefs uses. this lets you have a writable layer sitting on top of the composefs image. see the overlayfs docs for details πŸ“š
  • workdir β€” specifies an overlayfs workdir to go with upperdir. they're a package deal 🫢

🌈 SEE ALSO 🌈


and that's the whole page, bestie! πŸ’– this one's from the composefs project, filed under mount.composefs(8) in the manual β€” go forth and mount something iconic πŸ‘‘βœ¨πŸŒΈ

πŸ“¦ where this page comes from