Что такое доступ к файлу?

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Аватара пользователя
жучара
Сообщения: 1112
ОС: астралинукс

Что такое доступ к файлу?

Сообщение жучара »

Друзья! Если уж чтение из файла это НЕ доступ, тогда я не знаю, что и делать:

Информация о файле, вывод даты доступа, вывод файла, вывод даты доступа: (Последняя не меняется. Гениально, чё сказать)

Shell

$ file foo
foo: ASCII text
$ stat -c%X foo
1720278315
$ cat foo
cafebabe
$ stat -c%X foo
1720278315
$
Подождать? Так я и так жду. И потом, другая информация, например, дата изменения файла применяется мгновенно:

Shell

$ file foo
foo: ASCII text
$ stat -c%Z foo
1720278391
$ echo cafebabe > foo
$ stat -c%Z foo
1720278639
$


Вот, собсно вопрос. Вот этот доступ к файлу, который имеют ввиду создатели утилиты stat он что такое и как его получить? Спасибо, кто откликнется.
Я просто читаю маны.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21366
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что такое доступ к файлу?

Сообщение Bizdelnick »

См. man mount на предмет опций atime, noatime, relatime и подобных.
TL;DR: если при каждом доступе сохранять дату, всё будет очень тормозить.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
жучара
Сообщения: 1112
ОС: астралинукс

Re: Что такое доступ к файлу?

Сообщение жучара »

Bizdelnick, да? Там написано:

Shell

relatime
Update inode access times relative to modify or change time. Access time is only updated if the previous access time was earlier than the current modify or change time.
А у меня предыдущий доступ НЕ был раньше, а время доступа всё равно поменялось.

Shell

$ touch foo
$
$ stat foo
Файл: foo
Размер: 9 Блоков: 8 Блок В/В: 4096 обычный файл
Устройство: 8/6 Инода: 9270601 Ссылки: 1
Доступ: (0644/-rw-r--r--) Uid: ( 1000/ user) Gid: ( 1000/ user)
Доступ: 2024-07-06 20:40:58.578487469 +0500
Модифицирован: 2024-07-06 20:40:58.578487469 +0500
Изменён: 2024-07-06 20:40:58.578487469 +0500
Создан: 2024-07-06 20:02:22.304360612 +0500
$
$ cat foo
cafebabe
$
$ stat foo
Файл: foo
Размер: 9 Блоков: 8 Блок В/В: 4096 обычный файл
Устройство: 8/6 Инода: 9270601 Ссылки: 1
Доступ: (0644/-rw-r--r--) Uid: ( 1000/ user) Gid: ( 1000/ user)
Доступ: 2024-07-06 20:41:12.198893076 +0500
Модифицирован: 2024-07-06 20:40:58.578487469 +0500
Изменён: 2024-07-06 20:40:58.578487469 +0500
Создан: 2024-07-06 20:02:22.304360612 +0500
$
они, наверное имели ввиду "был раньше или равен текущему времени модификации или изменения файла"
Я просто читаю маны.
Спасибо сказали: