Ich habe einen bestimmten Ordner ( /home/sam/officedocuments
), der Hunderte von Ordnern und Dateien enthält. Ich glaube, ich habe versehentlich einige Dateien und Ordner gelöscht, bin mir aber nicht sicher.
So finden Sie die Dateien / Ordner:
- vor kurzem in Linux gelöscht?
- vor kurzem in Linux geändert?
Ich möchte nur wissen, welche Dateien und Ordner gelöscht wurden. Das Wiederherstellen dieser gelöschten Dateien und Ordner ist für mich nicht wichtig.
Betriebssystem: CentOS
ext3grep
Dienstprogramm verwenden, um Informationen zu gelöschten Dateien zu erhalten. Mit einigen Skripten sollte es möglich sein, eine einfache Anwendung zusammenzustellen, die gelöschte Dateien basierend auf einem bestimmten Verzeichnis auflistet. Diese Dienstprogramme benötigen jedoch unformatierten Zugriff auf die Festplatte und sind daher äußerst gefährlich, wenn sie nicht ordnungsgemäß verwendet werden ( nicht blockierende Nur-Lese-Vorgänge sollten absolut sicher sein, wenn Sie daran denken, dass das gleichzeitige Schreiben auf die Festplatte dazu führen kann, dass der aktuelle Vorgang fehlerhafte Daten zurückgibt ).Antworten:
Verwenden Sie
find
, um nach Änderungszeit zu suchen. So finden Sie beispielsweise Dateien, die in den letzten 3 Tagen bearbeitet wurden:find /home/sam/officedocuments -mtime -3
Verwenden Sie für "älter als 3 Tage"
+3
.Ziemlich unmöglich. Wenn eine Datei gelöscht wird, ist sie einfach weg. Auf den meisten Systemen wird dies nirgendwo protokolliert.
quelle
3
... verwenden, was ich in den letzten30
Minuten verwenden muss?ext3
Dateisystem. ext3grep kann bei der Jagd helfen. Ich habe superuser.com/a/433785/132604 erhalten , das einige Informationen und Links zu Dienstprogrammen enthält, mit denen gelöschte Dateien und Informationen zu diesen gefunden ( möglicherweise auch wiederhergestellt ) werden können. Wenn Sie eine Datei löschen, wird sie in den meisten Dateisystemen nicht tatsächlich entfernt, sondern als Speicherplatz markiert, der bei Bedarf überschrieben werden könnte.Sie sollten wahrscheinlich Inotify Tools installieren . Anschließend können Sie mit dem
inotifywait
Befehl auf Ereignisse warten, die für das angegebene Verzeichnis eintreten.Verwenden Sie diese Option, wenn Sie nach gelöschten Dateien und Ordnern suchen möchten
und protokollieren Sie diese Ausgabe in einer Datei.
Hoffe das löst dein Problem
quelle
/
Stammverzeichnis unter Berücksichtigung der Aktivierung / Deaktivierung von Laufwerken überwachen möchte ? In diesem Fall wäre das einzige, was für die Führung eines Löschprotokolls in Frage kommt , ein Kernel-Modul, in das ein Hook- Vorgang durchgeführt wirdunlink
(siehe stackoverflow.com/questions/8588386/… ). Außerdemman inotifywait
heißt es: "--recursive: Warnung: ... diese Option beim Betrachten ... eines großen Baums kann einige Zeit in Anspruch nehmen. Außerdem ... wird die maximale Anzahl an inotifizierten Uhren pro Benutzer erreicht Standardmaximum ist 8192; "dmesg [| tail]
sollte dir [die letzten] Reittiere anzeigen, wenn du danach fragst.Linux fordert im Allgemeinen keine Bestätigung vor dem Entfernen von Dateien an, vorausgesetzt, Sie verwenden sie über
rm
die Befehlszeile.Um nach Dateien zu suchen, die in den letzten 30 Minuten geändert wurden
touch --date="HH:MM" /tmp/reference
, erstellen Sie mit eine Datei mit dem Namen Referenz mit einem Zeitstempel von vor 30 Minuten (wobei HH: MM 30 Minuten entspricht). Verwenden Sie dannfind /home/sam/officedocuments -newer /tmp/reference
, um Dateien zu finden, die neuer als die Referenz sind.Wenn Sie Dateien mit einem GUI-Tool gelöscht haben, befinden sie sich möglicherweise immer noch in einem "Papierkorb". Dies hängt davon ab, was Sie für eine Desktop-Umgebung verwenden. Wenn Sie
rm
über die Befehlszeile verwendet haben, versuchen Sie es mit einem der in dieser Antwort genannten Dienstprogramme . (Hat einen Tipp an @Sampo für diesen Link.)quelle