Мне пришлось переустанавливать postgres почти 5 раз, но все равно безуспешно. Порт, похоже, не слушает 5432.
Всякий раз, когда я набираю
systemctl list-dependencies postgresql
, я вижу это так
● ├─postgresql@10-main.service
● ├─system.slice
● └─sysinit.target
● ├─apparmor.service
● ├─dev-hugepages.mount
● ├─dev-mqueue.mount
● ├─keyboard-setup.service
● ├─kmod-static-nodes.service
● ├─plymouth-read-write.service
● ├─plymouth-start.service
● ├─proc-sys-fs-binfmt_misc.automount
● ├─setvtrgb.service
● ├─sys-fs-fuse-connections.mount
● ├─sys-kernel-config.mount
● ├─sys-kernel-debug.mount
● ├─systemd-ask-password-console.path
● ├─systemd-binfmt.service
● ├─systemd-hwdb-update.service
● ├─systemd-journal-flush.service
● ├─systemd-journald.service
● ├─systemd-machine-id-commit.service
● ├─systemd-modules-load.service
● ├─systemd-random-seed.service
● ├─systemd-sysctl.service
● ├─systemd-timesyncd.service
● ├─systemd-tmpfiles-setup-dev.service
● ├─systemd-tmpfiles-setup.service
● ├─systemd-udev-trigger.service
● ├─systemd-udevd.service
● ├─systemd-update-utmp.service
● ├─cryptsetup.target
● ├─local-fs.target
● │ ├─-.mount
● │ ├─boot-efi.mount
● │ ├─systemd-fsck-root.service
● │ └─systemd-remount-fs.service
● └─swap.target
● └─swapfile.swap
с красным кружком рядом сpostgresql@10-main.service
. Однако, если я выполню
sudo /etc/init.d/postgresql status
, я получу следующий вывод:
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Thu 2019-11-21 15:19:29 +05; 5min ago
Process: 24403 ExecReload=/bin/true (code=exited, status=0/SUCCESS)
Process: 24368 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 24368 (code=exited, status=0/SUCCESS)
systemd[1]: Starting PostgreSQL RDBMS...
systemd[1]: Started PostgreSQL RDBMS.
systemd[1]: Reloading PostgreSQL RDBMS.
systemd[1]: Reloaded PostgreSQL RDBMS.
И затем, если я выполню
netstat -tulpn | grep :5432
Нет вывода. То же самое касается service postgresql start
Я не могу найти процесс с PID 24368, используя sudo lsof -i -P -n
В чем проблема?
РЕДАКТИРОВАТЬ
При установке postgres я заметил следующий вывод
Ver Cluster Port Status Owner Data directory Log file
10 main 5432 down postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
с последней строкой, выделенной красным цветом. Что это?
Кстати, обе папки пусты, я не могу проверить, что находится в этих файлах
РЕДАКТИРОВАТЬ
Наконец, после выполнения systemctl status postgresql@10-main.service
Понятно
● postgresql@10-main.service - PostgreSQL Cluster 10-main
Loaded: loaded (/lib/systemd/system/postgresql@.service; disabled; vendor preset: enabled)
Active: failed (Result: protocol) since Thu 2019-11-21 15:04:20 +05; 58min ago
Condition: start condition failed at Thu 2019-11-21 15:57:01 +05; 5min ago
└─ ConditionPathExists=/etc/postgresql/10/main/postgresql.conf was not met
systemd[1]: Starting PostgreSQL Cluster 10-main...
postgresql@10-main[22146]: Error: /usr/lib/postgresql/10/bin/pg_ctl /usr/lib/postgresql/10/bin/pg_ctl start -D /var/lib/postgresql/10/main -l
postgresql@10-main[22146]: 2019-11-21 15:04:20.265 +05 [22151] FATAL: private key file "/etc/ssl/private/ssl-cert-snakeoil.key" must be owne
postgresql@10-main[22146]: 2019-11-21 15:04:20.265 +05 [22151] LOG: database system is shut down
postgresql@10-main[22146]: pg_ctl: could not start server
postgresql@10-main[22146]: Examine the log output.
systemd[1]: postgresql@10-main.service: Can't open PID file /var/run/postgresql/10-main.pid (yet?) after start: No such file or directory
systemd[1]: postgresql@10-main.service: Failed with result 'protocol'.
systemd[1]: Failed to start PostgreSQL Cluster 10-main.