Recherche de site Web

Commande DEBUGFS - Afficher les heures de création de fichier sous Linux


Dans les systèmes de type Unix tels que Linux, tout est considéré comme un fichier, et toutes les informations sur un fichier (métadonnées ou attributs de fichier tels que l’heure de création, la dernière modification, etc.), à l’exception du contenu réel du fichier, sont stockées dans un inode et Linux identifie chaque fichier par son numéro d’inœud autre que le nom de fichier lisible par l’homme.

De plus, le programme statistique Linux est un utilitaire utile pour afficher l’état des fichiers ou du système de fichiers. Il affiche des informations telles que le numéro d’inode, l’heure de naissance du fichier, la dernière modification de données, le dernier accès, le dernier changement de statut et bien plus encore. Nous allons combiner les deux programmes pour trouver l’heure réelle de création de fichiers sous Linux.

Dans cet article, nous allons expliquer comment trouver l’un des attributs critiques d’un fichier à l’aide des programmes debugfs et stat pour obtenir les informations de création/d’accès suivantes pour un fichier dans les systèmes de fichiers Linux.

  • ctime : Affiche le temps de changement de fichier.
  • atime : Affiche le temps d’accès aux fichiers.
  • mtime : Affiche l’heure de modification du fichier.
  • crtime : Affiche l’heure de création du fichier.

Trouver la date de création du fichier sous Linux

1. Pour trouver la date et l’heure de création d’un fichier, « crtime » consiste à trouver l’inode du fichier à l’aide de la commande stat par rapport à un fichier appelé « About-TecMint ».

$ stat About-TecMint 

  File: 'About-TecMint'
  Size: 260       	Blocks: 8          IO Block: 4096   regular file
Device: 80ah/2058d	Inode: 14420015    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/ tecmint)   Gid: ( 1000/ tecmint)
Access: 2017-02-23 14:15:20.263337740 +0530
Modify: 2015-10-22 15:08:25.236299000 +0530
Change: 2016-08-01 10:26:36.603280013 +0530
 Birth: -

Alternativement, vous pouvez utiliser la commande ls -i sur un fichier appelé « About-TecMint ».

$ ls -i About-TecMint
 
14420015 About-TecMint

À partir de la sortie des commandes ci-dessus, le numéro d’inœud du fichier est 14420015. Veuillez noter ce numéro d’inœud unique car nous l’utiliserons dans les étapes suivantes.

2. Maintenant, nous devons trouver le système de fichiers racine dans lequel notre fichier réside, il suffit d’exécuter la commande df -h suivante pour identifier le système de fichiers racine.

$ df -h

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           788M  9.7M  779M   2% /run
/dev/sda10      324G  277G   31G  91% /
tmpfs           3.9G  192M  3.7G   5% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/loop3       87M   87M     0 100% /snap/core/4486
/dev/loop0       87M   87M     0 100% /snap/core/4407
/dev/loop1       82M   82M     0 100% /snap/core/4206
/dev/loop2      181M  181M     0 100% /snap/vlc/190
/dev/loop4      189M  189M     0 100% /snap/vlc/158
cgmfs           100K     0  100K   0% /run/cgmanager/fs
tmpfs           788M   40K  788M   1% /run/user/1000

D’après la sortie ci-dessus, le système de fichiers pour la partition racine est /dev/sda10 (notez ce système de fichiers). Ce sera différent sur votre système.

3. Ensuite, utilisez la commande debugfs pour trouver l’heure de création du fichier appelé « About-TecMint », avec l’indicateur -R qui indique à debugfs d’exécuter la seule commande externe spécifiée avec le numéro d’inode 14420015 (stat dans ce cas), puis de quitter.

$ sudo debugfs -R 'stat <14420015>' /dev/sda10

Inode: 14420015   Type: regular    Mode:  0777   Flags: 0x80000
Generation: 2130000141    Version: 0x00000000:00000001
User:  1000   Group:  1000   Size: 260
File ACL: 0    Directory ACL: 0
Links: 1   Blockcount: 8
Fragment:  Address: 0    Number: 0    Size: 0
 ctime: 0x579ed684:8fd54a34 -- Mon Aug  1 10:26:36 2016
 atime: 0x58aea120:3ec8dc30 -- Thu Feb 23 14:15:20 2017
 mtime: 0x5628ae91:38568be0 -- Thu Oct 22 15:08:25 2015
crtime: 0x579ed684:8fd54a34 -- Mon Aug  1 10:26:36 2016
Size of extra inode fields: 32
EXTENTS:
(0):57750808
(END)

À partir de la sortie ci-dessus, il est clair que le fichier « About-TecMint » a été créé le Mon Aug 1 10:26:36 2016 comme fourni par crtime. Vous verrez également « ctime », « atime » et « mtime » de votre fichier.

Articles connexes: