Page 1 of 1

ftp shell script

Posted: 2004-07-05 17:27
by highmedia.info
Hallo Leute,

ich habe mir ein Backupscript geschrieben das soweit einwandfrei Funktioniert.

Nun wollte ich ein DEL Script machen das heist das in einem Bestimmten Intervall ( alle 4 tage ) auf den Backupserver die vorhandenen Datein gelöscht werden.

Problem:

Gibt es eine Möglichkeit über einen Shell befehl komplettes Verzeichniss vom FTP mit allen Datein die darin stecken zu löschen ?
Ohne das ich jede Datei einzeln Bestätigen muss mit Y das sie auch gelöscht wird.

habe schon die üblichen Linux Shell befehle ausprobiert was löschen anbelangt jedoch funktioniert keiner.
Bzw funktionieren schon nur ichmuss jedesmal bei jeder datei Y eintippen das er die Datei löscht.

Re: ftp shell script

Posted: 2004-07-05 17:40
by highmedia.info
--------->>>>>>>>>>> THREAD BITTE SCHLIEÃ?EN

habe es rausbekommen.

War fehler von meiner Seite da ich prompt noch im script stehen hatte


funktioniert jetzt so wie ich das will :))

Re: ftp shell script

Posted: 2004-07-05 17:42
by chris76
Nunja schließen könnte man den Thread schon, aber das script klingt Interessant und es könnte der eine oder andere User bestimmt auch brauchen.
Wäre nett wenn du es hier veröffentlichst :)

Re: ftp shell script

Posted: 2004-07-05 20:43
by captaincrunch
find /pfad/zum/dir -ctime 96 | xargs rm -rf

Re: ftp shell script

Posted: 2004-07-20 16:12
by highmedia.info
Hallo Leute,

ich wurde angeschrieben wegen meinem FTP script das ich das Posten soll
und das mache ich jetzt natürlich auch.

Code: Select all

#!/bin/sh

echo "#--------------------------------------------------#"
echo "#--------Backup Verzeichniss wird gelöscht---------#"
echo "#--------------------------------------------------#"

ftp -in <<EOF
open ServerIP
user Username Passwort
bin
hash
mkdir backup_server
QUIT
EOF
echo "#--------------------------------------------------#"
echo "#-------Backup Verzeichniss wurde gelöscht---------#"
echo "#--------------------------------------------------#"

echo "Script erfolgreich beendet"
echo "# ------------Backup DEL Script ------------"
echo "# makrohaus GmbH 2004"
echo "# Christoph Helminger"
echo "# c.helminger@makrohaus.de"
echo "# ------------Backup DEL Script------------"
exit 0
DAS GANZE HIER NOCHMAL FÃ?R KOMPLETTEN SERVER

Code: Select all

#!/bin/sh
DATUM=`date '+%Y-%m-%d'`



echo "#---------------------------------------------#"
echo "#------Server Komplett Backup startet...------#"
echo "#---------------------------------------------#"

mkdir /backup
echo "#--------------------------------------------------#"
echo "#--Backup Verzeichniss wurde erfolgreich erstellt--#"
echo "#--------------------------------------------------#"

tar zcvf /backup/backup_bin_${DATUM}.tar.gz /bin
tar zcvf /backup/backup_etc_${DATUM}.tar.gz /etc
tar zcvf /backup/backup_boot_${DATUM}.tar.gz /boot

echo "Backup wurde erfolgreich erstellt!"
echo "Upload"

cd /backup

ftp -in <<EOF
open SERVER IP
user USERNAME PASSWORT
bin
cd backup_server
put backup_bin_${DATUM}.tar.gz
put backup_etc_${DATUM}.tar.gz
put backup_boot_${DATUM}.tar.gz


QUIT
EOF

rm -rf /backup
echo "Backup Verzeichniss wurde erfolgreich gelöscht"

#-------------------------------------------------
#-------------------------------------------------

mkdir /backup
echo "#--------------------------------------------------#"
echo "#--Backup Verzeichniss wurde erfolgreich erstellt--#"
echo "#--------------------------------------------------#"

tar zcvf /backup/backup_home_${DATUM}.tar.gz /home
tar zcvf /backup/backup_initrd_${DATUM}.tar.gz /initrd
tar zcvf /backup/backup_lib_${DATUM}.tar.gz /lib

echo "Backup wurde erfolgreich erstellt!"
echo "Upload"

cd /backup

ftp -in <<EOF
open SERVER IP
user USERNAME PASSWORT
bin
cd backup_server
put backup_home_${DATUM}.tar.gz
put backup_initrd_${DATUM}.tar.gz
put backup_lib_${DATUM}.tar.gz
QUIT
EOF

rm -rf /backup
echo "Backup Verzeichniss wurde erfolgreich gelöscht"

#-------------------------------------------------
#-------------------------------------------------

mkdir /backup
echo "#--------------------------------------------------#"
echo "#--Backup Verzeichniss wurde erfolgreich erstellt--#"
echo "#--------------------------------------------------#"

tar zcvf /backup/backup_mnt_${DATUM}.tar.gz /mnt
tar zcvf /backup/backup_opt_${DATUM}.tar.gz /opt
tar zcvf /backup/backup_proc_${DATUM}.tar.gz /proc

echo "Backup wurde erfolgreich erstellt!"
echo "Upload"

cd /backup

ftp -in <<EOF
open SERVER IP
user USERNAME PASSWORT
bin
cd backup_server
put backup_mnt_${DATUM}.tar.gz
put backup_opt_${DATUM}.tar.gz
put backup_proc_${DATUM}.tar.gz
QUIT
EOF

rm -rf /backup
echo "Backup Verzeichniss wurde erfolgreich gelöscht"

#-------------------------------------------------
#-------------------------------------------------

mkdir /backup
echo "#--------------------------------------------------#"
echo "#--Backup Verzeichniss wurde erfolgreich erstellt--#"
echo "#--------------------------------------------------#"

tar zcvf /backup/backup_root_${DATUM}.tar.gz /root
tar zcvf /backup/backup_sbin_${DATUM}.tar.gz /sbin
tar zcvf /backup/backup_tmp_${DATUM}.tar.gz /tmp

echo "Backup wurde erfolgreich erstellt!"
echo "Upload"

cd /backup

ftp -in <<EOF
open SERVER IP
user USERNAME PASSWORT
bin
cd backup_server
put backup_root_${DATUM}.tar.gz
put backup_sbin_${DATUM}.tar.gz
put backup_tmp_${DATUM}.tar.gz
QUIT
EOF

rm -rf /backup
echo "Backup Verzeichniss wurde erfolgreich gelöscht"

#-------------------------------------------------
#-------------------------------------------------

mkdir /backup
echo "#--------------------------------------------------#"
echo "#--Backup Verzeichniss wurde erfolgreich erstellt--#"
echo "#--------------------------------------------------#"


tar zcvf /backup/backup_dev_${DATUM}.tar.gz /dev
tar zcvf /backup/backup_usr_${DATUM}.tar.gz /usr
tar zcvf /backup/backup_var_${DATUM}.tar.gz /var

echo "Backup wurde erfolgreich erstellt!"
echo "Upload"

cd /backup

ftp -in <<EOF
open SERVER IP
user USERNAME PASSWORT
bin
cd backup_server
put backup_dev_${DATUM}.tar.gz
put backup_usr_${DATUM}.tar.gz
put backup_var_${DATUM}.tar.gz
QUIT
EOF

rm -rf /backup
echo "Backup Verzeichniss wurde erfolgreich gelöscht"

echo "#-------------------------------------------------#"
echo "#------------Script erfolgreich beendet-----------#"
echo "#-------------------------------------------------#"

echo "# ------------BackupScript------------"
echo "# makrohaus GmbH 2004"
echo "# Christoph Helminger"
echo "# c.helminger@makrohaus.de"
echo "# ------------BackupScript------------"
exit 0
UND HIER DAS SCRIPT ZUM WIEDERHERSTELLEN

Code: Select all

#! /bin/sh
# ------------BackupScript------------
# Dieses Script spielt die Backup files zurück
# makrohaus GmbH 2004
# Christoph Helminger
# c.helminger@makrohaus.de
# ------------BackupScript------------

#-------------------------------------
#Hier das Datum der Sicherung eingeben (Beispiel: 2003-10-17):
DATUM='2003-07-06'
#-------------------------------------

echo "Backup vom ${DATUM} wird aufgepielt.."
mkdir /backup_restore
cd /backup_restore
echo "FTP Verbindung wird hergestellt und Backupdateien heruntergeladen"
ftp -in <<EOF
open SERVER IP
user USERNAME PASSWORT
bin
hash
cd backup
get backup_home_${DATUM}.tar.gz

QUIT
EOF
echo "Download der Dateien beendet"
echo "Dateien werden entpackt und wiederhergestellt!"
tar zxvf backup_home_${DATUM}.tar.g -C /
echo "Backup ERFOLGREICH aufgespielt"
echo "Script by Christoph Helminger c.Helminger@makrohaus.de
WENN NOCH FRAGEN AUFKOMMEN MEINE EMAIL STEHT JA DA Ã?BERALL
SCHREIBT MIR EINFACH NE EMAIL WENN IHR PROBLEME HABT

Re: ftp shell script

Posted: 2004-07-20 16:38
by tomek
Wie wärs mit rsync? Eignet sich genau dafür ideal.

DEL SCRIPT

Posted: 2004-07-30 13:45
by highmedia.info
Hier noch wie gewünscht das script zum löschen der backups auf dem Backup server

#!/bin/sh

echo "Backupverzeichniss löschen..."
#-------------------------------------------------
#-------------------------------------------------
ftp -in <<EOF
open ServerIP
user USERNAME PASSWORT
bin
hash
mdelete backup
QUIT
EOF
echo "Backup Verzeichniss wurde erfolgreich gelöscht"

echo "Script erfolgreich beendet"
echo "# ------------Backup DEL Script ------------"
echo "# makrohaus GmbH 2004"
echo "# Christoph Helminger"
echo "# c.helminger@makrohaus.de"
echo "# ------------Backup DEL Script------------"
exit 0

Re: ftp shell script

Posted: 2004-07-30 14:21
by chris76
der mdelete löscht dir doch alle dateien dort drin, und nicht gezielt alle älter als z.B. 14 Tage

Re: ftp shell script

Posted: 2004-08-09 22:57
by pyrogx
wird mit dme script auch die komplette datenbank gesichert?

Re: ftp shell script

Posted: 2004-08-09 23:24
by chris76
zumindest kein dump, wenn man sich den code so ansieht :)

Re: ftp shell script

Posted: 2004-08-10 08:29
by thorsten
Wenn man die Dateien an der console löscht, ist die Lösung von Cpt. Crunch am einfachsten.
Wenn es jedoch auch Dateien mit Leerzeichen im Namen gibt, bietet sich folgendes an:
find /pfad/zum/dir -ctime 96 -print0 | xargs --null rm -rf

(man xargs erklärt auch warum)

Re: ftp shell script

Posted: 2004-08-10 13:55
by pyrogx
brauche nen script was mir auch die datenbanken sichert

das script sollte die ganzen echo sachen in eine datei schreiben und nicht direkt ausgeben

wenn ich das per cronjob starte bringt mir die echoausgabe leider nix

Re: ftp shell script

Posted: 2004-08-10 14:07
by tomek
MySQL Datenbank sichern? Beispiel von ungefähr 395329652340969 anderen:

http://www.rootforum.org/faq/index.php? ... 76&lang=de

Script funktioniert nicht

Posted: 2004-08-17 15:44
by michseel
Hallo,

mit dem großen Script um Backups vom kompletten Server zu erstellen bin ich bis zu den echo-Ausgaben

Backup wurde erfolgreich erstellt!
Upload

Danach kommen folgende Fehler:

ftp: Name or service not known
Not connected.
Not connected.
Not connected.
?Invalid command.
Not connected.
?Invalid command.

Die FTP-Daten die ich in dem Script eingetragen habe, sind jedoch richtig. Woran kann das liegen?

Vielen Dank für euere Hilfe!

Gruß,
Michael