mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-05 17:47:38 +08:00
34 lines
876 B
Plaintext
34 lines
876 B
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
set -e
|
||
|
|
||
|
. /etc/conf.d/postgresql
|
||
|
|
||
|
# 2nd clause is necessary to prevent symlinking the directory to itself when it
|
||
|
# doesn't exist yet
|
||
|
if [ ! /var/lib/postgres -ef "$PGROOT" ] && [ /var/lib/postgres != "$PGROOT" ]; then
|
||
|
echo "Creating symlink /var/lib/postgres -> $PGROOT"
|
||
|
|
||
|
# Remove /var/lib/postgres if empty dir, but not if symlink
|
||
|
if [ ! -L /var/lib/postgres ] && [ -d /var/lib/postgres ]; then
|
||
|
rmdir /var/lib/postgres
|
||
|
fi
|
||
|
|
||
|
ln -sf "$PGROOT" /var/lib/postgres
|
||
|
fi
|
||
|
|
||
|
PGDATA="$PGROOT/data"
|
||
|
|
||
|
if [ ! -d "$PGDATA" ]; then
|
||
|
echo "Initializing database in $PGDATA"
|
||
|
|
||
|
mkdir -p "$PGDATA"
|
||
|
chown -R postgres:postgres "$PGDATA"
|
||
|
|
||
|
su - postgres -m -c "/usr/bin/initdb $INITOPTS -D '$PGDATA'" >/dev/null
|
||
|
|
||
|
if [ -f /etc/postgresql/postgresql.conf ]; then
|
||
|
ln -sf /etc/postgresql/postgresql.conf "$PGDATA/postgresql.conf"
|
||
|
fi
|
||
|
fi
|