Linux: Dateien trotzdem löschen wenn rm versagt

Kennt Ihr das Problem, dass der Linux Befehl rm versagt? Ich schon. 😀

Linux Pinguin

Ich habe mal einen dummen kleinen Fehler mit sehr einer großer Auswirkung gemacht. Und zwar sollten die Session-Dateien von PHP in einem seperaten tmp Ordner gespeichert werden. Hat auch wunderbar geklappt. Was ich nicht wusste, die Dateien wurden nicht vom cronjob erfasst, welcher die alten Sessiondateien löscht.

Das Ergebnis: über 5 Mio Session-Dateien die knapp 17 GB belegen.

Das Ganze passierte auf einem VPS mit 512MB Ram.

Jetzt würde ja eigentlich ein rm tmp/* reichen um alle Dateien im Ordner zu löschen, jedoch stürzt der rm Prozess sofort ab, da nicht genung Ram zur Verfügung steht. Ok … dachte ich, versuche in mal den find Befehl … tja selbes Ergebnis.

Durch Zufall habe ich gemerkt, dass du -a die einzelnen Dateien inkl. Pfad auflistet. Damit war nach langem rumprobieren endlich eine Lösung in greifbarer Nähe.

Die Lösung war dann recht einfach:

du -a | awk ‚{print $2}‘ | xargs rm

  /!\  Achtung, alle Dateien werden in dem Ordner gelöscht /!\  

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert