slackbuilds/system/postgresql/setup.postgresql

36 lines
1.1 KiB
Bash

#!/bin/bash
#BLURB="PostgreSQL @PG_VERSION@"
PG_HOME=/var/lib/pgsql
PG_USER=postgres
PG_USER_ID=@UID@
PG_GROUP=postgres
PG_GROUP_ID=@GID@
PG_VERSION=@PG_VERSION@
echo "Adding PostgreSQL user and group..."
groupadd -g $PG_GROUP_ID $PG_GROUP
useradd -g $PG_GROUP -u $PG_USER_ID -d $PG_HOME -c PostgreSQL $PG_USER
mkdir -p $PG_HOME/$PG_VERSION/data
## default permissions
echo "Setting up permissions..."
chown -R $PG_USER:$PG_GROUP $PG_HOME
chmod 700 $PG_HOME
chmod 700 $PG_HOME/$PG_VERSION
chmod 700 $PG_HOME/$PG_VERSION/data
## database cluster
if [ ! -f $PG_HOME/$PG_VERSION/data/PG_VERSION ]; then
echo "Creating database cluster in $PG_HOME/$PG_VERSION/data..."
su $PG_USER -c "initdb -D $PG_HOME/$PG_VERSION/data --locale=en_US.UTF-8 -A md5 -W"
else
echo "*** WARNING ***" >&2
echo " There is already a database cluster in $PG_HOME/$PG_VERSION/data." >&2
echo " If you are upgrading from an older version of PostgreSQL" >&2
echo " you will have to 'dump' and 'restore' your database." >&2
echo " See PostgreSQL manual for more details." >&2
fi
echo "PostgreSQL post-installation setup completed"