quick_update.sh aktualisiert
This commit is contained in:
+46
-50
@@ -2,28 +2,14 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
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"
|
VERSION="23.0.3"
|
||||||
|
DATE=$(date +"%Y-%m-%d_%H-%M-%S")
|
||||||
|
|
||||||
BACKUPDIR="/root/dolibarr-backup-$(date +%F-%H%M)"
|
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"
|
||||||
|
|
||||||
clear
|
|
||||||
|
|
||||||
echo "========================================="
|
echo "========================================="
|
||||||
echo " Dolibarr Quick Update"
|
echo " Dolibarr Quick Update"
|
||||||
echo "========================================="
|
echo "========================================="
|
||||||
@@ -40,70 +26,76 @@ mkdir -p "$BACKUPDIR"
|
|||||||
|
|
||||||
echo "[3/10] Dateien sichern..."
|
echo "[3/10] Dateien sichern..."
|
||||||
|
|
||||||
tar -czf "$BACKUPDIR/dolibarr-files.tar.gz" "$INSTALLDIR"
|
tar -czf
|
||||||
|
"$BACKUPDIR/dolibarr-files.tar.gz"
|
||||||
|
"$INSTALLDIR"
|
||||||
|
|
||||||
echo "[4/10] Datenbankdaten lesen..."
|
echo "[4/10] Datenbankdaten lesen..."
|
||||||
|
|
||||||
DB_NAME=$(grep dolibarr_main_db_name /etc/dolibarr/conf.php | cut -d"'" -f2)
|
CONF="/etc/dolibarr/conf.php"
|
||||||
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)
|
if [ ! -f "$CONF" ]; then
|
||||||
|
echo "FEHLER: Dolibarr Konfiguration nicht gefunden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
DB_NAME=$(grep "dolibarr_main_db_name" "$CONF" | sed "s/.*='(.*)'.*/\1/")
|
||||||
|
DB_USER=$(grep "dolibarr_main_db_user" "$CONF" | sed "s/.*='(.*)'.*/\1/")
|
||||||
|
DB_PASS=$(grep "dolibarr_main_db_pass" "$CONF" | sed "s/.*='(.*)'.*/\1/")
|
||||||
|
|
||||||
|
if [ -z "$DB_NAME" ] || [ -z "$DB_USER" ]; then
|
||||||
|
echo "FEHLER: Datenbankdaten konnten nicht gelesen werden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
echo "[5/10] SQL Backup..."
|
echo "[5/10] SQL Backup..."
|
||||||
|
|
||||||
mysqldump
|
mariadb-dump
|
||||||
-u"$DB_USER"
|
-u"$DB_USER"
|
||||||
-p"$DB_PASS"
|
-p"$DB_PASS"
|
||||||
"$DB_NAME" \
|
"$DB_NAME" \
|
||||||
|
|
||||||
> "$BACKUPDIR/dolibarr.sql"
|
> "$BACKUPDIR/dolibarr.sql"
|
||||||
|
|
||||||
echo "[6/10] install.lock entfernen..."
|
echo "[6/10] Neue Dolibarr Version herunterladen..."
|
||||||
|
|
||||||
rm -f /var/lib/dolibarr/documents/install.lock
|
|
||||||
|
|
||||||
echo "[7/10] Dolibarr $VERSION herunterladen..."
|
|
||||||
|
|
||||||
cd "$TMPDIR"
|
cd "$TMPDIR"
|
||||||
|
|
||||||
wget
|
wget
|
||||||
"https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/$VERSION/dolibarr-$VERSION.tgz/download"
|
https://sourceforge.net/projects/dolibarr/files/Dolibarr%20ERP-CRM/$VERSION/dolibarr-$VERSION.tgz/download
|
||||||
-O dolibarr.tgz
|
-O dolibarr.tgz
|
||||||
|
|
||||||
echo "[8/10] Entpacken..."
|
echo "[7/10] Entpacken..."
|
||||||
|
|
||||||
tar -xzf dolibarr.tgz
|
tar -xzf dolibarr.tgz
|
||||||
|
|
||||||
echo "[9/10] Installation austauschen..."
|
echo "[8/10] Alte Installation sichern..."
|
||||||
|
|
||||||
rm -rf "$OLDDIR"
|
rm -rf "$OLDDIR"
|
||||||
|
|
||||||
mv "$INSTALLDIR" "$OLDDIR"
|
mv
|
||||||
|
"$INSTALLDIR"
|
||||||
|
"$OLDDIR"
|
||||||
|
|
||||||
mv "$TMPDIR/dolibarr-$VERSION" "$INSTALLDIR"
|
mv
|
||||||
|
"$TMPDIR/dolibarr-$VERSION"
|
||||||
|
"$INSTALLDIR"
|
||||||
|
|
||||||
echo "[10/10] Konfiguration übernehmen..."
|
echo "[9/10] Konfiguration und Rechte setzen..."
|
||||||
|
|
||||||
cp /etc/dolibarr/conf.php
|
cp
|
||||||
|
/etc/dolibarr/conf.php
|
||||||
"$INSTALLDIR/htdocs/conf/"
|
"$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 "$INSTALLDIR"
|
||||||
chown -R www-data:www-data /var/lib/dolibarr
|
|
||||||
|
|
||||||
echo "Apache neu starten..."
|
chown -R www-data:www-data
|
||||||
|
/var/lib/dolibarr
|
||||||
|
|
||||||
systemctl restart apache2
|
echo "[10/10] install.lock setzen..."
|
||||||
|
|
||||||
echo "install.lock wieder erstellen..."
|
touch
|
||||||
|
/var/lib/dolibarr/documents/install.lock
|
||||||
touch /var/lib/dolibarr/documents/install.lock
|
|
||||||
|
|
||||||
chown www-data:www-data
|
chown www-data:www-data
|
||||||
/var/lib/dolibarr/documents/install.lock
|
/var/lib/dolibarr/documents/install.lock
|
||||||
@@ -111,15 +103,19 @@ chown www-data:www-data
|
|||||||
chmod 644
|
chmod 644
|
||||||
/var/lib/dolibarr/documents/install.lock
|
/var/lib/dolibarr/documents/install.lock
|
||||||
|
|
||||||
|
systemctl restart apache2
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "========================================="
|
echo "========================================="
|
||||||
echo " Update vorbereitet"
|
echo " Update vorbereitet"
|
||||||
|
echo "========================================="
|
||||||
echo ""
|
echo ""
|
||||||
echo "Backups gespeichert unter:"
|
echo "Backup:"
|
||||||
echo "$BACKUPDIR"
|
echo "$BACKUPDIR"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Jetzt im Browser öffnen:"
|
echo "Jetzt im Browser öffnen:"
|
||||||
|
echo ""
|
||||||
echo "/dolibarr/install"
|
echo "/dolibarr/install"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Danach Datenbankmigration durchführen"
|
echo "Danach die Datenbankmigration ausführen."
|
||||||
echo "========================================="
|
echo ""
|
||||||
|
|||||||
Reference in New Issue
Block a user