PREIN
/bin/sh
/usr/share/rpm-helper/add-user postgresql $1 postgres /var/lib/pgsql /bin/bash
if [ ! -e /var/log/postgresql ]; then
touch /var/log/postgresql
fi
chown postgres.postgres /var/log/postgresql
chmod 0700 /var/log/postgresql
if [ $1 -gt 1 ]
then
if [ ! -d /usr/lib64/pgsql/backup ]; then
mkdir -p /usr/lib64/pgsql/backup > /dev/null
fi
pushd /usr/bin > /dev/null
cp -fp postmaster postgres /usr/lib64/pgsql/backup > /dev/null
popd > /dev/null
fi
PREUN
/bin/sh
/usr/share/rpm-helper/del-service postgresql $1 postgresql
# Backup the database
#if [ -f /var/lock/subsys/postgresql ]
#then
# if [ -f /var/lib/pgsql/pgsql/backups/pg_db_backup ]; then
# echo "A backup of your database is stored in file /var/lib/pgsql/pgsql/backups/pg_db_backup.\n" >> /var/log/postgresql
# mv /var/lib/pgsql/data /var/lib/pgsql/backup_data
# echo "Data folder (where your database is) backup'ed in /var/lib/pgsql/backup_data.\n" >> /var/log/postgresql
# fi
#else
# pg_dumpall > /var/lib/pgsql/pgsql/backups/pg_db_backup
# if [ -f /var/lib/pgsql/pgsql/backups/pg_db_backup ]; then
# echo "A backup of your database is stored in file /var/lib/pgsql/pgsql/backups/pg_db_backup.\n" >> /var/log/postgresql
# mv /var/lib/pgsql/data /var/lib/pgsql/backup_data
# echo "Data folder (where your database is) backup'ed in /var/lib/pgsql/backup_data.\n" >> /var/log/postgresql
# fi
# else
# echo "PostgreSQL service can't start. Backup not done.\n" >> /var/log/postgresql
# fi
#fi
POSTIN
/bin/sh
/sbin/ldconfig
su -l postgres -c "/usr/bin/postgres -T "verbose=2,query=2,syslog=0" >/dev/null 2>&1"
if [ ! -d /var/lib/pgsql/data ]; then mkdir -p /var/lib/pgsql/data; fi
chown postgres.postgres /var/lib/pgsql/data/
chmod 0700 /var/lib/pgsql/data/
# Restore the database
if [ $1 -gt 1 ]
then
/usr/bin/mdk-pgdump.sh /var/lib/pgsql/backups/pg_db_backup >>/var/log/postgresql 2>>/var/log/postgresql
if [ -f /var/lib/pgsql/pg_db_backup ]
then
if [ -d /var/lib/pgsql/data ]
then
rm -rf /var/lib/pgsql/backup_data
mv /var/lib/pgsql/data /var/lib/pgsql/backup_data
echo "Data folder (where your database is) backup'ed in /var/lib/pgsql/backup_data.\n" >>/var/log/postgresql 2>>/var/log/postgresql
fi
/usr/share/rpm-helper/add-service postgresql $1 postgresql
psql -e backup </var/lib/pgsql/pg_db_backup
echo "Your data is in the backup database. Rename the database if you need.\n" >>/var/log/postgresql 2>>/var/log/postgresql
else
if [ -f /var/lib/pgsql/backups/pg_db_backup ]
then
if [ -d /var/lib/pgsql/data ]
then
rm -rf /var/lib/pgsql/backup_data
mv /var/lib/pgsql/data /var/lib/pgsql/backup_data
echo "Data folder (where your database is) backup'ed in /var/lib/pgsql/backup_data.\n" >>/var/log/postgresql 2>>/var/log/postgresql
fi
/usr/share/rpm-helper/add-service postgresql $1 postgresql
psql -e backup </var/lib/pgsql/backups/pg_db_backup
echo "Your data is in the backup database. Rename the database if you need.\n" >>/var/log/postgresql 2>>/var/log/postgresql
fi
fi
else
/usr/share/rpm-helper/add-service postgresql $1 postgresql
fi
POSTUN
/bin/sh
/sbin/ldconfig
if [ $1 -ge 1 ]; then
/sbin/service postgresql condrestart >/dev/null 2>&1
fi
/usr/share/rpm-helper/del-user postgresql $1 postgres