Thank you for reading this post, don't forget to subscribe!
В системах Linux все обрабатывается как файл, и важные метаданные о файле, такие как дата создания и изменения, хранятся в inodes.
Как найти время создание файла с помощью debugfs
Чтобы узнать время создания файла, вам сначала нужно найти номер inode целевого файла с помощью команды stat.
Команда stat – это инструмент командной строки, используемый для вывода подробной информации о метаданных файла, например:
- Размер файла
- Номер inode
- UID и GID файла
- Блок ввода/вывода
- Время доступа, модификации и изменения.
1 |
$ stat filename |
1 |
$ stat file1.txt |
Чтобы пропустить всю остальную информацию и просто отобразить только номер inode, используйте синтаксис:
1 |
$ stat -c %i file_name |
Например:
1 |
$ stat -c %i file1.txt |
Когда у вас есть номер inode, вы можете легко перейти к получению времени создания файла с помощью команды debugfs, используя показанный синтаксис:
1 |
$ sudo debugfs -R 'stat <inode number>' DEVICE |
1 |
$ lsblk |
Используя номер inode, который мы получили ранее, команда будет выглядеть так:
1 |
$ sudo debugfs -R 'stat <<span class="tlid-translation translation" lang="ru"><span class="" title="">951356</span></span>>' /dev/sda |
Время создания показано директивой crtime: как показано в выходных данных ниже:
Мы видим, что файл был создан 14-го откября 2020 г. в 11:48:19
В качестве альтернативы, вместо указания номера inode, вы можете передать полный путь к файлу, как показано тут:
1 |
$ sudo debugfs -R 'stat <span class="has-inline-color has-vivid-cyan-blue-color">/home/itsecforu/file1.txt</span>' /dev/sda1 |