Metode de plată Abuse

Cum să vedeți data creării fișierului în Linux

22.04.2022, 18:05

Pe un sistem Linux, proprietățile unui fișier din managerul de fișiere afișează doar informații despre data ultimei accesări a fișierului și data modificării. Însă data creării nu este afișată acolo. Uneori trebuie să vă uitați la ea, de exemplu, pentru a afla când este înregistrat jurnalul. În această instrucțiune vă vom spune cum să vedeți ce date sunt stocate în sistemele de fișiere Linux și vă vom explica cum să aflați data de creare a unui fișier Linux. Două modalități convenabile vor fi menționate imediat, fiecare cu propriile sale particularități.

Data creării fișierului

Standardul POSIX specifică doar 3 tipuri de timestamps pe care un sistem de fișiere trebuie să le stocheze:

  • atime - ora ultimului acces la fișier.
  • mtime - ora ultimei modificări a conținutului.
  • ctime - ora ultimei modificări a drepturilor de acces sau a proprietarului.

Acesta este motivul pentru care în sistemele de fișiere vechi este adesea imposibil să se vadă informații despre data creării fișierului. Dar în sistemele de fișiere moderne (ext4, zfs, XFS și așa mai departe) aceasta este deja stocată.

Datele despre data creării sunt înregistrate într-un câmp special:

  • Ext4 - crtime
  • ZFS - crtime
  • XFS - crtime
  • Btrfs - otime
  • JFS - di_otime

Există două metode de a vizualiza aceste informații: stat și debugfs. Cu toate acestea, prima metodă nu este potrivită pentru utilizatorii fiecărei distribuții Linux. A doua metodă este universală, dar nu atât de ușor de utilizat. Să ne ocupăm de fiecare dintre ele separat.

Utilizarea Stat

Utilitarul Stat afișează informații detaliate despre un fișier. Printre altele, acesta afișează data la care a fost creat fișierul Linux. Pentru a-l rula în terminal, trebuie doar să specificați calea către fișier. De exemplu, să ne uităm la informațiile despre imaginea pic_1.jpeg stocată în catalogul /home/root-user/Pictures:

$ stat /home/root-user/Pictures/pic_1.jpeg

Informațiile necesare sunt înregistrate în coloana Created. Iar prin utilizarea opțiunii -c puteți seta anumite reguli de formatare pentru ieșirea informațiilor, de exemplu, lăsând doar coloana necesară:

$ stat -c '%w' /home/root-user/Pictures/pic_1.jpeg

Cum să vedeți data creării fișierului în Linux

Există însă o mică dificultate. Pe unele distribuții Linux, acest câmp va fi gol atunci când se utilizează utilitarul stat.

Cum să vedeți data creării fișierului în Linux

Principalul motiv este că ieșirea este afișată în statx(2). Shell-ul a fost adăugat la biblioteca glibc în versiunea 2.28. Adică, suportul pentru acest shell a apărut în setul GNU coreutils 8.31 de utilități de bază ale sistemului. Pentru a verifica versiunea, executați această comandă:

$ stat --version

Cum să vedeți data creării fișierului în Linux

În consecință, stat va putea emite date privind crearea fișierelor numai dacă sunt prezente condițiile specifice descrise mai sus. De exemplu, în distribuția Ubuntu 21.10 totul funcționează fără probleme, dar în Ubuntu 20.04 câmpul va fi gol.

Utilizarea DebugFS

Utilitarul DebugFS nu are restricții de versiune. Acesta va funcționa întotdeauna. Dar procedura sa de utilizare este un pic mai complicată. Acest lucru se datorează faptului că, pentru a vizualiza data creării unui fișier prin debugfs, trebuie să cunoașteți numărul său de inode și sistemul de fișiere. Pentru a obține inode-ul, utilizați comanda ls cu opțiunea -i, specificând calea către fișier:

$ ls -i /home/root-user/scripts/main_script.txt

Cum să vedeți data creării fișierului în Linux

Pentru a vizualiza sistemul de fișiere, comanda df va fi utilă:

$ df /home/root-user/scripts/main_script.txt

Cum să vedeți data creării fișierului în Linux

Acum aveți toate datele necesare și puteți trece la utilitarul debugfs. Trebuie să îi treceți opțiunea -R, să specificați numărul inodului și apoi numele sistemului de fișiere:

$ sudo debugfs -R 'stat <28>' /dev/sda5

Cum să vedeți data creării fișierului în Linux

După aceea, veți putea găsi în terminal câmpul în care este stocată data creării. În cazul nostru este crtime.

Acest lucru completează instrucțiunile.