Files
Dolibarr-Update/quick_update.sh
T
2026-05-23 12:37:59 +02:00

126 lines
2.6 KiB
Bash
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
set -euo pipefail
# ==========================================
# Dolibarr Quick Update Script
# ==========================================
# Root-Rechte automatisch anfordern
if [ "$EUID" -ne 0 ]; then
echo "Root-Rechte erforderlich starte mit sudo..."
exec sudo bash "$0" "$@"
fi
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"
clear
echo "========================================="
echo " Dolibarr Quick Update"
echo "========================================="
echo ""
echo "[1/10] Arbeitsverzeichnis vorbereiten..."
rm -rf "$TMPDIR"
mkdir -p "$TMPDIR"
echo "[2/10] Backup-Verzeichnis erstellen..."
mkdir -p "$BACKUPDIR"
echo "[3/10] Dateien sichern..."
tar -czf "$BACKUPDIR/dolibarr-files.tar.gz" "$INSTALLDIR"
echo "[4/10] Datenbankdaten lesen..."
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 "[5/10] SQL Backup..."
mysqldump
-u "$DB_USER"
-p"$DB_PASS"
"$DB_NAME" \
> "$BACKUPDIR/dolibarr.sql"
echo "[6/10] install.lock entfernen..."
rm -f /var/lib/dolibarr/documents/install.lock
echo "[7/10] Dolibarr $VERSION herunterladen..."
cd "$TMPDIR"
wget
"https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/$VERSION/dolibarr-$VERSION.tgz/download"
-O dolibarr.tgz
echo "[8/10] Entpacken..."
tar -xzf dolibarr.tgz
echo "[9/10] Installation austauschen..."
rm -rf "$OLDDIR"
mv "$INSTALLDIR" "$OLDDIR"
mv "$TMPDIR/dolibarr-$VERSION" "$INSTALLDIR"
echo "[10/10] Konfiguration übernehmen..."
cp /etc/dolibarr/conf.php
"$INSTALLDIR/htdocs/conf/"
if [ -d "$OLDDIR/htdocs/custom" ]; then
cp -a
"$OLDDIR/htdocs/custom"
"$INSTALLDIR/htdocs/"
fi
echo "Setze Berechtigungen..."
chown -R www-data:www-data "$INSTALLDIR"
chown -R www-data:www-data /var/lib/dolibarr
echo "Apache neu starten..."
systemctl restart apache2
echo "install.lock wieder erstellen..."
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 "Backups gespeichert unter:"
echo "$BACKUPDIR"
echo ""
echo "Jetzt im Browser öffnen:"
echo "/dolibarr/install"
echo ""
echo "Danach Datenbankmigration durchführen"
echo "========================================="