]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
TEST-81-GENERATORS: Clean /proc/cmdline of unusual mounts
authorRichard Maw <richard.maw@codethink.co.uk>
Sat, 24 Feb 2024 18:13:59 +0000 (18:13 +0000)
committerRichard Maw <richard.maw@codethink.co.uk>
Fri, 26 Apr 2024 16:25:55 +0000 (17:25 +0100)
test/units/testsuite-81.fstab-generator.sh

index 4a69245ed878c2dcc31dd7ad390bdd09a7d2c726..e50419a0ecc3f6190672a0e425fa0d0042c53eda 100755 (executable)
@@ -13,6 +13,7 @@ OUT_DIR="$(mktemp -d /tmp/fstab-generator.XXX)"
 FSTAB="$(mktemp)"
 
 at_exit() {
+    mountpoint -q /proc/cmdline && umount /proc/cmdline
     rm -fr "${OUT_DIR:?}" "${FSTAB:?}"
 }
 
@@ -294,6 +295,12 @@ check_fstab_mount_units() {
     done
 }
 
+# Drop usrhash on the command-line so fstab-generator doesn't add a /dev/mapper
+# mount for /usr, add a root= to emulate a more typical environment,
+# and remove any systemd.mount-extra=
+sed -r -e 's/usrhash=[^[:space:]+]/root=\/dev\/sda2/' -e 's/systemd.mount-extra=[^[:space:]+]//g' /proc/cmdline >/tmp/cmdline.tmp
+mount --bind /tmp/cmdline.tmp /proc/cmdline
+
 : "fstab-generator: regular"
 printf "%s\n" "${FSTAB_GENERAL_ROOT[@]}" >"$FSTAB"
 cat "$FSTAB"