Я предполагаю, что файлы и каталоги в вашей "онлайн" / виртуальной файловой системе взаимно однозначно соответствуют файлам и каталогам в базовой (серверной) файловой системе.
Обычная семантика файловой системы POSIX такова, чтоКаталог mtime обновляется только при добавлении, удалении или переименовании файлов в каталоге.Внесение таких изменений в каталог не приводит к изменению mtime в любых родительских каталогах.Редактирование файла в каталоге также не меняет mtime каталога, только mtime самого файла.(Вы упомянули в своем вопросе, что редактирование файла в каталоге делает причиной обновления времени родительского каталога, но я думаю, что это, вероятно, потому, что вы редактируете файлы, делая новую копию и переименовывая ее поверхoriginal.)
Если вы хотите, чтобы также изменилось время изменения родительских каталогов, и вы хотите записать эту информацию в самой файловой системе, вам нужно сделать это вручную, касаясь каждого родительского каталога.вплоть до корня.Вероятно, это не приведет к значительному снижению производительности: вы можете использовать функцию touch
, которая должна составлять более или менее одного системного вызова utime
на каталог.
-Phil