So finden Sie die Linux-Dateierstellungszeit mit Debugfs

In Linux-Systemen wird alles wie eine Datei behandelt und wichtige Metadaten zu einer Datei wie das Erstellungs- und Änderungsdatum werden in Inodes gespeichert. Wir haben uns bereits angesehen, wie Sie das Datum der letzten Änderung einer Datei in einem Linux-System mit den Befehlen stat, httpie und date überprüfen können.

In diesem Tutorial zeigen wir Ihnen, wie Sie den Zeitpunkt der Dateierstellung mit dem Befehl debugfs ermitteln.

Dateierstellung mit debugfs suchen

Um die Erstellungszeit abzurufen, müssen Sie zunächst die Inode-Nummer der Zieldatei mit dem Befehl stat ermitteln. Der stat-Befehl ist ein Befehlszeilentool, das verwendet wird, um detaillierte Informationen zu den Metadaten einer Datei zu drucken, wie zum Beispiel:

  1. Dateigröße
  2. Inode-Nummer
  3. UID & GID der Datei
  4. E/A-Block
  5. Zugangs-, Änderungs- und Änderungszeiten.

Sie können den stat-Befehl in seiner Grundform verwenden, um die Inode-Nummer der Datei mit der folgenden Syntax zu überprüfen:

$ stat filename

Für example:

$ stat file1.txt

Der Befehl gibt uns die Inode-Nummer der Datei ‘file1.txt‘ wie 1078474. Um alle anderen Informationen zu überspringen und nur die Inode-Nummer anzuzeigen, verwenden Sie die Syntax:

$ stat -c %i file_name

Für example:

$ stat -c %i file1.txt

Sobald Sie die Inode-Nummer haben, können Sie mit dem debugfs-Befehl mit der gezeigten Syntax einfach die Dateierstellungszeit abrufen:

$ sudo debugfs -R 'stat <inode number>' DEVICE

Das DEVICE stellt das Blockgerät dar, auf dem sich Ihre Datei befindet example /dev/sda1, /dev/sda2 usw. Um das Blockgerät zu überprüfen, führen Sie den Befehl aus:

$ lsblk

Unter Verwendung der Inode-Nummer, die wir zuvor erhalten haben, lautet der Befehl daher:

$ sudo debugfs -R 'stat <1078474>' /dev/sda

Finden Sie die Dateierstellungszeit mit debugfs

Der Erstellungszeit wird die Direktive vorangestellt Zeit: wie in der Ausgabe oben gezeigt. Wie wir sehen können, wurde die Datei am 13. Freitag Dezember 2019 um 01:39:18 Uhr erstellt.

Alternativ können Sie, anstatt die Inode-Nummer anzugeben, den vollständigen Pfad zur Datei wie gezeigt übergeben:

$ sudo debugfs -R 'stat /home/winnie/file1.txt' /dev/sda1

Der obige Befehl führt zu den gleichen Ergebnissen wie bei der Verwendung der Inode-Nummer.

Fazit

Und damit ist dieses Tutorial abgeschlossen, in der Hoffnung, dass Linux einen einfachen Befehl hat, um die Zeit für die Dateierstellung zu finden. Hier haben wir den debugfs-Befehl verwendet, um die Erstellungszeit einer Datei zu überprüfen.