Вопрос или проблема
Вот таймер vsftpd-restart.timer
[Unit]
Description=Перезапуск vsftpd каждый день в 6 утра
After=network.target
[Timer]
Unit=vsftpd-restart.service
OnCalendar=*-*-* 06:00:00
Persistent=true
[Install]
WantedBy=timers.target
Это скрипт vsftpd-restart.service
[Unit]
Description=Перезапуск vsftpd каждый день в 6 утра
After=network.target
[Service]
Type=oneshot
ExecStart=/bin/bash -c 'systemctl stop vsftpd; systemctl start vsftpd'
[Install]
WantedBy=vsftpd-restart.timer
А вот лог systemctl для vsftpd
07 окт 06:00:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:00:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:00:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:00:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:00:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:01:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:01:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:01:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:01:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:01:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:02:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:02:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:02:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:02:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:02:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:03:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:03:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:03:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:03:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:03:02 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:04:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:04:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:04:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:04:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:04:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:05:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:05:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:05:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:05:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:05:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:06:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:06:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:06:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:06:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:06:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:07:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:07:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:07:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:07:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:07:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:08:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:08:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:08:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:08:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:08:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:09:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:09:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
07 окт 06:09:01 test systemd[1]: Остановлен vsftpd.service - FTP сервер vsftpd.
07 окт 06:09:01 test systemd[1]: Запуск vsftpd.service - FTP сервер vsftpd...
07 окт 06:09:01 test systemd[1]: Запущен vsftpd.service - FTP сервер vsftpd.
07 окт 06:10:01 test systemd[1]: Остановка vsftpd.service - FTP сервер vsftpd...
07 окт 06:10:01 test systemd[1]: vsftpd.service: Успешно деактивирован.
Ответ или решение
Для решения проблемы с некорректной периодичностью перезапуска службы vsftpd, вам необходимо изменить сторонние настройки, чтобы убедиться, что служба перезапускается только один раз в день, в 6:00. Давайте разберемся, что нужно сделать.
Шаги по исправлению конфигурации
-
Проверьте файл Timer:
Убедитесь, что файлvsftpd-restart.timer
настроен правильно. Он уже содержит настройки для срабатывания в 6:00, однако проблема может заключаться в следующем: -
Измените ваш Timer файл:
Откройте файлvsftpd-restart.timer
:sudo nano /etc/systemd/system/vsftpd-restart.timer
Убедитесь, что он выглядит следующим образом:
[Unit] Description=Restart vsftpd daily at 6 AM After=network.target [Timer] Unit=vsftpd-restart.service OnCalendar=*-*-* 06:00:00 Persistent=true [Install] WantedBy=timers.target
Обратите внимание, что настройка
OnCalendar=*-*-* 06:00:00
должна быть правильной. -
Статус службы:
Проверьте статус вашего таймера, чтобы убедиться, что он активен и будет запускаться как ожидалось. Выполните команду:systemctl list-timers --all
Убедитесь, что ваш таймер
vsftpd-restart.timer
активен и его срабатывание запланировано на 6:00. -
Перезапуск системного демона:
После внесенных изменений в файлы таймера и сервиса, вам нужно перезапустить системный демон для применения изменений:sudo systemctl daemon-reload
-
Перезапустите таймер:
Активируйте таймер с помощью команды:sudo systemctl enable vsftpd-restart.timer sudo systemctl start vsftpd-restart.timer
-
Логи:
Проверьте логи для выявления всех ошибок или предупреждений, которые могут указывать на проблемы:journalctl -u vsftpd-restart.service
Заключение
Теперь ваша служба vsftpd
должна перезапускаться только один раз в день, в 6:00. Убедитесь в правильности выполнения всех шагов и следите за логами для подтверждения успешного выполнения операции. Если проблема не решится, каким-либо образом может быть необходимо проверить и другие конфигурации и зависимости в вашем окружении.