Потратив время на попытку сделать работу rsync, я решил использовать что-то еще. У меня есть дерево файлов в / home, которое я хочу сделать резервными копиями на USB-накопитель 64G один раз в день, используя одну и ту же древовидную структуру, но только копируя те, которые не существуют в месте назначения (и сохраняют временные метки).
Проблема:
Даже если исходная папка имеет только один новый файл (и 400 старых), мой rsync всегда находит причину, чтобы скопировать примерно половину из них в dest.
Я экспериментировал с чем-то в соответствии с этим
find /home/me/a/r/z/ -type f -mmin 400 | xargs -0 -I{} cp '{}' /media/usb-id/$( cut -d / -f 4- {} )
Множество ошибок, я знаю. Я использую «4» с разрезом, потому что там начинается дерево в пункте назначения (/media/usb-id/r/z/whatever). Я думаю, что я должен использовать sed как-то во всем этом. Есть идеи?
Очевидная ошибка:
cut: {}: No such file or directory
является лучшим способом пойти, если вы хотите сохранить разрешения и владельца файлов. Это может быть очень важно, потому что система Linux зависит от него. Но это не важно для личных файлов данных.
я бы рекомендовал начать с 'сухого хода'
[Ф1]и если он выглядит хорошо, удалите опцию [ф5] и сделать это,
[Ф2]он сохраняет "все", так что вы можете скопировать всю операционную систему Linux с одного [ф6] файловой системы в другую [файловая система ф7]. И вы можете скопировать только ограниченное дерево каталогов, что слишком.
альтернатива [ф8] на целевой диск [F9] и, если вы должны быть в состоянии прочитать его из окна. Смотрите по этой ссылке. Файловая система [ф10] управление собственности и разрешения (и времени) в файловых системах Linux.
но есть недостаток с [ф11]. Нет никакого известного инструмента для ремонта.
- лучший способ, если вы хотите сохранить разрешения и права собственности на файлы. Это может быть очень важно, потому что от этого зависит система linux. Но это не важно для файлов личных данных.
Я бы рекомендовал начать с «сухого хода»
sudo rsync -Havn source/ target
, и если он выглядит хорошо, удалите опцию n и сделайте это,
sudo rsync -Hav source/ target
Он сохраняет «все», поэтому вы можете скопировать всю операционную систему Linux из одной файловой системы ext4 в другую файловую систему ext4. И вы можете также копировать только ограниченное дерево каталогов.
Альтернативой ext4 на целевом диске является udf, если вы должны быть в состоянии прочитать его из Windows. См. Эту ссылку. Файловая система udf может управлять правами собственности и разрешениями (и отметками времени) файловых систем Linux.
Но есть недостаток с udf. Нет никакого известного инструмента для его ремонта.
- лучший способ, если вы хотите сохранить разрешения и права собственности на файлы. Это может быть очень важно, потому что от этого зависит система linux. Но это не важно для файлов личных данных.
Я бы рекомендовал начать с «сухого хода»
sudo rsync -Havn source/ target
, и если он выглядит хорошо, удалите опцию n и сделайте это,
sudo rsync -Hav source/ target
Он сохраняет «все», поэтому вы можете скопировать всю операционную систему Linux из одной файловой системы ext4 в другую файловую систему ext4. И вы можете также копировать только ограниченное дерево каталогов.
Альтернативой ext4 на целевом диске является udf, если вы должны быть в состоянии прочитать его из Windows. См. Эту ссылку. Файловая система udf может управлять правами собственности и разрешениями (и отметками времени) файловых систем Linux.
Но есть недостаток с udf. Нет никакого известного инструмента для его ремонта.