#systemd #udev
#systemd #udev
Вопрос:
У меня есть служба systemd, монтирующая раздел UFS LU в / 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-analyze показывает, что bt_mount.service запускается до создания символьной ссылки, что и является причиной.
Я ищу в Google и узнаю, что systemd-udevd.service играет важную роль в создании этой символической ссылки, и она создаст их при запуске udevadm —trigger.
systemd-udevd.service
systemd-udevd-trigger.service
Я пытался добавить зависимость для службы, используя инструкцию ниже, но все то же самое.
After=systemd-udevd-trigger.service systemd-udevd.service
Итак, есть ли какой-либо способ разрешить запуск какой-либо службы после создания конкретной символической ссылки?