Benutzer:Heernis/Profil-Sicherung

Aus EnzyklopAtys

Wechseln zu: Navigation, Suche
  1. !/bin/bash
  2. Sicherung des Ryzom Profils
  3. Letzte Aktualisierung 30.03.2019
  4. Benötigt wird: sudo apt install p7zip-full
  5. Das Script erstellt bei Ausführung ein monatliche Sicherung.
  6. Wenn ein monatliche Sicherung vorhanden, erstellt es ein inkrementelle Sicherung,
  7. das nur Veränderungen im Bezug auf die letzte monatliche Sicherung, erstellt.
  8. Große Dateien, wie Musik, Mods oder Screenshots, können per Exclude-Variabel ausgelassen werden.

TODAY=$(date +%Y-%m-%d-%H:%M:%S) MONTH=$(date +%Y-%m)

  1. Verzeichnisse

DIR1="/data/ryzom_profile_backup" #Verzeichnis wohin gesichert wird DIR2="/home/$USER/.local/share/Ryzom" #Verzeichnis der Ryzom Profile

  1. Ausgeschlossene Verzeichnisse und Dateien
  2. EXCLUDE0="-xr!/home/$USER/.local/share/Ryzom/mods" #Modifikationen auslassen
  3. EXCLUDE1="-xr!/home/$USER/.local/share/Ryzom/0/music" #Musik im Profil 0 auslassen
  4. EXCLUDE2="-xr!/home/$USER/.local/share/Ryzom/0/screenshots" #Bildschirmaufnahmen im Profil 0 auslassen
  1. EXCLUDE3="-xr!*.tga -xr!*.png -xr!*.jpeg -xr!*.jpg -xr!*.gif" #Alle Bilder auslassen
  2. EXCLUDE4="-xr!*.mp3 -xr!*.ogg -xr!*.wav" #Alle Audio-Dateien auslassen
  1. EXCLUDE5="-xr!*.dds -xr!*.shape -xr!*.anim -xr!*.ps -xr!*.anim" #Alle Modifikationen auslassen
  1. EXCLUDE6="-xr!*.cache -xr!*.index -xr!*.string_client.pack -xr!*.string_cache -xr!hsts-list.save" #Cache auslassen
  2. EXCLUDE7="-xr!*.dmg -xr!*.log" #Log und Debug auslassen
  1. Komprimierungslevel

LEVEL="9" #Möglich ist 9 für Ultra bis 1 für Minimal

echo "Starte Sicherung...." echo " "

  1. Lösche alle Cache-Dateien (optional). Entferne #, wenn gewünscht.
  2. find $DIR2 -type f -name '*.cache' -exec rm {} \;
  3. find $DIR2 -type f -name 'cache.index' -exec rm {} \;
  4. find $DIR2 -type f -name 'string_client.pack' -exec rm {} \;
  5. find $DIR2 -type f -name '*.string_cache' -exec rm {} \;
  6. find $DIR2 -type f -name 'hsts-list.save' -exec rm {} \;
  1. Lösche Log und Debug Dateien (optional). Entferne #, wenn gewünscht.
  2. find $DIR2 -type f -name '*.log' -exec rm {} \;
  3. find $DIR2 -type f -name '*.dmg' -exec rm {} \;
  1. Ryzom Profil Sicherung

if [ ! -f $DIR1/Ryzom-$MONTH.7z ]; then echo "Ryzom - Erstelle monatliche Sicherung." 7za a $DIR1/Ryzom-$MONTH.7z $DIR2 -mx=$LEVEL $EXCLUDE1 $EXCLUDE2 $EXCLUDE3 $EXCLUDE4 $EXCLUDE5 $EXCLUDE6 $EXCLUDE7 fi$EXCLUDE3 else echo "Ryzom - Erstelle aktuelle Sicherung." 7za u $DIR1/Ryzom-$MONTH $DIR2 -ms=off -mx=$LEVEL -t7z -u- -up0q3r2x2y2z0w2!$DIR1/Ryzom-$TODAY.7z $EXCLUDE1 $EXCLUDE2 $EXCLUDE3 $EXCLUDE4 $EXCLUDE5 $EXCLUDE6 $EXCLUDE7 fi echo echo "Fertig!"