test-fstab-generator: add tests for mount options

This commit is contained in:
Yu Watanabe 2023-05-19 09:31:51 +09:00
parent 70bf9f62b9
commit 82c29dbee0
42 changed files with 302 additions and 0 deletions

View file

@ -35,6 +35,15 @@ for f in "$src"/test-*.input; do
SYSTEMD_LOG_LEVEL=debug SYSTEMD_IN_INITRD=yes SYSTEMD_PROC_CMDLINE="fstab=no $(cat "$f")" $generator "$out" "$out" "$out"
fi
# The option x-systemd.growfs creates symlink to system's systemd-growfs@.service in .mount.wants directory.
# The system that the test is currently running on may not have or may have outdated unit file.
# Let's replace the symlink with an empty file.
for i in "$out"/*/systemd-growfs@*.service; do
[[ -L "$i" ]] || continue
rm "$i"
touch "$i"
done
# For split-usr system
for i in "$out"/systemd-*.service; do
sed -i -e 's:ExecStart=/lib/systemd/:ExecStart=/usr/lib/systemd/:' "$i"

View file

@ -0,0 +1 @@
../mnt-requiredby.mount

View file

@ -0,0 +1 @@
../mnt-wantedby.mount

View file

@ -0,0 +1,5 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Requires=dev-sdx1.device
After=dev-sdx1.device

View file

@ -0,0 +1,4 @@
# Automatically generated by systemd-fstab-generator
[Unit]
After=systemd-growfs@mnt-growfs.service

View file

@ -0,0 +1 @@
../mnt-automount2.automount

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
After=foo.service
Before=local-fs.target
After=blockdev@dev-sdx3.target
[Mount]
What=/dev/sdx3
Where=/mnt/after
Options=x-systemd.after=foo.service

View file

@ -0,0 +1,9 @@
# Automatically generated by systemd-fstab-generator
[Unit]
SourcePath=/etc/fstab
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
[Automount]
Where=/mnt/automount1
TimeoutIdleSec=30min

View file

@ -0,0 +1,12 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx9.target
[Mount]
What=/dev/sdx9
Where=/mnt/automount1
Options=x-systemd.automount,x-systemd.idle-timeout=30m

View file

@ -0,0 +1,8 @@
# Automatically generated by systemd-fstab-generator
[Unit]
SourcePath=/etc/fstab
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
[Automount]
Where=/mnt/automount2

View file

@ -0,0 +1,11 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
After=blockdev@dev-sdx10.target
[Mount]
What=/dev/sdx10
Where=/mnt/automount2
Options=x-systemd.automount,nofail

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=foo.service
Before=local-fs.target
After=blockdev@dev-sdx4.target
[Mount]
What=/dev/sdx4
Where=/mnt/before
Options=x-systemd.before=foo.service

View file

@ -0,0 +1,12 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx13.target
[Mount]
What=/dev/sdx13
Where=/mnt/growfs
Options=x-systemd.growfs

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx12.target
[Mount]
What=/dev/sdx12
Where=/mnt/mkfs
Type=ext4
Options=x-systemd.makefs

View file

@ -0,0 +1 @@
../systemd-makefs@dev-sdx12.service

View file

@ -0,0 +1,12 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx15.target
[Mount]
What=/dev/sdx15
Where=/mnt/noauto
Options=noauto

View file

@ -0,0 +1,11 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
After=blockdev@dev-sdx16.target
[Mount]
What=/dev/sdx16
Where=/mnt/nofail
Options=nofail

View file

@ -0,0 +1,12 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx14.target
[Mount]
What=/dev/sdx14
Where=/mnt/pcrfs
Options=x-systemd.pcrfs

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
RequiresMountsFor=/hoge
Before=local-fs.target
After=blockdev@dev-sdx6.target
[Mount]
What=/dev/sdx6
Where=/mnt/reqmounts
Options=x-systemd.requires-mounts-for=/hoge

View file

@ -0,0 +1,12 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx8.target
[Mount]
What=/dev/sdx8
Where=/mnt/requiredby
Options=x-systemd.required-by=foo.service

View file

@ -0,0 +1,14 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
After=foo.service
Requires=foo.service
Before=local-fs.target
After=blockdev@dev-sdx5.target
[Mount]
What=/dev/sdx5
Where=/mnt/requires
Options=x-systemd.requires=foo.service

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx11.target
[Mount]
What=/dev/sdx11
Where=/mnt/rwonly
Options=x-systemd.rw-only
ReadWriteOnly=yes

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx2.target
[Mount]
What=/dev/sdx2
Where=/mnt/timeout
TimeoutSec=10min
Options=x-systemd.mount-timeout=10m

View file

@ -0,0 +1,12 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=local-fs.target
After=blockdev@dev-sdx7.target
[Mount]
What=/dev/sdx7
Where=/mnt/wantedby
Options=x-systemd.wanted-by=foo.service

View file

@ -0,0 +1,13 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
SourcePath=/etc/fstab
Before=initrd-root-fs.target
Requires=systemd-fsck-root.service
After=systemd-fsck-root.service
After=blockdev@dev-sdx1.target
[Mount]
What=/dev/sdx1
Where=/sysroot

View file

@ -0,0 +1,17 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Description=File System Check on /dev/sdx1
Documentation=man:systemd-fsck-root.service(8)
DefaultDependencies=no
BindsTo=dev-sdx1.device
Conflicts=shutdown.target
After=initrd-root-device.target local-fs-pre.target dev-sdx1.device
Before=shutdown.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/lib/systemd/systemd-fsck /dev/sdx1
TimeoutSec=0

View file

@ -0,0 +1,18 @@
# Automatically generated by systemd-fstab-generator
[Unit]
Description=Make File System on %f
Documentation=man:systemd-makefs@.service(8)
DefaultDependencies=no
BindsTo=%i.device
After=%i.device
Before=systemd-fsck@%i.service mnt-mkfs.mount
Conflicts=shutdown.target
Before=shutdown.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/lib/systemd/systemd-makefs ext4 /dev/sdx12
TimeoutSec=0

View file

@ -0,0 +1,16 @@
/dev/sdx1 /sysroot auto defaults 0 1
/dev/sdx2 /mnt/timeout auto x-systemd.mount-timeout=10m 0 0
/dev/sdx3 /mnt/after auto x-systemd.after=foo.service 0 0
/dev/sdx4 /mnt/before auto x-systemd.before=foo.service 0 0
/dev/sdx5 /mnt/requires auto x-systemd.requires=foo.service 0 0
/dev/sdx6 /mnt/reqmounts auto x-systemd.requires-mounts-for=/hoge 0 0
/dev/sdx7 /mnt/wantedby auto x-systemd.wanted-by=foo.service 0 0
/dev/sdx8 /mnt/requiredby auto x-systemd.required-by=foo.service 0 0
/dev/sdx9 /mnt/automount1 auto x-systemd.automount,x-systemd.idle-timeout=30m 0 0
/dev/sdx10 /mnt/automount2 auto x-systemd.automount,nofail 0 0
/dev/sdx11 /mnt/rwonly auto x-systemd.rw-only 0 0
/dev/sdx12 /mnt/mkfs ext4 x-systemd.makefs 0 0
/dev/sdx13 /mnt/growfs auto x-systemd.growfs 0 0
/dev/sdx14 /mnt/pcrfs auto x-systemd.pcrfs 0 0
/dev/sdx15 /mnt/noauto auto noauto 0 0
/dev/sdx16 /mnt/nofail auto nofail 0 0