Я використовую свій NAS для резервного копіювання декількох менших систем, які контролюють сонячну установку, використовуючи rsync. Це чудово працює. Тепер я хочу створити резервну копію всього накопичувача NAS.
Для кожної машини Linux є підкаталоги - 8 з них.
Коли я дізнався більше і налаштував свої виключення, я бачу цілу кількість залишків, які я забув виключити раніше.
Раніше я виключав /lost+found
каталоги, але не замислювався, /.trash-1000
а зараз їх дуже багато.
Просто додаючи їх до
--exclude
списку, навіть--delete
не видаляючи їх, оскільки виключення змушує програму rsync повністю пропускати їх.
Він працює не так, як це робить Robocopy / MIR.
Тож почнемо з .Trash, і я думаю, що відповідь допоможе мені, якщо я знайду інших, яких я спочатку забув виключити.
Очевидно, одне рішення - видалити весь каталог для кожного сервера по черзі, а потім повторно запустити повний rsync з новим набором виключень.
Але це, мабуть, дуже багато роботи.
Отже, моє запитання полягає в тому, що коли я роблю повну rsync накопичувача NAS, чи є загальний спосіб виключити всі папки .Trash-1000? Якщо це працює, я можу поміняти диски та відновити операції з чистішим.
Я шукаю щось подібне:
--exclude="*.Trash*"
... так що вони не копіювали б їх, незалежно від їх розташування в структурі каталогу.
Мені дуже хочеться знати, як це зробити за допомогою rsync, і я шукаю рішення проблеми, як додавання виключає причин rsync пропускати їх, а не видаляти їх.
Крім того, замість того, щоб робити це під час rsyncs, я вітаю відповідь, яка б показала мені, як шукати та знищувати ці каталоги на оригінальному накопичувачі NAS.
rsync - як змусити видаляти каталоги або файли, недавно додані до списку виключень
--delete-before
та / та --delete-after
варіантів, як згадується у програмі Rsync - Man . Я думаю, що функція Robocopy, про яку ви звертаєтесь, є /PURGE
варіантом, і я думаю, що один із цих двох або, можливо, обох зробить те, що вам потрібно - досить простий для тестування.
*.Trash*
каталоги, які вже були скопійовані?