apt-get remove --yes monit
# stop the binary
pkill -9 monit || true
+ # move away init for insserv to work
+ mv /etc/init.d/monit /var/lib/carnet-upgrade/
fi
}
+# allow monit to run again
+enable_monit () {
+ if [ -f /var/lib/carnet-upgrade/monit ]; then
+ mv /var/lib/carnet-upgrade/monit /etc/init.d/monit
+ pkgadd monit-cn
+ fi
+}
+
# check which of the given packages are installed
grep_installed () {
local package installed
# make a silent upgrade to new libc6
upgrade_libc () {
- DEBIAN_FRONTEND=noninteractive pkgupgrade libc6 libc6-dev tzdata udev
+ DEBIAN_FRONTEND=noninteractive pkgupgrade libc6 libc6-dev tzdata
}
# upgrade apache2/php5
# handle freerdius upgrade
upgrade_freeradius () {
- local template config_new password realm hostname basedn
-
- pkg freeradius-aai lt 2.1.3-0lenny0 || return 0
+ pkg freeradius-aai lt 2.1.10-1 || return 0
- # aai team prevents a clean upgrade
+ # aai team prevents a normal upgrade
cp -av /etc/freeradius /etc/freeradius.$backup_ext
pkgrm freeradius-aai freeradius-ldap freeradius
+ rm -rf /etc/freeradius/certs
pkgadd freeradius-aai
}
-# prepare for slapd upgrade (caused by freeradius installation)
-prepare_openldap () {
- pkg openldap-aai lt 2.4 || return 0
-
- # openldap-aai expects org.ldif to exists
- local ldif=/var/lib/ldap/org.ldif
- local ldif_backup=/var/lib/carnet-upgrade/org.ldif
- if [ -f $ldif ]; then
- cp -v $ldif $ldif_backup
- fi
-}
-
-# fix openldap-aai postinst user handling
-upgrade_openldap () {
- pkg openldap-aai lt 2.4 || return 0
-
- # slapd postinst fails if move_old_database is false
- echo 'slapd slapd/move_old_database boolean true' | debconf-set-selections
- pkgadd slapd
-
- # slapd removes org.ldif during switch from ldap -> openldap user
- local ldif=/var/lib/ldap/org.ldif
- local ldif_backup=/var/lib/carnet-upgrade/org.ldif
- if [ -f $ldif_backup -a ! -f $ldif ]; then
- cp -v $ldif_backup $ldif
- fi
-
- # openldap-aai postinst fails here because of database permissions
- apt-get -y install openldap-aai || true
- chown -R openldap:openldap /var/lib/ldap
- /etc/init.d/slapd restart
- dpkg --configure -a
-
- # remove ldap user if openldap works
- if getent passwd ldap > /dev/null && \
- getent passwd openldap > /dev/null && \
- pgrep -U openldap slapd > /dev/null
- then
- log "userdel ldap (replaced by openldap)"
- userdel ldap || true
+# handle mysql 5.0 to 5.1 upgrade
+upgrade_mysql () {
+ if pkg mysql-server || pkg mysql-server-5.0; then
+ pkgadd mysql-server
+ dpkg -P mysql-server-5.0
+ /etc/init.d/mysql restart
fi
}
upgrade_munin () {
local config backup hostname domain
+ # new htmldir location
+ mkdir -p /var/cache/munin
+ mv /var/www/munin /var/cache/munin/www
+
for pkg_name in munin munin-node; do
pkg $pkg_name lt '1.4.5-3' || continue