Я использую rsnapshot
для управления инкрементным резервным копированием некоторых серверов GNU / Linux.
Хотя rsnapshot
поставляется с инструментом под названием rsnapshot-diff
он просто предоставляет статистику дискового пространства.
Вопрос в том, как получить разницу: новые и удаленные файлы на конкретном снимке.
Я читаю предложения вроде
# find /raid/rap/$interval -type f -links 1 -exec du -k {} \; | sort -rn
но с моими снимками это не сработало. Я изменил один файл и запустил один лайнер выше сразу после нового почасового снимка.0, и никаких различий не сообщалось. Хотя, если я запустил его как
# find /raid/rap/$interval -type f -links 2 -exec du -k {} \; | sort -rn
сообщается об измененном файле. Почему на измененный файл две ссылки?
Не уверен, что получил ответ на этот вопрос, но просто хотел сделать то же самое. Я использовал:
rsnapshot-diff -v folder1 folder2
который сработал для меня. Обратите внимание, что folder1 и folder2 являются папки и нет имена снимков. В моем случае папка 1 была /USB/USB_HDD_7/Snapshots/daily.0
Проблема, с которой я сталкиваюсь с "rsnapshot-diff" или даже связанным сценарием "diff_backup.pl", заключается в том, что они не принимают во внимание файлы, которые были переименованы, а затем повторно связаны вместе. Они перечисляют их как добавленные-удаленные, когда на самом деле они были перемещены и повторно связаны вместе (отдельный шаг).
Однако сам rsync знает, когда это происходит, и правильно перечисляет жестко связанные, но переименованные файлы ...
rsync -aHin dir2/ dir1 2>&1 | grep -v '^\.d'
единственная проблема заключается в том, что, хотя он перечисляет реальные изменения, он не дает изменений в использовании диска.