Vulpo One

Фикс Prosody на PostgreSQL в CentOS 7

Натолкнулся тут на не очень приятное поведение Prosody, хранящего данные в Посгресе. При перезапуске pg или даже если просто prosody запущен при загрузке раньше, чем pg, он не может найти данные и не работает. К счастью, для CentOS с systemd есть быстрый фикс, уменьшающий неприятности этой проблемы — надо лишь чуть-чуть подправить файл сервиса.

  1. Если бы у нас был новый systemd, мы бы набрали команду
systemctl edit prosody

и попали бы на шаг 2

  1. но systemd в CentOS 7 уже староват и там такой команды еще не было, так что делаем всё вручную
mkdir /etc/systemd/system/prosody.service.d
cd /etc/systemd/system/prosody.service.d
touch override.conf
  1. в override.conf помещаем следующий текст:
[Unit]
After=postgresql.service
Requires=postgresql.service
  1. даем systemd обновить конфиги
systemctl daemon-reload
  1. Профит! Теперь при запуске prosody будет пытаться сначала запустить и подождать postgres и перезапускаться при его перезапуске

Comments