пусть служба systemd запускается после создания символической ссылки udev - PullRequest
1 голос
/ 12 марта 2019

У меня есть служба systemd, монтирующая раздел LU UFS в / mnt

## bt_mount.service ##
[Unit]
Description=Mount bt_firmware_a/b to /mnt

[Service]
Type=oneshot
PassEnvironment="SLOT"  ## "_a" or "_b", depends on the boot slot
ExecStart=/bin/mount -o noexec,nodev,ro /dev/disk/by-partlabel/bt_firmware${SLOT} /mnt

[Install]
WantedBy=local-fs.target

НО

Иногда не говорят, что «Специальное устройство / dev / disk / by-partlabel / bt_firmware_a не существует»

systemd-analysis показывает, что bt_mount.service запускается до создания символьной ссылки, что является причиной.

Я выполняю поиск в google и узнаю, что systemd-udevd.service играет важную роль для создания символической ссылки, и он создает их, когда udevadm --trigger.

systemd-udevd.service
systemd-udevd-trigger.service

Я пытался добавить зависимость для службы, используя приведенный ниже оператор, но все тот же.

After=systemd-udevd-trigger.service systemd-udevd.service

Итак, есть ли способ разрешить запуск некоторой службы после создания определенной символической ссылки ?

...