Löschen eines Ordnerinhaltes nach 3 Tagen

Status
Für weitere Antworten geschlossen.

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
Hallo, da ich bisher leider keine Lösung für mein Problem gefunden habe, formuliere ich es nun neu:

Ich möchte den Ordnerinhalt in der Filestation, der älter als 3 Tage ist von

surveillance
@snapshot

automatisch durch die Synology NAS löschen lassen.

Wie kann ich dieses Problem lösen?

Besten Dank!

nasnew
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.165
Punkte für Reaktionen
918
Punkte
424
Also willkommen im neuen Thema. :)

So herum formuliert lässt es sich natürlich einfach mit dem Aufgabenplaner direkt, oder mit einem script erledigen.

Wie heißt denn der genaue Pfad wo du was löschen willst? Ist das der Gemeinsame Ordner "surveillance" mit Unterordner "@snapshot"? Liegt der auf Volume1?
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Z.B. mit einem find-Skript, das Du über den Aufgabenplaner laufen läßt. Aber bietet die Surveillance-Station nicht selbst eine solche Option?
 

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
So ist es. Wegen der Pfadangabe habe ein Bildschirmfoto gemacht. Synology.jpg
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.165
Punkte für Reaktionen
918
Punkte
424
ok, dann kannst du im Aufgabenplaner mal ein benutzerdefiniertes Script anlegen.
Anstatt einem Script kannst du dort aber auch direkt ein Befehl eintragen.

Im ersten Schritt erstmal rein zum Test, z.B. (wichtig: Ohne Zeilenumbruch eintippen oder einfach copy&paste)
find /volume1/surveillance/@Snapshot/ -type f -mtime +3 > /volume1/surveillance/log.txt
Danach speichern und den Task ausführen.
In der log.txt sollten jetzt alle Dateien älter als 3 Tage aufgeführt werden, die er im Ordner @Snapshot gefunden hat.

Wenn das zur Zufriedenheit ist, kann man den nächsten Schritt gehen und den Befehl modifizieren, dass die Funde dann auch direkt gelöscht werden.

Edit:
Das löschen geht via der Option -delete direkt als Parameter für den find Befehl, also am obigen Beispiel
find /volume1/surveillance/@Snapshot/ -type f -mtime +3 -delete
Achtung, da gibt es keine Rückfragen mehr oder einen doppelten Boden!
 
Zuletzt bearbeitet:

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
Hallo Fusion,

danke!

Habe ich getestet, doch leider bleibt die Datei log.txt leer.

Woran kann das liegen, also Schnappschüsse zum Finden wären genügend da.

Danke

nasnew
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Probiere es einmal mit /bin/find statt find.
 

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
Hab meinen Fehler gefunden.

Vielen herzlichen Dank!!!!!

nasnew
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Woran hats denn gelegen, wenn ich fragen darf?
 

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
Die Aufgabe wurde nicht ausgeführt, da ich den falschen Benutzer angegeben hatte
 

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
Also, das Finden und Schreiben in die log.txt funktioniert.

Das andere Skript zum Löschen leider nicht, es wird nichts gelöscht.

Der Benutzer im Aufgabenmanager ist root, das ist doch richtig? Oder muss ich diesen Benutzer neu anlegen und Rechte zuweisen?

nasnew
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Dann versuche es bitte einmal mit:

Rich (BBCode):
find /volume1/surveillance/@Snapshot/ -type f -mtime +3 -exec rm -f {} \;
 

nasnew

Benutzer
Mitglied seit
14. Sep 2014
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
find /volume1/surveillance/@Snapshot/ -type f -mtime +3 -exec rm -f {} \;

funktioniert leider auch nicht.

Was mache ich nur falsch?
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Probier mal als root

sonst /bin/find /volume1/surveillance/@Snapshot/ -type f -mtime +3 -exec rm -f {} \;
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Ich habe gerade nochmal bei mir nachgesehen (DSM 5.2 allerdings), da gibts nur /usr/bin/find, nicht aber /bin/find. Das nur nochmal zur Sicherheit.
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
/bin/find ist unter DSM 6 aber korrekt.
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Alles klar, wobei ich mich dunkel erinnere, dass es auch einen Symlink unter /user/bin/find auf /bin/find gibt, aber egal.
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.165
Punkte für Reaktionen
918
Punkte
424
Habe das unter DSM 5.2 sowohl mit -delete wie auch mit -exec probiert und funktioniert.

Der Task wird normal unter user root angelegt. Neben Tippfehler (wobei ja die log Erstellung funktioniert hat) fällt mir jetzt nur noch ein eventuelles Problem mit den Dateinamen/Umbrüchen ein.

Kannst du dich vielleicht doch mal per SSH auf deine DS einloggen als admin und dann per sudo -i auf root wechseln.
Dann schauen wir mal ob es dort funktioniert bzw. was es für Fehler produziert.
 

doetsch84

Benutzer
Mitglied seit
21. Dez 2015
Beiträge
94
Punkte für Reaktionen
2
Punkte
14
Hallo zusammen,

möchte genau das selbe machen wie nasnew, alle Snapshots älter als 3 Tag löschen.

Sowohl
find /volume1/surveillance/@Snapshot/ -type f -mtime +10> /volume1/surveillance/@Snapshot/a_findlog.txt

und

find /volume1/surveillance/@Snapshot/ -type f -mtime +10 -exec rm -f {} \;

haben einwandfrei funktioniert. Ausführung als root. (habe es erst mal mit 10 Tagen probiert)

Mein Problem: In der File Station sind die Dateien wie gesagt gelöscht. Wenn ich mich in der SS einlogge und die Schnappschüsse öffne, werden aber immer noch alle alten Schnappüsse gefunden.... die die älter sind als 10 Tage haben zwar kein Vorschaubild mehr und lassen sich auch nicht öffnen, werden aber in der Liste angezeigt...

Kennt jemand das Problem bzw. woran das liegen könnte?

Danke, Grüße und schönen Sonntag!
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Bestimmt werden die Schnappschüsse in eine Datenbank gespeichert, weswegen sie noch gelistet sind.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat