PREIN
/bin/sh
getent group dpmmgr > /dev/null || groupadd -r dpmmgr
getent passwd dpmmgr > /dev/null || useradd -r -g dpmmgr \
-d /var/lib/dpm -s /bin/bash -c "DPM Manager" dpmmgr
exit 0
PREUN
/bin/sh
export LANG=C
if [ $1 = 0 ]; then
/usr/sbin/update-alternatives --display dpnsdaemon | \
grep currently | grep -q dpm-mysql && \
/sbin/service dpnsdaemon stop > /dev/null 2>&1 || :
/usr/sbin/update-alternatives --remove dpnsdaemon \
/usr/lib/dpm-mysql/dpnsdaemon
/usr/sbin/update-alternatives --display dpnsdaemon > /dev/null || \
/sbin/chkconfig --del dpnsdaemon > /dev/null 2>&1 || :
fi
POSTIN
/bin/sh
updatedpns () {
[ -r /etc/sysconfig/dpnsdaemon ] && . /etc/sysconfig/dpnsdaemon
[ -z "$NSCONFIGFILE" ] && NSCONFIGFILE=/etc/DPNSCONFIG
[ -r $NSCONFIGFILE ] || return 0
nscfg=$(cat $NSCONFIGFILE)
cfg1=$(echo $nscfg | cut -f1 -d@)
cfg2=$(echo $nscfg | cut -f2 -d@ -s)
user=$(echo $cfg1 | cut -f1 -d/)
passwd=$(echo $cfg1 | cut -f2 -d/ -s)
host=$(echo $cfg2 | cut -f1 -d/)
db=$(echo $cfg2 | cut -f2 -d/ -s)
[ -z "$user" ] && return 0
[ -z "$passwd" ] && return 0
[ -z "$host" ] && return 0
[ -z "$db" ] && db=cns_db
mycfg=$(mktemp)
cat > $mycfg <<-EOF
[client]
user=$user
password=$passwd
EOF
mysql="mysql --defaults-file=$mycfg --skip-column-names $db"
vmajor=$($mysql -e "select major from schema_version" 2>/dev/null)
vminor=$($mysql -e "select minor from schema_version" 2>/dev/null)
vpatch=$($mysql -e "select patch from schema_version" 2>/dev/null)
if [ -z "$vmajor" -o -z "$vminor" -o -z "$vpatch" ] ; then
rm $mycfg
return 0
fi
if [ $vmajor -eq 3 -a $vminor -eq 0 -a $vpatch -eq 0 ] ; then
$mysql <<-EOF
ALTER TABLE Cns_groupinfo ADD banned INTEGER;
ALTER TABLE Cns_userinfo ADD user_ca VARCHAR(255) BINARY;
ALTER TABLE Cns_userinfo ADD banned INTEGER;
CREATE INDEX linkname_idx ON Cns_symlinks(linkname(255));
UPDATE schema_version SET major = 3, minor = 1, patch = 0;
EOF
fi
rm $mycfg
return 0
}
updatedpns
/usr/sbin/update-alternatives --install /usr/sbin/dpnsdaemon dpnsdaemon \
/usr/lib/dpm-mysql/dpnsdaemon 20 \
--slave /usr/share/man/man8/dpnsdaemon.8.gz dpnsdaemon.8.gz \
/usr/lib/dpm-mysql/dpnsdaemon.8.gz \
--slave /usr/share/dpm/DPNSCONFIG.templ DPNSCONFIG.templ \
/usr/lib/dpm-mysql/DPNSCONFIG.templ \
--slave /etc/rc.d/init.d/dpnsdaemon dpnsdaemon.init \
/etc/dpm-mysql/dpnsdaemon.init \
--slave /etc/sysconfig/dpnsdaemon dpnsdaemon.conf \
/etc/dpm-mysql/dpnsdaemon.conf \
--slave /etc/logrotate.d/dpnsdaemon dpnsdaemon.logrotate \
/etc/dpm-mysql/dpnsdaemon.logrotate \
--slave /usr/sbin/dpns-shutdown dpns-shutdown \
/usr/lib/dpm-mysql/dpns-shutdown \
--slave /usr/share/man/man8/dpns-shutdown.8.gz dpns-shutdown.8.gz \
/usr/lib/dpm-mysql/dpns-shutdown.8.gz
if [ $1 = 1 ]; then
if [ -r /etc/rc.d/init.d/dpnsdaemon ]; then
/sbin/chkconfig --add dpnsdaemon
fi
fi
POSTUN
/bin/sh
export LANG=C
if [ $1 -ge 1 ]; then
/usr/sbin/update-alternatives --display dpnsdaemon | \
grep currently | grep -q dpm-mysql && \
/sbin/service dpnsdaemon condrestart > /dev/null 2>&1 || :
fi
Triggers
dpm-mysql-nameserver <
1.8.1.2-2
/bin/sh
# Restore alternatives removed by dpm-mysql-nameserver preun
/usr/sbin/update-alternatives --install /usr/sbin/dpnsdaemon dpnsdaemon \
/usr/lib/dpm-mysql/dpnsdaemon 20 \
--slave /usr/share/man/man8/dpnsdaemon.8.gz dpnsdaemon.8.gz \
/usr/lib/dpm-mysql/dpnsdaemon.8.gz \
--slave /usr/share/dpm/DPNSCONFIG.templ DPNSCONFIG.templ \
/usr/lib/dpm-mysql/DPNSCONFIG.templ \
--slave /etc/rc.d/init.d/dpnsdaemon dpnsdaemon.init \
/etc/dpm-mysql/dpnsdaemon.init \
--slave /etc/sysconfig/dpnsdaemon dpnsdaemon.conf \
/etc/dpm-mysql/dpnsdaemon.conf \
--slave /etc/logrotate.d/dpnsdaemon dpnsdaemon.logrotate \
/etc/dpm-mysql/dpnsdaemon.logrotate \
--slave /usr/sbin/dpns-shutdown dpns-shutdown \
/usr/lib/dpm-mysql/dpns-shutdown \
--slave /usr/share/man/man8/dpns-shutdown.8.gz dpns-shutdown.8.gz \
/usr/lib/dpm-mysql/dpns-shutdown.8.gz