Как я могу скопировать, рекурсивный каталог, только файлы с атрибутом 1, и сбросить этот атрибут на 0? Спасибо, Франциско
Вам, вероятно, придется установить пакет attr
, если вы хотите установить и получить расширенные атрибуты.
Вы можете написать скрипт на языке оболочки или языке более высокого уровня, чтобы спускаться по каталогам и проверять каждый файл, копируя те, которые соответствуют вашим критериям. Я бы лично использовал python.
Используя команду getfattr, вы можете получить значение для пользователя. name вы определяете себя как расширенный атрибут. После копирования файла вы можете установить другое значение, выполнив команду setfattr.
Я не вижу возможности для rsync или dump делать это. Говорят, что дамп игнорирует файлы с набором атрибутов d (не расширенный). Эти регулярные атрибуты устанавливаются с помощью chattr
, а атрибуты рассматриваются с помощью lsattr
. Эти команды также включают установку версии для файла, в случае, если она может использоваться вместо установки / сброса битов, о которых вы спрашиваете. Я полагаю, вы можете изменить версию от 0 до 1, если хотите. См. man chattr
и man lsattr
и, в частности, параметр -v.
Кажется, что устаревшая команда dump
использует собственный файл (/ var / lib / dumpdates) для отслеживания того, что было заархивировано, когда оно может создавать резервные копии постепенно, что может быть тем, что вы приближаются.
Может быть полезно узнать больше о том, чего вы пытаетесь достичь, если есть другой подход, не связанный с программированием.