Назад | Перейти на главную страницу

Redis не работает только при запуске

Redis не запускается каждый раз, когда я запускаю наш сервер CentOS 7 / openvas. После загрузки сервера я могу без проблем запустить Redis вручную, используя systemctl start redis.service.

Ниже приведены соответствующие части из journalctl

Jan 29 06:29:28 openvas01 systemd[1]: Reached target Network is Online.
Jan 29 06:29:28 openvas01 systemd[1]: Starting Network is Online.
Jan 29 06:29:28 openvas01 systemd[1]: Started Azure Linux Agent.
Jan 29 06:29:28 openvas01 systemd[853]: Failed at step RUNTIME_DIRECTORY spawning /usr/bin/redis-server: File exists
Jan 29 06:29:28 openvas01 systemd[1]: Starting Azure Linux Agent...
Jan 29 06:29:28 openvas01 systemd[1]: Started DNS caching server..
Jan 29 06:29:28 openvas01 systemd[1]: Starting DNS caching server....
Jan 29 06:29:28 openvas01 systemd[1]: redis.service: main process exited, code=exited, status=233/RUNTIME_DIRECTORY
Jan 29 06:29:28 openvas01 systemd[860]: Failed at step RUNTIME_DIRECTORY spawning /usr/libexec/redis-shutdown: File exists
Jan 29 06:29:28 openvas01 systemd[1]: redis.service: control process exited, code=exited status=233
Jan 29 06:29:28 openvas01 systemd[1]: Failed to start Redis persistent key-value database.
Jan 29 06:29:28 openvas01 systemd[1]: Unit redis.service entered failed state.
Jan 29 06:29:28 openvas01 systemd[1]: redis.service failed.

Я не могу сказать, какой файл уже существует. В /var/log/redis/redis.log ничего не упоминает об этой проблеме запуска, поэтому я думаю, что это связано с systemd.

Я поискал в Интернете и не нашел очевидных решений. Служба не настроена на запуск как демон, и у меня supervised systemd в файле конфигурации redis.

Любые идеи?

После устранения неполадок я понял, что /var/run/redis каталог создавался каким-то другим процессом, а не redis systemd служба. Дальнейшее устранение неполадок показало, что наш администратор сервера неожиданно создал /etc/tmpfiles.d/redis.conf это создавало /var/run/redis каталог до обслуживания. Удаление этого файла, в котором был только этот каталог, решило проблему.

Попробуйте добавить в конфигурационный файл службы systemd

[Service]
Type=forking