Убийство rsync мягко
Есть ли способ сказать rsync
чтобы остановить по возможности чистым способом? Два варианта:
- сказать
rsync
остановить передачу текущего файла, очистить любой временный файл и выйти; - или пусть
rsync
завершите передачу текущего файла и затем остановитесь.
Делая Ctrl + C, он останавливает промежуточную передачу и оставляет там временные файлы, верно?
редактировать
Даже если использовать --inplace
? Какой будет лучший курс действий? я использую rsync
с --inplace
и я должен идти быстро, как я могу сказать: "Может быть, конец этого файла, а затем выйти или выйти сейчас, но почистите этот файл, который вы копировали, чтобы не оставить поврежденных вещей (мне все равно, будет ли он удален, Я могу сделать резервную копию позже) "или что-то в этом роде.
1 ответ
Если вы убьете rsync с помощью Ctrl+C, он остановит его в середине передачи, но не будет сохранять там временные файлы, если только не работает с --partial
вариант.
Для тех, кто заинтересован просто приостановить rsync, если вы нажмете Ctrl+Z, программа остановится. Когда вы возобновите его, запустив fg
или же bg
rsync будет повторять файл, который он не завершил, и продолжит загрузку остальных файлов. Чтобы увидеть все запущенные в данный момент программы, запустите jobs
О нас
Проблема с --inplace заключается в том, что он не создает новый файл при обновлении данных, он просто записывает в существующий. Если вы нажмете Ctrl+C во время работы с --inplace и обновите существующий файл, он оставит наполовину готовый файл, не удаляя его. Кроме того, если вы синхронизируете только новые файлы и не обновляете существующие, то, когда вы отключаете передачу (с помощью ctrl + c), он оставляет половинный файл, который не удаляется. Просто примечание, которое я бы не рекомендовал --inplace для файлов ОС. Вы можете реально поднять некоторые вещи (потому что они часто меняются)