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

Как установить PostgreSQL для работы под другим системным пользователем, отличным от «postgres»?

Я устанавливаю PostgreSQL на RedHat Linux с помощью установщиков rpm, и я пытаюсь сделать так, чтобы приложение принадлежало и запускалось другим пользователем системы, а не postgres, например dbuser5. Кажется, я мог бы изменить разрешения для файлов приложения и базы данных postgres после установки, но тогда в сценарии /etc/init.d/postgresql все еще будут ссылки на пользователя системы postgres. Поскольку могут быть другие файлы, которые ссылаются на этого пользователя системы по умолчанию, я надеюсь, что есть какой-то лучший способ сделать это.

Предпочтительно, я хотел бы настроить это во время установки, но если мне придется сделать это постфактум, это тоже должно сработать.

Остановите сервер базы данных, измените владельца каталога данных Postgres, обновите сценарии запуска, указав правильного пользователя, и снова запустите сервер базы данных.
Задокументируйте свои изменения так что тот, кто ожидает, что Postgres будет работать как традиционная учетная запись пользователя Postgres, не будет неприятно удивлен.

Если вы используете пакетную установку Postgres RedHat (установленную из yum / RPM), вам необходимо знать об этом изменении и обязательно проверять сценарий запуска при обновлении, чтобы убедиться, что он не был перезаписан.