Hallo Leute
bin auf dem Gebiet Linux ein absoluter neuanfänger :?
Bin momentan dabei einen Backup-Server zu erstellen, der Backups zu einem bestimmten Tag zu einer bestimmten Zeit von zweich Rechnern zieht (Backups werden in Ordnern abgelegt die als Namen das aktuelle Datum erhalten) und beim erreichen einer bestimmten Speicherkapazität auf der Server Platte sollen die ältesten Backups automatisch gelöscht werden.
So, das ganz wird mit zwei Skripten die ich ein wenig umgeändert habe realisiert. Das Backup ziehen funktioniert schon einwandfrei.
So nun zu meinem Problem:
1. der Zeitgesteuerte Ablauf soll durch crontab realisiert werden. Fonktioniert jedoch nicht. Wenn ich den cron mit Webmin manuell ausführe funktioniert er. Automatisch startet er jedoch nicht.
2. mein Skript das für das Löschen der ältesten Backups zuständig ist weist noch einige Fehler auf. Jedoch weis ich nicht wie ich diesen Beheben soll.
Also wenn das Skript starte werden auch die ältesten Backup Ordner gelöscht, jedoch schreibt er mir ein komische Meldung auf dem Bildschirm. Kann man die irgendwie unterdrücken. Hier mal die Meldung und das Skript selber:
--------------------------------------------------------------------------------------
***Freien Speicherplatz pruefen***
Belegter Speicherplatz: 12 MB
rm: cannot remove `.' or `..'
find: ./05_04_05: No such file or directory
find: ./05_05_05: No such file or directory
find: ./11_04_05: No such file or directory
find: ./11_05_05: No such file or directory
Belegter Speicherplatz: 2 MB
find: ./15_05_05: No such file or directory
Aktueller Speicherplatz: 2 MB
***Freien Speicherplatz pruefen***
Aktueller Speicherplatz: 1 MB
-------------------------------------------------------------------------
#!/bin/bash
########################################################################
########### Loeschen der Sicherungen von Pdc1 ##########################
########################################################################
echo
echo "***Freien Speicherplatz pruefen***"
echo
cd /sicherungen/Pdc1/ #Verzeichniss in dem sich die zu loeschenen Daten befinden
Days=4 #Dateien die älter als angegeben sind löschen beginnen
MaxDiskSpace=1 #Nur loeschen wenn "MaxDiskSpace" ueberschritten wurde
DiskSpace=`du -sm | awk '{print $1;}'` #ermittelt die aktuelle groesse
while [ $DiskSpace -gt $MaxDiskSpace ] ; do #vergleicht die beiden angaben miteinander
echo "Belegter Speicherplatz: " $DiskSpace "MB" #schreibt den aktuellen Speicherplatz auf dem Bildschirm
echo
find . -mtime +$Days -exec rm -r -d {} ; #suche alle Ordner die aelter als Days sind und loesche sie mit inhalt
if [ $Days -le 3 ] ; then #keine Daten loeschen die <= 3Tage sind
break
fi
Days=$(($Days - 1))
DiskSpace=`du -sm | awk '{print $1;}'` #ermittelt die aktuelle groesse
done
echo "Aktueller Speicherplatz: " $DiskSpace "MB" #schreibt den aktuellen Speicherplatz auf dem Bildschirm
echo
################################################################################################
#######################################################################
############## Loeschen der Sicherungen von SQL 2000 ##################
#######################################################################
echo
echo "***Freien Speicherplatz pruefen***"
echo
cd /sicherungen/SQL2000/ #Verzeichniss in dem sich die zu loeschenden Daten befinden
Days=4 #Dateien die älter als angegeben sind löschen beginnen
MaxDiskSpace=1 #Nur loeschen wenn "MaxDiskSpace" ueberschritten wurde
DiskSpace=`du -sm | awk '{print $1;}'` #ermittelt die aktuelle groesse
while [ $DiskSpace -gt $MaxDiskSpace ] ; do #vergleicht die beiden angeben miteinander
echo "Belegter Speicherplatz: " $DiskSpace "MB" #schreibt den aktuellen Speicherplatz auf dem Bildschirm
echo
find . -mtime +$Days -exec rm -r -d {} ; #sucht alle Ordner die aelter als Days sind und löscht sie mit inhalt
if [ $Days -le 3 ] ; then #keine Daten loeschen die <= 3Tage sind
break
fi
Days=$(($Days - 1))
DiskSpace=`du -sm | awk '{print $1;}'` #ermittelt die aktuelle groesse
done
echo "Aktueller Speicherplatz: " $DiskSpace "MB" #schreibt den aktuellen Speicherplatz auf dem Bildschirm
echo
##################################################################################################
DANKE EUCH IM VORAUS!
Backup Server mit Linux
-
captaincrunch
- Userprojekt

- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Backup Server mit Linux
Einmal mehr: mit absoluten Pfaden zu arbeiten bringt keinen um und hilft, solche Fehler zu vermeiden.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
linuxmatze
- Posts: 5
- Joined: 2005-05-19 09:34
Re: Backup Server mit Linux
kannst du mir vielleicht ein bisschen besser erklären was du damit meinst :lol:
-
captaincrunch
- Userprojekt

- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
- Contact:
Re: Backup Server mit Linux
/bin/find statt einem simplen find hilft in solchen Fällen, in denen keine vernünftige PATH-Variable gesetzt ist extrem weiter.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
linuxmatze
- Posts: 5
- Joined: 2005-05-19 09:34
Re: Backup Server mit Linux
hab ich versucht. geht ned. ist es nicht so wenn man als root die Datei ausführt sind relative Pfadangaben eigentlich egal. :?:
Re: Backup Server mit Linux
Das hat mit dem Benutzer nichts zu tun, dabei geht's nur um gesetzte oder nicht gesetzte PATH Werte.LinuxMatze wrote:ist es nicht so wenn man als root die Datei ausführt sind relative Pfadangaben eigentlich egal. :?:
.static