X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=src%2Ffunctions.sh;h=c5156e60ff70a0954269729b1c2272a80f772569;hb=d3408f34d10c3b52d90b46293ec576a0a273b349;hp=beccc6d1e2f9f633b1bf58a1dd09cc50842fe749;hpb=4a91a17bc198fb1c3ccb2ab3379930ded4d6644f;p=carnet-upgrade.git diff --git a/src/functions.sh b/src/functions.sh index beccc6d..c5156e6 100644 --- a/src/functions.sh +++ b/src/functions.sh @@ -1177,38 +1177,6 @@ get_variable () { echo $val } -# preserve mail location on upgrade -upgrade_dovecot () { - local default_mail_env mail_location - - # check if already upgraded - if ! pkg dovecot-common lt 1.0; then - return - fi - - # save old mail location - default_mail_env=$(get_variable default_mail_env /etc/dovecot/dovecot.conf) - - # silently upgrade package - restore_file /etc/dovecot/dovecot.conf - pkgadd dovecot-cn - - # insert old mail location - mail_location=$(get_variable mail_location /etc/dovecot/dovecot.conf) - if [ "$default_mail_env" -a ! "$mail_location" ]; then - check_and_sed '^#mail_location[[:space:]]*=' \ - "s|#mail_location[[:space:]]*=.*|mail_location = $default_mail_env|" /etc/dovecot/dovecot.conf || return 0 - - if [ -x /etc/init.d/dovecot ]; then - if [ -x /usr/sbin/invoke-rc.d ]; then - /usr/sbin/invoke-rc.d dovecot restart - else - /etc/init.d/dovecot restart - fi - fi - fi -} - # restore munin configs for silent upgrade upgrade_munin () { local config backup hostname domain @@ -1297,19 +1265,26 @@ check_archives_space() { } check_kernel_space() { - local available_disk_space kernel_size + local available_disk_space kernel_size linux_images pkg ret available_disk_space=$(free_space /) - kernel_size=$(installed_size kernel-2.6-cn) + linux_images=$(apt-cache show kernel-2.6-cn | grep ^Depends: \ + | grep -o 'linux-image[^ ]*') + for pkg in $linux_images; do + kernel_size=$(installed_size $pkg) + ret=$? + [ $ret -eq 0 ] && break + done - if [ $? -ne 0 ]; then + if [ $ret -ne 0 ]; then log "Failed to get installed size, skipping check." return 0 fi log "Free space in /: ${available_disk_space}MB" + log "Kernel package: $pkg" log "Kernel size: ${kernel_size}MB" - if LC_ALL=C apt-get --yes --print-uris install kernel-2.6-cn \ + if LC_ALL=C apt-get -s install kernel-2.6-cn \ | grep -q '^kernel-2.6-cn is already the newest version.$' then log "Not checking free space in /: kernel-2.6-cn already installed"