rsync: удалите только посторонние файлы с меткой времени ранее, чем новейшее в исходном каталоге

Я пытаюсь сохранить два каталога однорангового узла в синхронизации с помощью rsync. Проблема, которую я имею, состоит в том, что новые файлы могут быть добавлены или удалены в любом каталоге, прежде чем синхронизация произойдет.

Если удаление происходит в одном, то - удаляют опцию, удалил бы тот файл в другом месте, пока это было выбрано в качестве цели сначала. Иначе, если бы каталог с устаревшим файлом все еще в нем был выбран в качестве источника первоначально, то файл был бы скопирован через в каталог, из которого мы ранее удалили его.

Если файл будет создан в одном, и тот каталог не выбран в качестве источника, то файл будет классифицироваться, поскольку посторонний - удаляют опцию и удалены, несмотря на то, чтобы быть допустимым дополнением.

Существует ли способ сделать более интеллектуальные удаления или исключает на основе меток времени? В противном случае затем я только рассматриваю rsync как инструмент "главный-подчиненный", и не способный справиться с равноправными отношениими однорангового узла.

1
задан 09.02.2011, 13:17

1 ответ

Вы могли взломать удар scipt вместе на основе использования меток времени CURL -I который дает Вам информацию о заголовке для файлов.

  1. Проверьте метку времени:

    curl -I http://somesite.com/somefolders/somefile.script | grep Date:
    Date: Fri, 11 Feb 2011 06:24:40 GMT
    
  2. Преобразуйте время для добавления метки времени:

    date --utc --date "Fri, 11 Feb 2011 06:24:40 GMT" +%s
    
    1297405480
    
  3. Используйте метку времени для сравнения файлов:

    if [[ time1 == time2 ]]; then curl (upload file)
    

Я нашел это для Dropbox: http://davehope.co.uk/Blog/backup-your-linux-vps-to-dropbox/

1
ответ дан 17.12.2019, 00:26

Теги

Похожие вопросы