|
|
Zeile 1: |
Zeile 1: |
− | <syntaxhighlight lang="bash">
| |
| #!/bin/bash | | #!/bin/bash |
| # Sicherung des Ryzom Profils | | # Sicherung des Ryzom Profils |
Zeile 24: |
Zeile 23: |
| #EXCLUDE4="-xr!*.mp3 -xr!*.ogg -xr!*.wav" #Alle Audio-Dateien auslassen | | #EXCLUDE4="-xr!*.mp3 -xr!*.ogg -xr!*.wav" #Alle Audio-Dateien auslassen |
| | | |
− | #EXCLUDE4="-xr!*.dds -xr!*.shape -xr!*.anim -xr!*.ps -xr!*.anim" #Alle Modifikationen auslassen | + | #EXCLUDE5="-xr!*.dds -xr!*.shape -xr!*.anim -xr!*.ps -xr!*.anim" #Alle Modifikationen auslassen |
| | | |
− | #EXCLUDE5="-xr!*.cache -xr!*.index -xr!*.string_client.pack -xr!*.string_cache -xr!hsts-list.save" #Cache auslassen | + | #EXCLUDE6="-xr!*.cache -xr!*.index -xr!*.string_client.pack -xr!*.string_cache -xr!hsts-list.save" #Cache auslassen |
− | #EXCLUDE6="-xr!*.dmg -xr!*.log" #Log und Debug auslassen | + | #EXCLUDE7="-xr!*.dmg -xr!*.log" #Log und Debug auslassen |
| | | |
| #Komprimierungslevel | | #Komprimierungslevel |
Zeile 58: |
Zeile 57: |
| echo | | echo |
| echo "Fertig!" | | echo "Fertig!" |
− | </syntaxhighlight>
| |
Version vom 31. März 2019, 15:44 Uhr
- !/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!"