Polecenie DEBUGFS - Pokaż czas tworzenia pliku w systemie Linux
W systemach uniksowych, takich jak Linux, wszystko jest uważane za plik i wszystkie informacje o pliku (metadane lub atrybuty pliku, takie jak czas utworzenia, ostatnia modyfikacja itp.), z wyjątkiem rzeczywistej zawartości pliku, są przechowywane w i-węźle, a Linux identyfikuje każdy plik na podstawie numeru i-węzła innego niż nazwa pliku czytelna dla człowieka.
Ponadto program statystyczny dla systemu Linux jest przydatnym narzędziem do wyświetlania stanu plików lub systemu plików. Pokazuje takie informacje, jak numer i-węzła, czas powstania pliku, ostatnia modyfikacja danych, ostatni dostęp, ostatnia zmiana statusu i wiele więcej. Połączymy oba programy, aby znaleźć rzeczywisty czas tworzenia pliku w systemie Linux.
W tym artykule wyjaśnimy, jak znaleźć jeden z krytycznych atrybutów pliku za pomocą programów debugfs i stat, aby uzyskać następujące informacje o utworzeniu/dostępie do pliku w Systemy plików Linuksa.
- ctime: pokazuje czas zmiany pliku.
- atime: pokazuje czas dostępu do pliku.
- mtime: pokazuje czas modyfikacji pliku.
- crtime: pokazuje czas utworzenia pliku.
Znajdź datę utworzenia pliku w systemie Linux
1. Aby znaleźć datę i godzinę utworzenia pliku „crtime”, należy znaleźć i-węzeł pliku za pomocą polecenia stat w stosunku do pliku o nazwie „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: -
Alternatywnie możesz użyć polecenia ls -i wobec pliku o nazwie „About-TecMint”.
ls -i About-TecMint
14420015 About-TecMint
Z wyniku powyższych poleceń wynika, że numer i-węzła pliku to 14420015. Zanotuj ten unikalny numer i-węzła, ponieważ będziemy go używać w poniższych krokach.
2. Teraz musimy znaleźć główny system plików, w którym znajduje się nasz plik, po prostu wydaj następującą komendę df -h, aby zidentyfikować główny system plików.
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
Z powyższych danych wynika, że system plików partycji root to /dev/sda10
(zanotuj ten system plików). W Twoim systemie będzie to wyglądało inaczej.
3. Następnie użyj polecenie debugfs, aby znaleźć czas utworzenia pliku o nazwie „About-TecMint”, z - Flaga R
, która instruuje debugfs, aby wykonał pojedyncze polecenie zewnętrzne określone z numerem i-węzła 14420015 (w tym przypadku stat), a następnie zakończył działanie.
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)
Z powyższych danych wynika, że plik „About-TecMint” został utworzony poniedziałek 1 sierpnia 2016 r., 10:26:36
zgodnie z informacjami dostarczonymi przez crtime . Zobaczysz także „ctime”, „atime” i „mtime” swojego pliku.