Почему rsync пытается скопировать файл, который уже актуален?

Поток “Переключатель к определенной рабочей области” ярлыки не работает после того, как перезагрузка кажется, что это решает Вашу проблему точно.

Это использует то, что Compiz "рабочие области" являются на самом деле областями просмотра единственной рабочей области.

wmctrl -d используется для обнаружения размера реальной рабочей области включая все области просмотра. Деление этого количеством областей просмотра дает размер одной области просмотра в пикселях. Затем, например, wmctrl -o 768,0 отображает область просмотра, горизонтальное смещение которой составляет 768 пикселей.

Поток также описывает, как использовать менеджера по Настройкам Compiz для привязки их wmctrl команды к ключам.

24
08.08.2013, 19:02
1 ответ

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

Это - ожидаемый (и более безопасный) поведение. Например, давайте предположим, что у Вас есть два каталога, ~/src и ~/dest, каждый с foobar файлом. В ~/src/foobar Вы пишете "нечто", и затем в ~/dest/foobar Вы пишут "панель". Теперь Вы rsync ~/src к ~/dest. Что Вы ожидали бы?

Оба файла имеют тот же размер, но тот в ~/dest является более новым. Поведение стандарта Rsync состоит в том, чтобы заменить ~/dest/foobar ~/src/foobar. Конечно, файлы могли быть идентичными, и это будет ненужным, но нет никакого способа знать это, если Вы не делаете контрольную сумму или сравнивать бит на бит.

Если Вы не хотите того поведения, то есть Вы хотите, чтобы более новые файлы в получателе были сохранены, необходимо использовать-u (-обновление) флаг.

- u, - обновляют, Это вынуждает rsync пропустить любые файлы, которые существуют на месте назначения и имеют измененное время, которое является более новым, чем исходный файл. (Если существующий целевой файл будет иметь время изменения, равное исходному файлу, то он будет обновлен, если размеры будут отличаться.)

37
27.01.2020, 19:41
  • 1
    Да, это была действительно проблема. Я забыл добавлять -t флаг, таким образом, это не устанавливало надлежащее время изменения на новом файле и последующие rsync вызовы, пытался обновить более новый файл.Спасибо! –  Rogach 08.08.2013, 21:08
  • 2
    @Rogach Всегда использует rsync -a если у Вас нет серьезного основания не к. –  Gilles 'SO- stop being evil' 09.08.2013, 02:12

Теги

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