Мне нужно настроить сервер лицензий на машине RHEL7 с systemd. Сервер лицензий должен запускаться при загрузке и загружать файл лицензии с общего диска в сети. Поэтому мне нужно дождаться запуска сети и завершения монтирования дисков NFS с помощью autofs. У меня есть этот файл службы:
[Unit]
Description=Flexnet license server
Wants=network.target network-online.target autofs.service
After=network.target network-online.target autofs.service
[Service]
Type=forking
User=licenseuser
Group=devusers
ExecStart=/soft/flexera/glnxa64/lmgrd -c /soft/licenses/license.dat -L /home/licenseuser/license.log
# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=300
[Install]
WantedBy=multi-user.target
Служба запускается после запуска autofs, но до того, как autofs смонтирует все диски, поэтому сервер лицензий не может быть запущен.
решение1
Вам следует добавить следующее
[Unit]
RequiresMountsFor=<path required>
Это обеспечит доступность пути перед запуском службы, а также смонтирует ее, если она еще не установлена (если только не указано noauto). Проверьте в своих man-страницах (man systemd.unit), поддерживается ли эта опция в вашей системе, так как моя довольно передовая.