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

Невозможно установить пароль пользователя postgres

Попытка установить PostgreSQL с Ruby on Rails с Nginx на CentOS 6.5, используя следующее руководство: http://karolgalanciak.com/blog/2013/07/19/centos-6-4-server-setup-with-ruby-on-rails-nginx-and-postgresql/

После установки я пошел настраивать пользователя, поэтому выполнил команду sudo su postgres затем psql. Когда я это сделаю, я получаю следующую ошибку:

could not change directory to "/root": Permission denied
psql (9.3.4)

Не обращая на это внимания, я дал команду:

alter user postgres with password 'postgres-user-password';

Затем я пошел изменить метод аутентификации на md5 dy, выполнив:

sudo vi /var/lib/pgsql/9.3/data/pg_hba.conf

Когда я это сделаю, мне будет показано приглашение:

[sudo] password for postgres:

Независимо от того, какой пароль я ввожу, мне говорят Sorry, try again. хотя пароль - именно тот, который я только что установил.

Пробовал следовать инструкциям из этого сообщения от user716468, но не повезло: Какое имя пользователя / пароль суперпользователя по умолчанию для postgres после новой установки?

Когда я делаю sudo -u postgres psql postgres Мне сказали:

postgres is not in the sudoers file.  This incident will be reported.
You have new mail in /var/spool/mail/root

Что здесь не так?

Во-первых, всегда ВСЕГДА используйте либо -l, либо просто - при использовании sudo. Например, "sudo su - postgres"не"sudo su postgres". Это гарантирует, что вы правильно выбираете среду целевых пользователей.

Похоже, вы используете sudo как пользователь root. В этом нет необходимости. У пользователя root уже есть необходимые права.

Если вы хотите, чтобы пользователь использовал sudo, вам потребуется соответствующая запись конфигурации в / etc / sudoers. Поскольку учетная запись postgres является учетной записью службы, вам будет лучше не создание записи sudoers для postgres. Лучше просто выполнять работу как root или sudoing из «нормальной» учетной записи.