28 lines
728 B
Bash
Executable File
28 lines
728 B
Bash
Executable File
#!/bin/sh
|
|
|
|
. /etc/default/postgresql
|
|
|
|
PGDATA="${PGDATA:-"$PGROOT/data"}"
|
|
|
|
if [ "$PGROOT" != "/var/lib/postgresql" ]; then
|
|
# 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/postgresql
|
|
fi
|
|
|
|
if [ ! -d "$PGDATA" ]; then
|
|
mkdir -p "$PGDATA"
|
|
chown -R postgres:postgres "$PGDATA"
|
|
chmod 0700 "$PGDATA"
|
|
su - postgres -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
|
|
|
|
exec chpst -u postgres:postgres postgres -D "$PGDATA" $PGOPTS
|