Backup USB-Stick

Loner

Aktives Mitglied
Thread Starter
Dabei seit
30.04.2006
Beiträge
130
Reaktionspunkte
4
Hallo,

ich habe mir ein kleines Backup-Skript für meinen USB-Stick gebastelt, das ich hier gerne zur Diskussion stellen würde.

Meiner Ansicht nach ist sowas ganz praktisch, da auf dem Stick wichtige Daten drauf sind und der Stick leicht mal verloren werden bzw. kaputt gehen kann.

Ablauf:
Falls der Stick angeschlossen ist, werden stündlich bestimmte (wichtige) Dateien/Verzeichnisse auf dem Stick in eine tgz-Datei auf der Platte gespeichert. Es werden nicht alle Dateien gesichert, da das zu lange dauern würde und die Archive zu groß sind.
Momentan ist ein Archiv ca. 90MB.
Falls mehr als 3 Archive im Backup-Ordner sind, werden alle bis auf die 3 neuesten gelöscht.

Das Skript sieht so aus:
Code:
#!/bin/ksh
TimeStamp=$( date "+%Y%m%d_%H%M")
WorkPath=/Users/loner/backup

if  [ -f /Volumes/USB/irgendeinfile ]  # damit "erkenne" ich, ob der Stick angeschlossen ist.

	then
	tar czvf $WorkPath/backup_${TimeStamp}.tgz /Volumes/USB/kochrezepte/* /Volumes/USB/wunschzettel/* /Volumes/USB/weltherrschaft/* /Volumes/USB/Dokumente/* /Volumes/USB/*.doc /Volumes/USB/*.xls /Volumes/USB/*.pdf
fi

ls -1art $WorkPath/backup_* >liste #Dateiliste in ne Datei schreiben, damit man dann später mit head Dateinamen ausschneiden kann
integer anz=$(wc -l liste | awk '{ print $1 }') 

if [ $anz -gt 3 ] 
then 
        (( y = $anz - 3 ))
        loeschen=$(head -n$y liste) 

        for i in $loeschen # alten Schrott wegwerfen
        do 
               rm -f $WorkPath/$i 
        done 

fi 

rm -f liste


Das Skript wird dann noch in die crontab eingebunden:

Code:
Utopia:~/backup loner$ crontab -l
0       *       *       *       *      /Users/loner/backup/usb_backup.sh


Wie macht ihr das so? Verbesserungsvorschläge?
 
Zuletzt bearbeitet:
Das hättest du auch einfacher mit Automator machen können.
Dazu gibts eine Aktion auf automator.us, die die angeschlossenen Laufwerke abruft.

Baba, Rémy
 
Hmm, wäre auch ne Möglichkeit. Habe mich bisher noch nie mit dem Automator beschäftigt.
Sollte ich mal bei Gelegenheit tun...
 
Ich verwende für diesem Zweck das Programm ChronoSync. Aber wenn man versiert genung ist ein solches Skript selbst zu schreiben, ist das natürlich toll.

Ich kenne mich in der Unix Shell zwar nicht so gut aus, aber als Tipp kann ich Dir den Befehl "rsync" nennen. Zu diesem gibt es glaube ich hier im Forum irgendwo eine ausführliche Beschreibung. rsync kann zwei Speicherorte synchronisieren und überträgt dann jeweils nur die geänderten Daten.

Vielleicht wäre das für Dein Skript auch nützlich. Aber wenn es so schon genau das macht was Du haben möchtest, ist das natürlich super.
 
Zurück
Oben Unten