Benutzer:Heernis/Profil-Sicherung
Aus EnzyklopAtys
< Benutzer:Heernis
Version vom 31. März 2019, 14:44 Uhr von Heernis (Diskussion | Beiträge)
- !/bin/bash
- Sicherung des Ryzom Profils
- Letzte Aktualisierung 30.03.2019
- Benötigt wird: sudo apt install p7zip-full
- Das Script erstellt bei Ausführung ein monatliche Sicherung.
- Wenn ein monatliche Sicherung vorhanden, erstellt es ein inkrementelle Sicherung,
- das nur Veränderungen im Bezug auf die letzte monatliche Sicherung, erstellt.
- 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)
- Verzeichnisse
DIR1="/data/ryzom_profile_backup" #Verzeichnis wohin gesichert wird DIR2="/home/$USER/.local/share/Ryzom" #Verzeichnis der Ryzom Profile
- Ausgeschlossene Verzeichnisse und Dateien
- EXCLUDE0="-xr!/home/$USER/.local/share/Ryzom/mods" #Modifikationen auslassen
- EXCLUDE1="-xr!/home/$USER/.local/share/Ryzom/0/music" #Musik im Profil 0 auslassen
- EXCLUDE2="-xr!/home/$USER/.local/share/Ryzom/0/screenshots" #Bildschirmaufnahmen im Profil 0 auslassen
- EXCLUDE3="-xr!*.tga -xr!*.png -xr!*.jpeg -xr!*.jpg -xr!*.gif" #Alle Bilder auslassen
- EXCLUDE4="-xr!*.mp3 -xr!*.ogg -xr!*.wav" #Alle Audio-Dateien auslassen
- EXCLUDE5="-xr!*.dds -xr!*.shape -xr!*.anim -xr!*.ps -xr!*.anim" #Alle Modifikationen auslassen
- EXCLUDE6="-xr!*.cache -xr!*.index -xr!*.string_client.pack -xr!*.string_cache -xr!hsts-list.save" #Cache auslassen
- EXCLUDE7="-xr!*.dmg -xr!*.log" #Log und Debug auslassen
- Komprimierungslevel
LEVEL="9" #Möglich ist 9 für Ultra bis 1 für Minimal
echo "Starte Sicherung...." echo " "
- Lösche alle Cache-Dateien (optional). Entferne #, wenn gewünscht.
- find $DIR2 -type f -name '*.cache' -exec rm {} \;
- find $DIR2 -type f -name 'cache.index' -exec rm {} \;
- find $DIR2 -type f -name 'string_client.pack' -exec rm {} \;
- find $DIR2 -type f -name '*.string_cache' -exec rm {} \;
- find $DIR2 -type f -name 'hsts-list.save' -exec rm {} \;
- Lösche Log und Debug Dateien (optional). Entferne #, wenn gewünscht.
- find $DIR2 -type f -name '*.log' -exec rm {} \;
- find $DIR2 -type f -name '*.dmg' -exec rm {} \;
- 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!"