Я хотел установить pgAudit на моем 32-битном CentOS 6, я уже установил PostgreSQL 10 + pgAdmin4 из установщика запуска PostgreSQL Linux, который я скачал с DBEnterprise
Я следовал указаниям здесь , вот шаги, которые я выполнил:
git clone https://github.com/postgres/postgres.git
- перейдите в папку по
cd postgres
, а затем git checkout REL_10_STABLE
./configure
после этого make install -s
cd contrib
- Клонируйте расширение pgAudit с помощью
git clone https://github.com/pgaudit/pgaudit.git
cd pgaudit
git checkout REL_10_STABLE
make -s check
make install
Я застрял на шаге 8. Вот результат:
[root@localhost pgaudit]# make -s check
============== creating temporary instance ==============
============== initializing database system ==============
pg_regress: initdb failed
Examine /root/postgres/contrib/pgaudit/log/initdb.log for the reason.
Command was: "initdb" -D "/root/postgres/contrib/pgaudit/./tmp_check/data" --no-clean --no-sync > "/root/postgres/contrib/pgaudit/log/initdb.log" 2>&1
make: *** [check] Error 2
Я открыл файл initdb.log в /root/postgres/contrib/pgaudit/log/initdb.log
примерно так, как он мне сказал, и там написано:
Running in no-clean mode. Mistakes will not be cleaned up.
initdb: cannot be run as root
Please log in (using, e.g., "su") as the (unprivileged) user that will
own the server process.
Поэтому я попытался снова после входа в систему как postgres, вот результат:
bash-4.1$ make -s check
make[3]: stat: ../../src/include/utils/errcodes.h: Permission denied
/bin/sh: line 0: cd: utils/: Not a directory
make[3]: *** [../../src/include/utils/errcodes.h] Error 1
make[2]: *** [submake-errcodes] Error 2
make[1]: *** [submake-libpgport] Error 2
make: *** [submake] Error 2
Я действительно новичок как в Linux, так и в PostgreSQL, поэтому я не знаю, почему это не удалось и каково решение для этого.Заранее спасибо!