#!/bin/bash set -e VERSION="23.0.3" BACKUPDIR="/root/dolibarr-backup-$(date +%F-%H%M)" INSTALLDIR="/usr/share/dolibarr" OLDDIR="/usr/share/dolibarr-old" TMPDIR="/tmp/dolibarr-update" echo "=== Dolibarr Update startet ===" mkdir -p "$BACKUPDIR" rm -rf "$TMPDIR" mkdir -p "$TMPDIR" echo "=== Backup Dateien ===" tar -czf "$BACKUPDIR/dolibarr-files.tar.gz" "$INSTALLDIR" echo "=== DB Daten auslesen ===" DB_NAME=$(grep dolibarr_main_db_name /etc/dolibarr/conf.php | cut -d"'" -f2) DB_USER=$(grep dolibarr_main_db_user /etc/dolibarr/conf.php | cut -d"'" -f2) DB_PASS=$(grep dolibarr_main_db_pass /etc/dolibarr/conf.php | cut -d"'" -f2) echo "=== SQL Backup ===" mariadb-dump -u"$DB_USER" -p"$DB_PASS" --databases "$DB_NAME" \ > "$BACKUPDIR/dolibarr.sql" echo "=== Download Dolibarr $VERSION ===" cd "$TMPDIR" wget "https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/$VERSION/dolibarr-$VERSION.tgz/download" -O dolibarr.tgz echo "=== Entpacken ===" tar -xzf dolibarr.tgz echo "=== Alte Installation sichern ===" rm -rf "$OLDDIR" mv "$INSTALLDIR" "$OLDDIR" echo "=== Neue Version installieren ===" mv "$TMPDIR/dolibarr-$VERSION" "$INSTALLDIR" echo "=== Konfiguration zurückkopieren ===" mkdir -p "$INSTALLDIR/htdocs/conf" cp /etc/dolibarr/conf.php "$INSTALLDIR/htdocs/conf/conf.php" echo "=== Rechte setzen ===" chown -R www-data:www-data "$INSTALLDIR" chown -R www-data:www-data /var/lib/dolibarr echo "=== Apache Neustart ===" systemctl restart apache2 echo "=== install.lock setzen ===" mkdir -p /var/lib/dolibarr/documents touch /var/lib/dolibarr/documents/install.lock chown www-data:www-data /var/lib/dolibarr/documents/install.lock chmod 644 /var/lib/dolibarr/documents/install.lock echo "" echo "=====================================" echo "Update vorbereitet" echo "=====================================" echo "" echo "Backup:" echo "$BACKUPDIR" echo "" echo "Danach im Browser öffnen:" echo "" echo "/dolibarr/install" echo "" echo "Datenbankmigration durchführen" echo "====================================="