Files
2026-05-23 15:41:28 +02:00

117 lines
2.4 KiB
Bash

#!/bin/bash
set -e
echo "====================================="
echo " Dolibarr Quick Update"
echo "====================================="
echo ""
read -p "Welche Dolibarr-Version soll installiert werden? Beispiel 23.0.3: " VERSION
if [ -z "$VERSION" ]; then
echo "FEHLER: Keine Version angegeben"
exit 1
fi
BACKUPDIR="/root/dolibarr-backup-$(date +%F-%H%M)"
INSTALLDIR="/usr/share/dolibarr"
OLDDIR="/usr/share/dolibarr-old"
TMPDIR="/tmp/dolibarr-update"
echo ""
echo "=== Arbeitsverzeichnis vorbereiten ==="
rm -rf "$TMPDIR"
mkdir -p "$TMPDIR"
mkdir -p "$BACKUPDIR"
echo ""
echo "=== Backup Dateien ==="
tar -czf "$BACKUPDIR/dolibarr-files.tar.gz" "$INSTALLDIR"
echo ""
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 "Datenbank:"
echo "$DB_NAME"
echo ""
echo "=== SQL Backup ==="
mariadb-dump -u"$DB_USER" -p"$DB_PASS" --databases "$DB_NAME" \
> "$BACKUPDIR/dolibarr.sql"
echo ""
echo "=== Download Dolibarr $VERSION ==="
cd "$TMPDIR"
wget -O dolibarr.tgz "https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/$VERSION/dolibarr-$VERSION.tgz/download"
echo ""
echo "=== Entpacken ==="
tar -xzf dolibarr.tgz
echo ""
echo "=== Alte Installation sichern ==="
rm -rf "$OLDDIR"
mv "$INSTALLDIR" "$OLDDIR"
echo ""
echo "=== Neue Version installieren ==="
mv "$TMPDIR/dolibarr-$VERSION" "$INSTALLDIR"
echo ""
echo "=== Konfiguration zurückkopieren ==="
mkdir -p "$INSTALLDIR/htdocs/conf"
cp /etc/dolibarr/conf.php "$INSTALLDIR/htdocs/conf/conf.php"
echo ""
echo "=== Rechte setzen ==="
chown -R www-data:www-data "$INSTALLDIR"
chown -R www-data:www-data /var/lib/dolibarr
echo ""
echo "=== Apache Neustart ==="
systemctl restart apache2
echo ""
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 gespeichert unter:"
echo "$BACKUPDIR"
echo ""
echo "Jetzt im Browser aufrufen:"
echo ""
echo "/dolibarr/install"
echo ""
echo "Danach Datenbankmigration durchführen"
echo ""