quick_update.sh aktualisiert

This commit is contained in:
2026-05-23 15:12:16 +02:00
parent 4337987913
commit 0270493387
+40 -80
View File
@@ -1,118 +1,78 @@
sudo tee /usr/local/bin/update-dolibarr.sh > /dev/null << 'EOF'
#!/bin/bash #!/bin/bash
set -e set -e
VERSION="23.0.3" VERSION="23.0.3"
BACKUPDIR="/root/dolibarr-backup-$(date +%F-%H%M)"
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
BACKUPDIR="/root/dolibarr-backup-$DATE"
INSTALLDIR="/usr/share/dolibarr" INSTALLDIR="/usr/share/dolibarr"
OLDDIR="/usr/share/dolibarr-old" OLDDIR="/usr/share/dolibarr-old"
TMPDIR="/tmp/dolibarr-update" TMPDIR="/tmp/dolibarr-update"
CONF="/etc/dolibarr/conf.php"
echo "=========================================" echo "=== Dolibarr Update startet ==="
echo " Dolibarr Quick Update"
echo "========================================="
echo ""
echo "[1/10] Arbeitsverzeichnis vorbereiten..." mkdir -p $BACKUPDIR
rm -rf "$TMPDIR" mkdir -p $TMPDIR
mkdir -p "$TMPDIR"
echo "[2/10] Backup-Verzeichnis erstellen..." echo "=== Backup Dateien ==="
mkdir -p "$BACKUPDIR" tar -czf $BACKUPDIR/dolibarr-files.tar.gz $INSTALLDIR
echo "[3/10] Dateien sichern..." echo "=== DB Daten auslesen ==="
if [ ! -d "$INSTALLDIR" ]; then DB_NAME=$(grep dolibarr_main_db_name /etc/dolibarr/conf.php | cut -d"'" -f2)
echo "FEHLER:" DB_USER=$(grep dolibarr_main_db_user /etc/dolibarr/conf.php | cut -d"'" -f2)
echo "$INSTALLDIR nicht gefunden" DB_PASS=$(grep dolibarr_main_db_pass /etc/dolibarr/conf.php | cut -d"'" -f2)
exit 1
fi
tar -czf "$BACKUPDIR/dolibarr-files.tar.gz" "$INSTALLDIR" echo "=== SQL Backup ==="
echo "[4/10] Datenbankdaten lesen..." mysqldump -u $DB_USER -p$DB_PASS $DB_NAME \
> $BACKUPDIR/dolibarr.sql
if [ ! -f "$CONF" ]; then echo "=== Download Dolibarr $VERSION ==="
echo "FEHLER:"
echo "$CONF nicht gefunden"
exit 1
fi
DB_NAME=$(grep dolibarr_main_db_name "$CONF" | cut -d"'" -f2) cd $TMPDIR
DB_USER=$(grep dolibarr_main_db_user "$CONF" | cut -d"'" -f2)
DB_PASS=$(grep dolibarr_main_db_pass "$CONF" | cut -d"'" -f2)
if [ -z "$DB_NAME" ]; then wget https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/$VERSION/dolibarr-$VERSION.tgz/download -O dolibarr.tgz
echo "FEHLER: Datenbankname leer"
exit 1
fi
echo "DB: $DB_NAME" echo "=== Entpacken ==="
echo "[5/10] SQL Backup..."
mariadb-dump
-u"$DB_USER"
-p"$DB_PASS"
--databases "$DB_NAME" \
> "$BACKUPDIR/dolibarr.sql"
echo "[6/10] Neue Version herunterladen..."
cd "$TMPDIR"
DOWNLOAD_URL="https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/${VERSION}/dolibarr-${VERSION}.tgz/download"
wget -O dolibarr.tgz "$DOWNLOAD_URL"
echo "[7/10] Entpacken..."
tar -xzf dolibarr.tgz tar -xzf dolibarr.tgz
echo "[8/10] Alte Installation sichern..." echo "=== Alte Installation sichern ==="
rm -rf "$OLDDIR" rm -rf $OLDDIR
mv $INSTALLDIR $OLDDIR
mv "$INSTALLDIR" "$OLDDIR" echo "=== Neue Version installieren ==="
mv "$TMPDIR/dolibarr-$VERSION" "$INSTALLDIR" mv $TMPDIR/dolibarr-$VERSION $INSTALLDIR
echo "[9/10] Konfiguration + Rechte..." echo "=== Konfiguration kopieren ==="
mkdir -p "$INSTALLDIR/htdocs/conf" cp /etc/dolibarr/conf.php $INSTALLDIR/htdocs/conf/
cp "$CONF" "$INSTALLDIR/htdocs/conf/conf.php" echo "=== Rechte setzen ==="
chown -R www-data:www-data "$INSTALLDIR"
chown -R www-data:www-data $INSTALLDIR
chown -R www-data:www-data /var/lib/dolibarr chown -R www-data:www-data /var/lib/dolibarr
echo "[10/10] install.lock setzen..." echo "=== Apache Neustart ==="
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
systemctl restart apache2 systemctl restart apache2
echo "=== install.lock setzen ==="
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 "=========================================" echo "====================================="
echo "Update vorbereitet" echo "Update vorbereitet."
echo "=========================================" echo "Jetzt im Browser aufrufen:"
echo "" echo ""
echo "Backup:"
echo "$BACKUPDIR"
echo ""
echo "Browser:"
echo "/dolibarr/install" echo "/dolibarr/install"
echo "" echo ""
echo "Datenbankmigration durchführen" echo "Danach Datenbankmigration durchführen."
echo "" echo "====================================="
EOF