Я пытаюсь настроить новый сервис (под Debian Jessie), который должен настроить некоторые монтирования, где хранится конфигурация сети, и, таким образом, этот сервис должен завершиться до запуска network.service.
Я попробовал следующее:
[Unit]
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
#Before=network-pre.target
Before=networking.service
[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
RequiredBy=networking.service
Используя, systemd-analyze plotя вижу, что мой сервис запускается, но networking.serviceзапускается примерно на 3 секунды раньше:
Видимо мой конфиг неверен, но мне трудно найти проблему ... Любая помощь очень ценится ..
Обновить
В настоящее время я решил это, изменив конфигурацию службы, чтобы начать раньше local-fs.targetвместо networking.service:
[Unit]
DefaultDependencies=no
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
Before=local-fs.target
[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
RequiredBy=local-fs.target
Тем не менее, я хотел бы понять, почему моя первая конфигурация не работает должным образом ...?
/etc/network/interfacesесть ссылки на ip-upскрипты, которые находятся в другом разделе. Этот раздел монтируется сложным сценарием, /opt/intermodul-mounts/start.shкоторый должен быть запущен до настройки сети. В настоящее время ip-upсценарии фактически не запускаются, потому что они недоступны во время загрузки. Запуск service networking restartпосле этого корректно вызывает все интерфейсы.
