X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=src%2Ffunctions.sh;h=acc4dad7f6773db986db36c3d8fc23c7603944b1;hb=f917af08133389103ba492323f53aa02056ad84f;hp=27fa13d70be49857cf7237aa2cccd6a0183c0b21;hpb=593a505177247c3eedf76b9018b37c2b8be10789;p=carnet-upgrade.git diff --git a/src/functions.sh b/src/functions.sh index 27fa13d..acc4dad 100644 --- a/src/functions.sh +++ b/src/functions.sh @@ -823,9 +823,19 @@ disable_monit () { 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 @@ -852,7 +862,7 @@ pkgupgrade () { # 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 @@ -883,19 +893,35 @@ upgrade_amavis () { upgrade_freeradius () { 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 } # handle openldap upgrade upgrade_openldap () { + # aai discovers database type from debconf + if [ -f /etc/ldap/slapd.conf ] && grep -q ^database.*bdb /etc/ldap/slapd.conf + then + echo set slapd/backend BDB | debconf-communicate >/dev/null + fi + # aai does not depend on the new openldap version pkgadd slapd pkgadd openldap-aai } +# 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 +} + # fix postgresql deinstallation during upgrade upgrade_postgresql () { if check_services show 2>&1 | grep -qw postgresql; then @@ -934,6 +960,10 @@ get_variable () { 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