| | | | | | | | | | |||||||
![]() | ![]() | | |||||||||||||
| |||||||||||||||
| |||||||
| Registrieren | Hilfe | Interessengemeinschaften | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
| |
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 |
| Reg.-Benutzer Reg.-Datum: 13.09.2008 |
Hallo liebe Freunde. Ich bin mal an einem Punkt angelangt, wo mein wissen nicht ausreicht um folgendes zu realisieren. Situation: Ein Server mit rund 2,5 Tera Daten in unterschiedlichen grossen Unterordnern muss gesichert werden. Problem: Da das erstellen eines so grossen Archivs schlicht Unsinn ist, dachte ich mir, das ich versuche jeden Ordner der eine Bestimmte Grösse erreicht Separate in die entsprechenden und getrennt zu sichern, damit die archive nicht zu gross werden. Zur Idee: Hauptordner hat 2,5 Thera Daten /Daten 2.5T /Daten/Daten1 2T /Daten/Daten2 10G /Daten/Daten3 1G /Daten/Daten4 400G /Daten/Daten5 90G Nun soll das Skript die Hautordner die eine Bestimmte Grösse 10G nicht überschreiten sichern. Das wären dann tar -czvf /Backup/sourcedirpfath/archiv-name-dir.tar.gz /Daten/Daten2 tar -czvf /backup/sourcedirpfath/archiv-name-dir.tar.gz /Daten/Daten3 Die Ordnern die grösser sind, sollen dabei ignoriert werden und im nächsten schritt innerhalb dieses Ordner erneut gesichert werden also. tar -czvf /backup/sourcedirpfath/archiv-name-dir.tar.gz /Daten/Daten1/Dir1 und so weiter, damit ich am schluss eine Backup Struktur erhalte, die ordnermässig identisch ist, und innerhalb der Ordner die Tar Archive liegen wo der Source Ordner nicht grösser ist als die z.b 10G aber dem source Direktory entspricht. ein Problem das dabei noch ein Hindernis sein könnte ist, das diverse Ordner ein Lehrschlag enthalten. Ich hab mal versucht anzufangen und hab mir mal das zusammen gebastelt aber halt ohne Grössen Funktion. Code:
DATE=$(date +%m-%d-%H%M%S)
bakdir="/Daten/dir1/";
bakdirlength=${#bakdir};
destdir="/bdrive/dir1/";
for directory in $(find $bakdir -maxdepth 1 -mindepth 1 -type d); do
dirname=${directory:$bakdirlength}
tar -X $exclude -czvf $destdir$dirname.tgz $directory | tee destdir$dirname.log
done
Wie kann ich dies verwirklichen? |
| | |
| | #2 |
| Reg.-Benutzer Reg.-Datum: 10.12.2005 Ort: Frankfurt am Main | |
| | |
| | #3 |
| Reg.-Benutzer Reg.-Datum: 13.09.2008 |
Besten Dank.. Das Toll ist recht umfangreich. Wie müsst ich das jetzt benutzen, damit es das macht was ich möchte, werde aus der manpage nicht wirklich schlau. |
| | |
| | #4 |
| Reg.-Benutzer Reg.-Datum: 27.03.2007 Ort: Warstein / Dortmund |
Da gibt es noch mehr von: Bacula, the Open Source, Enterprise ready, Network Backup Tool for Linux, Unix, and Windows Wertarbyte EDV-Dienstleistungen - Backup system "Tartarus"
__________________ #fachinformatiker.de im IRC | http://wiki.lupo49.de/ | IT staff - Getting things done! Werbung: freiesMagazin - FOSS/Linux-Magazin | FirstAi - Erste Hilfe für das Handy | Fernsehkritik-TV - Das satirische/kritische TV-Magazin |
| | |
| | #5 |
| Reg.-Benutzer Reg.-Datum: 13.09.2008 |
Besten Dank für die links.. Leider aber sind die Progis für mein vorhaben zu umfangreich und das was ich wirklich brauche nicht möglich ist. Ich hab mir jetzt mal ein script zusammen gebaut das schon ganz gut funktioniert. Muss da nur noch ein 2 Dinge lösen wo ich euch nochmals um Hilfe bitte. Mein Script: Code: #!/bin/sh
bakdir="/Daten";
destdir="/bdrive/test1";
excludelog="/bdrive/exclude.log";
rm "/bdrive/exclude.log";
### Finde alle Ordner
find $bakdir -maxdepth 1 -mindepth 1 -type d | while read directory
do
echo "suche in $directory"
sleep 1
SIZE=`du -s "$directory" | cut -f 1`
## Teste auf grösse des Ordners
if [ $SIZE -gt 4331580 ]
then
echo "Ordner ist zu gross $SIZE"
touch "$excludlog"
echo $directory >> $excludelog
destfolder=`basename "${directory}"`
echo "Speichere nach $destdir/$destfolder"
sleep 1
## Erstelle Destination Ordner
if [ -d "$destdir/$destfolder" ]
then
echo "stepp 1 Ordner $destdir/$destfolder ok"
sleep 1
else
echo "Stepp 1 Ordner exisiert nicht Ich erstlle ihn"
mkdir "$destdir/$destfolder"
sleep 1
fi
else
destfolder=`basename "${directory}"`
### Erstelle Destination Ordner
if [ -d "$destdir/$destfolder" ]
then
echo "stepp 1 Destination Ordner $destdir/$destfolder vorhanden"
sleep 1
else
echo "Stepp 1 Destination Ordner $dest/$destfolder existiert nicht Ich erstelle ihn jetzt"
mkdir "$destdir/$destfolder"
sleep 1
fi
## Suche nach Unterordnern die Archiviert werden
find "$directory" -maxdepth 1 -mindepth 1 -type d | while read folder
do
VNAME=`basename "${folder}"`
destfolder=`basename "${directory}"`
## Teste erneut ob Destination Ordner Existiert und Starte Sicherung
if [ -d "$destdir/$destfolder" ]
then
echo " stepp 2 Destination Ordner $dest/$destfolder vorhanden"
sleep 1
find "$directory" -maxdepth 1 -type f -print | tar -czvf "$destdir/$destfolder/rootdir.tgz" -T -
tar -czvf "$destdir/$destfolder/$VNAME.tgz" "$folder" | tee "$destdir/$destfolder/$VNAME.log"
else
echo "stepp 2 Destination Ordner $dest/$destfolder existiert nicht erstelle ihn jetzt"
mkdir "$destdir/$destfolder"
touch "$destdir/$destfolder/$FNAME.else"
tar -czvf "$destdir/$destfolder/$VNAME.tgz" "$folder" | tee "$destdir/$destfolder/$VNAME.log"
fi
done
fi
done
Funktion 1. Suche nach Ordnern kleiner 4Gb und erstelle Ordner Struktur auf Backup Dir. maxdepth -1 2. Suche Ordner grösser 4Gb und erstelle Ordner Struktur auf Backup dir Maxdepth -1 3. Suche nach Daten die im entsprechenden Ordner die <=4G sind und sichere sie nach Backup Dir Unterordner. find $1 maxdepth 0 -type -f 4. Sichere Unterordner die im entsprechenden Hauptordner <=4G liegen und sichere sie nach Backup Dir Unterordner. 5. Fehlt noch. Die letzte Funktion kriege ich nicht hin.. Es sollte nun für jeden Ordner der grösser ist als 4GB Punkt 1 - 5 wider holden. schleife-- All so Ordner anlegen >=4GB, erneut im Source Unterordner suchen die grösser als 4Gb sind, Unterordner anlegen, Alle Ordner sichern die kleiner 4Gb sind. und so weiter,, bis der ganze Pfad gesichert ist. schleife ende -- |
| | |
![]() |
| Lesezeichen |
| ||||||
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Hilfe bei Backup Exec System Recovery Server Edition | Killamp | Anwendungssoftware | 0 | 13.10.2009 13:01 |
| CMS Typo3 Full Backup | Vitali88 | Webdesign | 0 | 30.09.2009 15:05 |
| Abschlussprojekt: Backup | Skygge | Abschlussprojekte | 8 | 07.10.2008 12:24 |
| [Hilfe] Probleme bei ShellSskript für Backup | noxy88 | Linux + Unix | 1 | 26.09.2008 09:07 |
| iPAQ Backup automatisiert wiederherstellen | Hüsi | Telefonie und Mobile Devices | 1 | 28.12.2005 12:10 |
![]() |
| |||||