Я использую образ AWS Ubuntu.
В попытке настроить свою машину я поигрался с apt-get, чтобы добавить и удалить PostgreSql и некоторые из его модулей.
Теперь, когда я запускаю sudo apt-get install postgresql-9.3
, я получаю следующую ошибку:
Setting up postgresql-9.3 (9.3.10-0ubuntu0.14.04) ...
update-alternatives: using /usr/share/postgresql/9.3/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode
* Starting PostgreSQL 9.3 database server * Error: could not exec /usr/lib/postgresql/9.3/bin/pg_ctl /usr/lib/postgresql/9.3/bin/pg_ctl start -D /var/lib/postgresql/9.3/main -s -o -c config_file="/etc/postgresql/9.3/main/postgresql.conf" : No such file or directory
Единственный отсутствующий файл / каталог - / var / lib / postgresql / 9.3 / main
Я пробовал:
sudo apt-get remove postgresql-9.3
и повторная установка Ошибка все еще возникает.
Что я делаю не так? Как я могу это исправить?
Насколько я понимаю, вы удалили кластер при деинсталляции, и он не создается автоматически.
Повторное создание кластера должно решить проблему:
mkdir /var/lib/postgresql/9.3/main
chown postgres /var/lib/postgresql/9.3/main
su postgres
/usr/lib/postgresql/9.3/bin/pg_ctl -D /var/lib/postgresql/9.3/main initdb
Возможно, вам потребуется заменить postgres с учетной записью пользователя базы данных, которая используется в ubuntu.
Дополнительные сведения см. в руководстве postgres: http://www.postgresql.org/docs/current/static/creating-cluster.html