quick_update.sh aktualisiert
This commit is contained in:
+73
-48
@@ -1,63 +1,88 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# ==========================================
|
set -euo pipefail
|
||||||
|
|
||||||
# Dolibarr Quick Update Workflow
|
VERSION="23.0.3"
|
||||||
|
|
||||||
# Für Proxmox / Debian / Ubuntu
|
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 ==="
|
||||||
|
|
||||||
DATE=$(date +%Y-%m-%d_%H-%M")
|
mkdir -p "$BACKUPDIR"
|
||||||
|
mkdir -p "$TMPDIR"
|
||||||
|
|
||||||
# Anpassen
|
echo "=== Backup Dateien ==="
|
||||||
|
|
||||||
DOLI_PATH="/var/www/dolibarr"
|
tar -czf "$BACKUPDIR/dolibarr-files.tar.gz" "$INSTALLDIR"
|
||||||
BACKUP_DIR="/root/dolibarr-backups"
|
|
||||||
DB_NAME="dolibarr"
|
|
||||||
DB_USER="dbuser"
|
|
||||||
|
|
||||||
mkdir -p "$BACKUP_DIR"
|
echo "=== DB Daten auslesen ==="
|
||||||
|
|
||||||
clear
|
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 "===================================="
|
echo "=== SQL Backup ==="
|
||||||
echo "Dolibarr Quick Update"
|
|
||||||
echo "===================================="
|
mysqldump -u "$DB_USER" -p"$DB_PASS" "$DB_NAME" \
|
||||||
|
|
||||||
|
> "$BACKUPDIR/dolibarr.sql"
|
||||||
|
|
||||||
|
echo "=== install.lock entfernen ==="
|
||||||
|
|
||||||
|
rm -f /var/lib/dolibarr/documents/install.lock
|
||||||
|
|
||||||
|
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 übernehmen ==="
|
||||||
|
|
||||||
|
cp /etc/dolibarr/conf.php
|
||||||
|
"$INSTALLDIR/htdocs/conf/"
|
||||||
|
|
||||||
|
cp -r
|
||||||
|
"$OLDDIR/htdocs/custom"
|
||||||
|
"$INSTALLDIR/htdocs/" 2>/dev/null || true
|
||||||
|
|
||||||
|
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 ==="
|
||||||
|
|
||||||
|
touch /var/lib/dolibarr/documents/install.lock
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "[1/5] Datenbank sichern..."
|
echo "================================"
|
||||||
mysqldump -u "$DB_USER" -p "$DB_NAME" \
|
echo "Update vorbereitet"
|
||||||
|
|
||||||
> "$BACKUP_DIR/db_$DATE.sql"
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "[2/5] Dateien sichern..."
|
echo "Browser öffnen:"
|
||||||
tar -czf
|
echo "/dolibarr/install"
|
||||||
"$BACKUP_DIR/files_$DATE.tar.gz"
|
|
||||||
"$DOLI_PATH"
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "[3/5] Bitte Snapshot in Proxmox erstellen"
|
echo "DB Migration ausführen"
|
||||||
read -p "Weiter mit Enter..."
|
echo "================================"
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "[4/5] Vor dem Update prüfen:"
|
|
||||||
echo "- Wartungsmodus aktiv?"
|
|
||||||
echo "- Genug Speicherplatz?"
|
|
||||||
echo "- Backup vorhanden?"
|
|
||||||
|
|
||||||
read -p "Weiter mit Enter..."
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "[5/5] Nach dem Update prüfen:"
|
|
||||||
echo "- Login"
|
|
||||||
echo "- Rechnungen"
|
|
||||||
echo "- PDF"
|
|
||||||
echo "- Module"
|
|
||||||
echo "- Cronjobs"
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "===================================="
|
|
||||||
echo "Quick Update abgeschlossen"
|
|
||||||
echo "===================================="
|
|
||||||
|
|||||||
Reference in New Issue
Block a user