1

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

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

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

Есть ли способ сделать более интеллектуальные удаления или исключения на основе временных меток? Если нет, то я вижу только rsync как инструмент «ведущий-ведомый» и не в состоянии справиться с одноранговыми отношениями.

1 ответ1

1

Вы можете взломать bash 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/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .