[systemd-devel] Help: Questions regarding systemd service order
Silvio Knizek
killermoehre at gmx.net
Tue Nov 12 10:20:50 UTC 2024
Am Dienstag, dem 12.11.2024 um 02:13 -0800 schrieb Tony Rodriguez:
> ```
> Hoping I can accomplish the following via a simple UNIT modification or
> service script?
>
>
> Questions:
>
> A) How can my service always runs "last" within local-fs-pre.target?
>
> For Example:
>
> Need my service to always run last within the local-fs-pre.target, even
> if others add another services later within local-fs-pre.target. Still
> want my service to always run last within this local-fs-pre.target.
>
> Note: I will not know services others may later add within the
> local-fs-pre.target
>
>
> B) How can I make my service run after all .mount(s) within
> local-fs-pre.target, before local-fs.target, especially if I don't know
> all the .mount(s)? The .mount files are located within
> /var/run/systemd/generator/*
>
> ls -l /var/run/systemd/generator/*.mount
> -rw-r--r-- 1 root root 390 Nov 12 00:59
> /var/run/systemd/generator/boot-efi.mount
> -rw-r--r-- 1 root root 449 Nov 12 00:59
> /var/run/systemd/generator/boot.mount
> -rw-r--r-- 1 root root 428 Nov 12 00:59
> /var/run/systemd/generator/home.mount
> -rw-r--r-- 1 root root 239 Nov 12 00:59 /var/run/systemd/generator/-.mount
> -rw-r--r-- 1 root root 424 Nov 12 00:59 /var/run/systemd/generator/tmp.mount
> -rw-r--r-- 1 root root 241 Nov 12 00:59 /var/run/systemd/generator/usr.mount
> -rw-r--r-- 1 root root 424 Nov 12 00:59 /var/run/systemd/generator/var.mount
>
> -rw-r--r-- 1 root root 424 Nov 12 00:59
> /var/run/systemd/generator/test.mount
>
>
> Appears the UNIT section doesn't support a wildcard for .mount(s)
>
> This doesn't work
>
> #After=local-fs-pre.target *.mount
>
> The following works, but have to hard code mounts. Would like to
> dynamically populate mounts for "After=" within my service file.
>
> After=local-fs-pre.target boot.mount boot-efi.mount -.mount usr.mount
> var.mount tmp.mount home.mount
> Before=local-fs.target
>
> [Unit]
> Description=mytest.service
> DefaultDependencies=no
> Wants=local-fs-pre.target
> After=local-fs-pre.target boot.mount boot-efi.mount -.mount usr.mount
> var.mount tmp.mount home.mount test.mount
> Before=local-fs.target
> ```
Hi Tony,
there is no "last", because every dependency can exists multiple times, but you can't have multiple "last". Doesn't make sense.
My suggestion would either be <man:systemd.automount> (via <man:fstab>) or [RequiresMountsFor=](man:systemd.unit).
For further help we would need to know what you actually want to achieve with your unit.
BR
Silvio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20241112/4efb9fee/attachment-0001.htm>
More information about the systemd-devel
mailing list