Файлові часові позначки в Linux: atime, mtime, ctime

У Linux кожен файл має деякі часові позначки, які забезпечують певну аналітику щодо того, коли файл або його атрибути були змінені або змінені.

atime означає час доступу. Ця часова мітка повідомляє вам, коли востаннє був доступний файл. Під доступом це означає, що ви використовували кішку, vim, менше чи якийсь інший інструмент для читання або відображення вмісту файлу.

mtime означає час зміни. Ця часова мітка повідомляє вам, коли востаннє файл був змінений. Зміна означає, що вміст файлу було змінено шляхом редагування файлу.

ctime означає час зміни статусу. Ця часова мітка повідомляє вам, коли востаннє було змінено властивість та метадані файлу. Метадані включають дозволи на файли, право власності, ім'я та місцезнаходження файлу.

Як побачити часові позначки файлу?

stat <filename>
stat zomro.txt
  File: zomro.txt
  Size: 6736      	Blocks: 16         IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 281292      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/    olex)   Gid: ( 1000/    olex)
Access: 2023-12-11 13:58:34.126939141 +0200
Modify: 2023-12-11 13:58:33.886936816 +0200
Change: 2023-12-11 13:58:33.886936816 +0200
 Birth: 2023-12-11 12:23:38.024537844 +0200

Пам'ятайте, ctime завжди змінюється з mtime. Це тому, що, поки mtime знаходиться під контролем користувача, система контролює ctime. Він показує, коли останній раз блоки даних або метадані файлу були змінені. Якщо ви модифікуєте файл, блоки даних змінюються, і таким чином змінюється ctime.

Ви можете змінити ctime самостійно, змінивши дозволи на файли використання chmod або команди chgrp але ви не можете змінювати mtime без зміни ctime.

Ви також не можете змінювати час у минуле звичайними засобами. Це своєрідна функція безпеки, оскільки вона повідомляє вам востаннє, коли файл був змінений. Навіть якщо хтось модифікує mtime і встановлює його в минулий час, ctime вказуватиме фактичний час, коли mtime було змінено.

Last updated