Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Wie kann ich FTP-Dateien auf Backup-Server je nach restlichem Speicherplatz löschen?

Frage Entwicklung Batch & Shell

Mitglied: oradke

oradke (Level 1) - Jetzt verbinden

06.09.2011, aktualisiert 01:28 Uhr, 2572 Aufrufe, 5 Kommentare

Hallo!
Ich setze schon seit längerem ein FTP-Script ein, um von bestimmten Verzeichnissen meines Linux-Servers ein Backup zu erstellen. Die tar.gz-Datei (ca. 1GB, da ändert sich wenig an der Größe) wird dann per FTP auf einen zweiten Server gespeichert, der rund 40GB Platz frei hat. Das funktioniert gut, aber mir fehlt noch der letzte Kniff: Wie kann ich bei jedem Aufruf des Scripts die jeweils ältesten Files löschen - am besten so, daß eine vorgegebene Menge Speicherplatz (idealerweise etwas größer als die zu sichernde Datei) freigeben wird? Damit würde der Backup-Server zu einem FIFO-Speicher werden und hätte automatisch immer ca. 30 alte Backups parat.

Danke im Voraus!
Oliver
Mitglied: user132
06.09.2011 um 09:08 Uhr
01.
  
02.
find /pfad/zur/FTP/Ablage/ -type f -ctime +7 -exec rm -Rf {} \;

Löscht alle Dateien die älter sind als 7 Tage. Kann selbstverständlich angepasst werden ;)
Bitte warten ..
Mitglied: Lochkartenstanzer
06.09.2011 um 09:17 Uhr
Die älteste Datei löschen:

ls -t  /pfad/zu/den/tarballs/  | tail -n 1 | xargs rm -v 
Bitte warten ..
Mitglied: oradke
06.09.2011 um 16:15 Uhr
Danke für die guten Tips! Dummerweise war ich in meiner Anfrage nicht spezifisch genug: Auf den Backup-Server habe ich *nur* FTP-Zugriff, ein reines Shell-Skript reicht da leider nicht. Ich muß es irgendwie über den FTP-Zugriff realisieren.

Danke nochmal!
Oliver
Bitte warten ..
Mitglied: rubberman
06.09.2011 um 20:32 Uhr
Hallo oradke.

Ich bin nicht besonders bewandert in Sachen FTP, aber es gibt doch die DIR Funktion, die dir unter anderem auch die Größe der Dateien/Verzeichnisse ausgibt. Es besteht die Möglichkeit das ganze in eine lokale Datei umzuleiten und dann (je nach Afbau der Zeilen, da müsstest du noch mal aushelfen) diese aufzusummieren.
Für den ersten Teil etwa so:
01.
@echo off &setlocal 
02.
03.
  echo open oradke.de 
04.
  echo MyUserName 
05.
  echo MyPassword 
06.
  echo dir "FTPRemoteDir" "D:\irgendwo\dir.txt" 
07.
  echo disconnect 
08.
  echo bye 
09.
)>"%temp%\test.ftp" 
10.
ftp.exe -i -s:"%temp%\test.ftp" 
11.
del "%temp%\test.ftp" 
12.
start "" notepad "D:\irgendwo\dir.txt"
Grüße
rubberman
Bitte warten ..
Mitglied: Lochkartenstanzer
07.09.2011 um 09:36 Uhr
Dannmachst Du es so wie rubberman angedeutet hat.

Hole Dir das verzeichnis, sortiere es und such Dir dann den letzten oder esten (jenachdem, wie Du sortiert hast) raus und erstelle damit ein ftp-kommando zum löschen, den Du dann wieder per ftp-skript zum server schickst. Das soltle nach den Hinweise hiernur noch eine Fingerübung sein.
Bitte warten ..
Ähnliche Inhalte
Xenserver
Xenserver 6.5 - Backup Server und VM auf NAS (1)

Frage von caspi-pirna zum Thema Xenserver ...

Server-Hardware
gelöst Backup Server (15)

Frage von Netgear24 zum Thema Server-Hardware ...

Festplatten, SSD, Raid
gelöst Server Daten sicher löschen (6)

Frage von baxxter333 zum Thema Festplatten, SSD, Raid ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(6)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...

LAN, WAN, Wireless
IP Sec Client legt Netzwerkkarte lahm (12)

Frage von mario87 zum Thema LAN, WAN, Wireless ...