LINUX.ORG.RU
ФорумAdmin

А есть ли такая ФС/опция?


0

1

А есть ли такая ФС/опция, чтобы при любом изменении файла/каталога в глубине дерева mtime (или иной атрибут) менялся бы у всего дерева вверх? То есть, чтобы посмотрев на атрибут корневого каталога можно бы было сразу понять, менялось в нём что-то или нет с момента последней проверки?

(всякие банальности, что это всё для структуры, которая редко меняется, но часто читается и что оверхед на обновление дерева роли не играет — подразумеваются)

Или, может, есть обёртки какие-то готовые на inotify, типа, если поменялось что-то, то всё дерево обновляется уже сторонним скриптом? Костыль, конечно, но тоже сойдёт.

★★★★★

incron я думаю можно так настроить, чтобы при изменении mtime самой нижней директории он рекурсивно вверх его менял.

blind_oracle ★★★★★
()

Это твоя рожа на аватарке? :)

anonymous
()
Ответ на: комментарий от blind_oracle

Да, видимо, подходит. Что приятно, внутри LXC-контейнера работает корректно.

Осталось придумать красивый метод для touch вверх по дереву от файла — и готово :)

KRoN73 ★★★★★
() автор топика
Ответ на: комментарий от KRoN73

Осталось придумать красивый метод для touch вверх по дереву от файла — и готово :)

FILE="/a b/b/dg"
cd /; echo "$FILE" | sed 's|/|\n|g' | sed -e 1d -e \$d | while read d; do cd "$d"; touch .; done

?

val-amart ★★★★★
()
Ответ на: комментарий от KRoN73

если принципиально идти вверх по дереву:

FILE="/a b/b/dg"
while [ "$FILE" != "/" ]; do cd "$FILE"; touch .; FILE=$(dirname "$FILE"); done;

// не touch'ит корень

val-amart ★★★★★
()
Ответ на: комментарий от val-amart

если принципиально идти вверх по дереву

Нет, не принципиально. Мне важно только обнаружить изменения в структуре одной проверкой, чтобы не мониторить десяток файлов по одному.

Второй вариант — то, что надо. С поправкой на проверку не на «/», а на корень структуры. До корня обновлять время модификации мне не нужно :)

KRoN73 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.