X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=src%2Ffunctions.sh;h=373422c6da006c9cbb254ff38ab5b6d5ae18ea76;hb=c20fbc944f5dc2ced8cacb90b79a2c6417151257;hp=d52a0e2f7f151ceffa3447eac346457c852d53ad;hpb=9923899dc3d2a2472707c5bb87557817b3848a75;p=carnet-upgrade.git diff --git a/src/functions.sh b/src/functions.sh index d52a0e2..373422c 100644 --- a/src/functions.sh +++ b/src/functions.sh @@ -367,7 +367,7 @@ check_upgrade () { if [ "$upgrade" ]; then notice " -Prije prelaska na Debian Squeeze potrebno je napraviti nadogradnju ovih paketa: +Prije prelaska na Debian stretch potrebno je napraviti nadogradnju ovih paketa: $upgrade Pokrenite: @@ -530,16 +530,18 @@ create_sources_list () { # backup old version if [ -f $sl -a ! -f $sl.$backup_ext ]; then - cp -av $sl $sl.$backup_ext + cp -v $sl $sl.$backup_ext fi # install new version - cp -av $sl_new $sl + cp -v $sl_new $sl notice "Novi sadrzaj datoteke /etc/apt/sources.list: `cat /etc/apt/sources.list`" fi + # make sure permissions are correct + chmod 0644 $sl rm $sl_new } @@ -744,6 +746,11 @@ restore_configs () { fi } +# load various debconf defaults +debconf_preload () { + echo libc6 libraries/restart-without-asking boolean true | debconf-set-selections +} + # temporary disable listchanges packages to reduce clutter during upgrade apt_listchanges () { local file command=$1 @@ -861,12 +868,11 @@ pkgupgrade () { fi } -# upgrade apache2/php5 +# upgrade apache2/pthp5 upgrade_apache2 () { pkgrm apache-common # prevents installation of apache2-suexec - pkgrm php5-suhosin # not available for wheezy - pkgupgrade libapache2-mod-php5 php5-cli php5-cn apache2-cn \ - php5-odbc + pkgupgrade libapache2-mod-php7.0 php7.0-cli php7.0-cn apache2-cn \ + php7.0-odbc mod-security-cn } upgrade_amavis () { @@ -879,19 +885,37 @@ upgrade_amavis () { fi done + # workaround for insserv complaining + if [ -x /sbin/insserv ]; then + if [ -r /etc/init.d/amavis.amavisd-new ]; then + /sbin/insserv amavis.amavisd-new + fi + fi + # install new packages pkgadd amavisd-cn amavisd-new + # workaround for insserv complaining + if [ -x /sbin/insserv ]; then + if [ -r /etc/init.d/amavis.amavisd-new ]; then + /sbin/insserv amavis.amavisd-new + fi + fi + # start new packages - /etc/init.d/amavisd-cn restart + ### By zelja, nema vise amavisd-cn, vjerujemo systemd-u + ### /etc/init.d/amavisd-cn restart + /etc/init.d/amavis restart } -# handle mysql 5.0 to 5.1 upgrade +# handle mysql upgrade upgrade_mysql () { - if pkg mysql-server || pkg mysql-server-5.1; then - pkgadd mysql-server - dpkg -P mysql-server-5.1 - /etc/init.d/mysql restart + if pkg mysql-server || pkg mysql-server-5.5 || \ + pkg mariadb-server || pkg mariadb-server-10.0 + then + pkgadd default-mysql-server + dpkg -P mysql-server mysql-server-5.5 mariadb-server-10.0 + service mysql restart fi } @@ -913,7 +937,27 @@ upgrade_postfix () { # upgrade the IMAP server upgrade_dovecot() { - if [ ! -f /etc/dovecot/conf.d/95-local ]; then + # Funkcija koju je dodao Valentin da popravi propuste u dovecot-cn + # Mičem zaostale konfiguracije iz conf.d i izlazim + + echo "CN: Prebacujem stare konfiguracije za dovecot 95-cn\*-backup.conf u /var/backups..." + test -f /etc/dovecot/conf.d/95-cn6-upgrade.conf && mv /etc/dovecot/conf.d/95-cn6-upgrade.conf /var/backups || true + test -f /etc/dovecot/conf.d/95-cn7-upgrade.conf && mv /etc/dovecot/conf.d/95-cn7-upgrade.conf /var/backups || true + test -f /etc/dovecot/conf.d/95-cn8-upgrade.conf && mv /etc/dovecot/conf.d/95-cn8-upgrade.conf /var/backups || true + + return 0 + + + + local local_conf=/etc/dovecot/conf.d/95-${backup_ext}.conf + + if [ -f /etc/dovecot/conf.d/95-local -a ! -f $local_conf ]; then + mv /etc/dovecot/conf.d/95-local $local_conf + sed -i 's/\/usr\/lib\/dovecot\/modules\/imap/\/usr\/lib\/dovecot\/modules/g' $local_conf + /etc/init.d/dovecot restart + fi + + if [ ! -f $local_conf ]; then pkgrm dovecot-cn # restore config @@ -943,7 +987,8 @@ upgrade_dovecot() { # install new version and restore local changes pkgadd dovecot-core - doveconf -n -c /etc/dovecot/dovecot.conf.$backup_ext > /etc/dovecot/conf.d/95-local + doveconf -n -c /etc/dovecot/dovecot.conf.$backup_ext > $local_conf + sed -i 's/\/user\/lib\/dovecot\/modules\/imap/\/usr\/lib\/dovecot\/modules/g' $local_conf pkgadd dovecot-cn fi @@ -1000,6 +1045,17 @@ get_variable () { echo $val } +# switch to rsyslog +upgrade_syslog() { + # libc6-dev prevents upgrade + if pkg libc6-dev; then + pkgrm libc6-dev + fi + + pkgadd rsyslog + dpkg -P sysklogd klogd +} + # restore munin configs for silent upgrade upgrade_munin () { local config backup hostname domain