PlomWiki: Zur Start-Seite Suche Letzte Änderungen (Feed) Letzte Kommentare (Feed)
Impressum Datenschutz-Erklärung

WikiBackUpOld

Ansicht Bearbeiten Anzeige-Titel setzen Versions-Geschichte Seiten-Passwort setzen AutoLink-Anzeige ein-/ausschalten

(Veraltet; neuere Variante siehe hier: WikiBackUp)

Problembeschreibung siehe Archiv. Derzeit ziehe ich täglich ein Back-Up dieses Wikis hier, bewahre die täglichen Back-Ups der letzten zehn Tage auf, frühere Backups in zehn Zehn-Tage-Abständen, noch frühere in zehn Hundert-Tage-Abständen, usw. Hier das Shell-Skript, das ich dafür auf meinem Heimserver täglich per Cronjob aufrufe:

cd /media/PUBLIC/plomlompom-wiki.d-backup/ 
if [ -f daycount ] 
then 
  daycount=`cat daycount` 
else 
  daycount=0 
fi 
 
if [ `expr $daycount %25 1000` -eq 0 ] 
then 
  rm -rf 10-onethousandday-steps-ago/ 
  mv 9-onethousandday-steps-ago/ 10-onethousandday-steps-ago/ 
  rm -rf 9-onethousandday-steps-ago/ 
  mv 8-onethousandday-steps-ago/ 9-onethousandday-steps-ago/ 
  rm -rf 8-onethousandday-steps-ago/ 
  mv 7-onethousandday-steps-ago/ 8-onethousandday-steps-ago/ 
  rm -rf 7-onethousandday-steps-ago/ 
  mv 6-onethousandday-steps-ago/ 7-onethousandday-steps-ago/ 
  rm -rf 6-onethousandday-steps-ago/ 
  mv 5-onethousandday-steps-ago/ 6-onethousandday-steps-ago/ 
  rm -rf 5-onethousandday-steps-ago/ 
  mv 4-onethousandday-steps-ago/ 5-onethousandday-steps-ago/ 
  rm -rf 4-onethousandday-steps-ago/ 
  mv 3-onethousandday-steps-ago/ 4-onethousandday-steps-ago/ 
  rm -rf 3-onethousandday-steps-ago/ 
  mv 2-onethousandday-steps-ago/ 3-onethousandday-steps-ago/ 
  rm -rf 2-onethousandday-steps-ago/ 
  mv 1-onethousandday-steps-ago/ 2-onethousandday-steps-ago/ 
  rm -rf 1-onethousandday-steps-earlier/ 
  mv 10-onehundredday-steps-earlier/ 1-onethousandday-steps-earlier/ 
fi 
if [ `expr $daycount %25 100` -eq 0 ] 
then 
  rm -rf 10-onehundredday-steps-earlier/ 
  mv 9-onehundredday-steps-earlier/ 10-onehundredday-steps-earlier/ 
  rm -rf 10-onehundredday-steps-earlier/ 
  mv 8-onehundredday-steps-earlier/ 9-onehundredday-steps-earlier/ 
  rm -rf 8-onehundredday-steps-earlier/ 
  mv 7-onehundredday-steps-earlier/ 8-onehundredday-steps-earlier/ 
  rm -rf 7-onehundredday-steps-earlier/ 
  mv 6-onehundredday-steps-earlier/ 7-onehundredday-steps-earlier/ 
  rm -rf 6-onehundredday-steps-earlier/ 
  mv 5-onehundredday-steps-earlier/ 6-onehundredday-steps-earlier/ 
  rm -rf 5-onehundredday-steps-earlier/ 
  mv 4-onehundredday-steps-earlier/ 5-onehundredday-steps-earlier/ 
  rm -rf 4-onehundredday-steps-earlier/ 
  mv 3-onehundredday-steps-earlier/ 4-onehundredday-steps-earlier/ 
  rm -rf 3-onehundredday-steps-earlier/ 
  mv 2-onehundredday-steps-earlier/ 3-onehundredday-steps-earlier/ 
  rm -rf 2-onehundredday-steps-earlier/ 
  mv 1-onehundredday-steps-earlier/ 2-onehundredday-steps-earlier/ 
  rm -rf 1-onehundredday-steps-earlier/ 
  mv 10-tenday-steps-earlier/ 1-onehundredday-steps-earlier/ 
fi 
if [ `expr $daycount %25 10` -eq 0 ] 
then 
  rm -rf 10-tenday-steps-earlier/ 
  mv 9-tenday-steps-earlier/ 10-tenday-steps-earlier/ 
  rm -rf 9-tenday-steps-earlier/ 
  mv 8-tenday-steps-earlier/ 9-tenday-steps-earlier/ 
  rm -rf 8-tenday-steps-earlier/ 
  mv 7-tenday-steps-earlier/ 8-tenday-steps-earlier/ 
  rm -rf 7-tenday-steps-earlier/ 
  mv 6-tenday-steps-earlier/ 7-tenday-steps-earlier/ 
  rm -rf 6-tenday-steps-earlier/ 
  mv 5-tenday-steps-earlier/ 6-tenday-steps-earlier/ 
  rm -rf 5-tenday-steps-earlier/ 
  mv 4-tenday-steps-earlier/ 5-tenday-steps-earlier/ 
  rm -rf 4-tenday-steps-earlier/ 
  mv 3-tenday-steps-earlier/ 4-tenday-steps-earlier/ 
  rm -rf 3-tenday-steps-earlier/ 
  mv 2-tenday-steps-earlier/ 3-tenday-steps-earlier/ 
  rm -rf 2-tenday-steps-earlier/ 
  mv 1-tenday-steps-earlier/ 2-tenday-steps-earlier/ 
  rm -rf 1-tenday-steps-earlier/ 
  mv 10-oneday-steps-earlier/ 1-tenday-steps-earlier/ 
fi 
 
rm -rf 10-oneday-steps-earlier/ 
mv 9-oneday-steps-earlier/ 10-oneday-steps-earlier/ 
rm -rf 9-oneday-steps-earlier/ 
mv 8-oneday-steps-earlier/ 9-oneday-steps-earlier/ 
rm -rf 8-oneday-steps-earlier/ 
mv 7-oneday-steps-earlier/ 8-oneday-steps-earlier/ 
rm -rf 7-oneday-steps-earlier/ 
mv 6-oneday-steps-earlier/ 7-oneday-steps-earlier/ 
rm -rf 6-oneday-steps-earlier/ 
mv 5-oneday-steps-earlier/ 6-oneday-steps-earlier/ 
rm -rf 5-oneday-steps-earlier/ 
mv 4-oneday-steps-earlier/ 5-oneday-steps-earlier/ 
rm -rf 4-oneday-steps-earlier/ 
mv 3-oneday-steps-earlier/ 4-oneday-steps-earlier/ 
rm -rf 3-oneday-steps-earlier/ 
mv 2-oneday-steps-earlier/ 3-oneday-steps-earlier/ 
rm -rf 2-oneday-steps-earlier/ 
mv 1-oneday-steps-earlier/ 2-oneday-steps-earlier/ 
rm -rf 1-oneday-steps-earlier/ 
 
mv today/ 1-oneday-steps-earlier/ 
mkdir today/ 
cd today/ 
ftp -inv ftp.plomlompom.de<<END 
user USERNAME PASSWORT 
cd www.plomlompom.de/wiki/wiki.d/ 
mget * 
mget .* 
END 
echo `date` > plomlompom-wiki.d-backup-TIMESTAMP 
cd .. 
 
daycount=`expr $daycount + 1` 
echo $daycount > daycount 

Verbesserungsvorschläge willkommen; wie man sicher sieht, bin ich kein sehr erfahrener Shell-Skripter, und bestimmt ließe sich das alles noch etwas eleganter lösen.

Hier noch der dazugehörige cronjob:

0 12 * * * sh /media/PUBLIC/plomlompom-wiki.d-backup/plomlompom-wiki.d-backup.sh 

Kommentare

Keine Kommentare zu dieser Seite.

Schreibe deinen eigenen Kommentar

Kommentar-Schreiben derzeit nicht möglich: Kein Captcha gesetzt.

PlomWiki-Engine lizensiert unter der AGPLv3. Quellcode verfügbar auf GitHub.