X-Git-Url: http://ftp.carnet.hr/pub/carnet-debian/scm?a=blobdiff_plain;f=src%2Ffunctions.sh;h=9c81fc8bc35be5961f2e6a57080c2775e7441357;hb=644358dc5f855d3829ba97d23a3c4d556f0b304d;hp=ddcb7e0413e42b918c6f1506167be4e364735323;hpb=76df4be0475a22d848755eda27ce23845df70279;p=carnet-upgrade.git diff --git a/src/functions.sh b/src/functions.sh index ddcb7e0..9c81fc8 100644 --- a/src/functions.sh +++ b/src/functions.sh @@ -271,9 +271,11 @@ Prije prelaska na Debian Etch potrebno je napraviti nadogradnju ovih paketa: $upgrade Pokrenite: - 'apt-get dist-upgrade' + # apt-get update + # apt-get dist-upgrade ili: - 'apt-get install${upgrade}' + # apt-get update + # apt-get install${upgrade} Nakon toga ponovno pozovite ovu skriptu." log "carnet-upgrade aborted, upgrade of$upgrade needed." @@ -289,7 +291,8 @@ check_apache_version () { Prije prelaska na Debian Etch potrebno je napraviti nadogradnju sa Apache 1.3 na Apache 2.0. Pokrenite: - 'apt-get install apache2-cn' + # apt-get update + # apt-get install apache2-cn Nakon toga ponovno pozovite ovu skriptu." log "carnet-upgrade aborted, upgrade to apache2-cn needed." @@ -310,7 +313,7 @@ upgrade () { return 1 esac - for i in $packages + for i in $(echo $packages) do pkg $i && to_install="$to_install $i" done @@ -573,7 +576,7 @@ apt_listchanges () { # make a silent installation of carnet and srce keyrings install_keyrings () { pkgadd carnet-keyring srce-keyring - pkgadd dpkg apt debconf + pkgadd dpkg apt debconf python-apt dpkg-reconfigure carnet-keyring srce-keyring update @@ -616,7 +619,7 @@ upgrade_apache2 () { fi done - for package in $packages; do + for package in $(echo $packages); do pkgadd $package done } @@ -650,17 +653,26 @@ upgrade_amavis () { # fix openldap-aai postinst user handling upgrade_openldap () { - #pkgrm openldap-cn # deprecated - apt-get -y$s install openldap-aai || true # postinst fails - chown -R openldap:openldap /var/lib/ldap # fix slapd - /etc/init.d/slapd restart - dpkg --configure -a # try postinst again + pkg openldap-aai lt 2.3 || return 0 + + # slapd postinst fails if move_old_database is false + echo 'slapd slapd/move_old_database boolean true' | debconf-set-selections + pkgadd slapd + + # openldap-aai postinst fails here because of database permissions + if ! apt-get -y install openldap-aai; then + chown -R openldap:openldap /var/lib/ldap # fix slapd + /etc/init.d/slapd restart + + # try openldap-aai postinst again (also re-enables slurpd) + dpkg --configure -a + fi } # fix postgresql deinstallation during upgrade upgrade_postgresql () { if check_services show 2>&1 | grep -qw postgresql; then - pkgadd postgresql || apt-get -f install + apt-get install -y postgresql || apt-get -yf install fi }