nginx.service не запускается после монтирования

У меня есть nginx, который зависит от подключенного диска.

В моем nginx.service есть запись с RequiresMountsFor в сервисном модуле, например:

      [Unit]
RequiresMountsFor=/media/bar

Но похоже, что он все еще загружается раньше точки монтирования.

Мой cmd для монтирования выглядит так, а в заданиях cron @reboot:

      mount -o bg,nolock,noac,actimeo=0 192.168.1.5:/foo/bar /media/bar

Я не нахожу, где что-то идет не так. Вот конфигурация, показывающаяsystemctl show nginx.service

      ...
Before=multi-user.target shutdown.target
After=foo-bar.mount sysinit.target network.target -.mount system.slice basic.target systemd-journald.socket
RequiresMountsFor=/media/bar
...

1 ответ

Если вам нужно запустить именно после cron, вы можете добавить

      Requires=cronie.service

в вашем файле модуля, который будет ждать запуска crond, прежде чем пытаться использовать службу nginx.

Возможно, вам также повезет, переместив монтировку в/etc/fstabвместо cron. systemd автоматически выбирает оттуда монтируемые файлы и создает соответствующие файлы монтирования.

Другие вопросы по тегам