From ba12e68e0561fe2e00ff2a8da73c809e5e4c6e2d Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Fri, 28 Nov 2025 20:04:18 +0000 Subject: Add fstab2s6rc (untested), prepare for 2.6.4.0 --- doc/fstab2s6rc.html | 136 ++++++++++++++++++++++++++++++++++++++++++++++++++++ doc/index.html | 7 ++- doc/upgrade.html | 5 +- 3 files changed, 145 insertions(+), 3 deletions(-) create mode 100644 doc/fstab2s6rc.html (limited to 'doc') diff --git a/doc/fstab2s6rc.html b/doc/fstab2s6rc.html new file mode 100644 index 0000000..388258a --- /dev/null +++ b/doc/fstab2s6rc.html @@ -0,0 +1,136 @@ + + + + + + s6-linux-utils: the fstab2s6rc program + + + + + + +

+s6-linux-utils
+Software
+skarnet.org +

+ +

The fstab2s6rc program

+ +

+ fstab2s6rc reads the /etc/fstab file, listing the filesystems and swap partitions +to mount at boot time, and builds a set of service definition directories from it, meant to +be fed to s6-rc-compile, having the +effect of mounting these partitions when run by s6-rc. +

+ +

+ This method has several advantages over the classic mount -a: +

+ + + +

+ fstab2s6rc is an offline tool. It does not perform mounts or unmounts itself; +it just converts the data in /etc/fstab, which is in a format usable by mount, +into a format usable — after compilation — by s6-rc. +

+ +

Interface

+ +
+     fstab2s6rc [ -A | -a ] [ -U | -u ] [ -E | -e ] [ -F fstab ] [ -m mode ] [ -B bundle ] [ -d basedep ] dir
+
+ + + +

Options

+ +
+
-F fstab, --fstab=fstab
+
Read mount point information from file fstab instead of /etc/fstab.
+ +
-m mode, --mode=mode
+
Create dir with permissions mode. mode is interpreted in octal.
+ +
-B bundle, --bundle=bundle
+
Create a bundle named bundle containing all the created services. +The mount point services will also be grouped under a bundle named bundle-mounts +and the swap services will be grouped under a bundle named bundle-swaps. +Services marked noauto will not be included in these bundles.
+ +
-d dep, --base-dependency=dep
+
Add a dependency to a service named dep to all the created services. +This is useful e.g. in a boot sequence to ensure that the mounts will not start before +a certain point.
+ +
-A, --include-noauto
+
Include mount points and swaps marked noauto in the output. These +services will not be marked as essential or recommended, and they will not be included +in any bundle, but they will be there. This is the default.
+ +
-a, --exclude-noauto
+
Exclude mount points and swaps marked noauto. No service will be created +for these fstab entries.
+ +
-U, --without-uuid
+
The created services will use s6-linux-utils commands such as +s6-mount and s6-swapon. +This makes the created services only depend on s6-linux-utils, but the fstab +entries must not contain util-linux-specific syntax such as UUID= or +LABEL= in place of device names. This is the default.
+ +
-u, --with-uuid
+
The created services will use util-linux commands such as +mount and +swapon. Running +the services will depend on having such commands installed, but syntax +for labels and uuids will be understood.
+ +
-E, --essential
+
Mark the services as essential, and do not create down scripts +for them. This makes services suitable to be part of a base init sequence where +all the listed filesystems are mounted early, and never unmounted until right +before the machine reboots. (noauto entries will not be marked as +essential.) This is the default.
+ +
-e, --not-essential
+
Mark the services as recommended rather than essential; create down +scripts to unmount the filesystem. This makes services suitable for being called +later than the base init sequence, as an optional part of a system's +functionality. Stopping the services will unmount the +corresponding filesystems and turn off the corresponding swap devices. +noauto entries will not be marked as recommended.
+
+ +

Exit codes

+ +
+
0
Success.
+
1
Invalid fstab file.
+
100
Incorrect usage.
+
111
system call failed
+ + + + diff --git a/doc/index.html b/doc/index.html index 52c02ce..67fcb58 100644 --- a/doc/index.html +++ b/doc/index.html @@ -50,6 +50,8 @@ The Linux kernel must be 3.5 or later. 2.14.5.0 or later. It's a build-time requirement. It's also a run-time requirement if you link against the shared version of the skalibs library. +
  • execline version +2.9.8.0 or later. It's a build-time requirement.
  • Licensing

    @@ -63,8 +65,8 @@ library.