В Ubuntu 14.04.5 LTS Я использую скрипт для перезапуска некоторых сервисов, когда возобновляется сертификат TLS, который используется. Скрипт запускается через root crontab. Любое изменение - сертификат TLS запускает команды для перезапуска служб и активации нового сертификата.
Когда выполняется команда service vsftpd restart, демона cron регистрирует следующую ошибку: vsftpd: unrecognized service
Излишне говорить, что service vsftpd restart работает так, как ожидалось, когда запускается в командной строке root.
Я также заметил, что vsftpd не отображается в списке сервисов при запуске service --status-all
Crontab для root
14 7 * * * /root/vesta-server-ssl-cert.sh
Ubuntu 14.04.5 LTS : Какая правильная команда помещается внутри скрипта для перезапуска службы vsftpd через root crontab?
У меня была такая же проблема с другими службами некоторое время назад; разрешил его с помощью initctl и не углубился, чтобы узнать, что происходит. Итак, попробуйте:
/sbin/initctl restart vsftpd
он должен работать.
О, я ненавижу эти ответы «это работает, не знаю почему», но это все, что у меня есть на данный момент.
Edit: Хорошо, теперь мне стало лучше. service - это скрипт оболочки, и он должен иметь / sbin в среде PATH, иначе он не сможет найти стоп-коды и запустить двоичные файлы, на которые он «перезапустится». Затем он использует сценарий /etc/init.d/, который он не может найти, поэтому он сообщает «непризнанный сервис»
TomTomTom
У меня была такая же проблема с другими службами некоторое время назад; разрешил его с помощью initctl и не углубился, чтобы узнать, что происходит. Итак, попробуйте:
/sbin/initctl restart vsftpd
он должен работать.
О, я ненавижу эти ответы «это работает, не знаю почему», но это все, что у меня есть на данный момент.
Edit: Хорошо, теперь мне стало лучше. service - это скрипт оболочки, и он должен иметь / sbin в среде PATH, иначе он не сможет найти стоп-коды и запустить двоичные файлы, на которые он «перезапустится». Затем он использует сценарий /etc/init.d/, который он не может найти, поэтому он сообщает «непризнанный сервис»
TomTomTom
У меня была такая же проблема с другими службами некоторое время назад; разрешил его с помощью initctl и не углубился, чтобы узнать, что происходит. Итак, попробуйте:
/sbin/initctl restart vsftpd
он должен работать.
О, я ненавижу эти ответы «это работает, не знаю почему», но это все, что у меня есть на данный момент.
Edit: Хорошо, теперь мне стало лучше. service - это скрипт оболочки, и он должен иметь / sbin в среде PATH, иначе он не сможет найти стоп-коды и запустить двоичные файлы, на которые он «перезапустится». Затем он использует сценарий /etc/init.d/, который он не может найти, поэтому он сообщает «непризнанный сервис»
TomTomTom