Введение
Rsync — это инструмент с открытым исходным кодом, который позволяет создавать резервные копии данных путем синхронизации файлов и папок между исходным каталогом и каталогом назначения как локально, так и удаленно. Это команда командной строки, которая позволяет передавать файлы и каталоги в локальные и удаленные места назначения и используется для репликации данных, резервного копирования или переноса данных на другие серверы. Одной из основных особенностей Rsync является его эффективность и скорость, поскольку он копирует только изменения, внесенные в исходный код, и предлагает варианты настройки. Кроме того, вы можете имитировать команду Rsync, чтобы убедиться, что вы не делаете ничего плохого.
Скопируйте недостающие файлы с помощью Rsync
Чтобы скопировать только отсутствующие файлы с помощью rsync, вы можете использовать параметр --ignore-existing
. Это указывает rsync игнорировать файлы, которые уже существуют в целевом расположении, и копировать только отсутствующие файлы. Например, чтобы скопировать все файлы из «исходного» каталога в «целевой» каталог, используя параметр --ignore-existing
, выполните следующую команду:
rsync --ignore-existing -av source/destination/
Параметр -a
указывает rsync сохранять атрибуты файла, а параметр подробного режима -v
показывает ход передачи и копируемые файлы.
Скопируйте измененные файлы с помощью Rsync
Вы также можете копировать только новые или измененные файлы и исключать старые файлы, которые уже существуют в месте назначения. Для этого вы можете использовать опцию -u
или --update
вместе с -r
или --recursive
для рекурсивной передачи каталога.
rsync -ur source/destination/
Копировать файлы, измененные за последние N дней
Вы также можете указать, что rsync должен копировать только те файлы, которые изменились за последние N дней. Например, чтобы копировать только те файлы, которые были изменены за последние 7 дней, используйте параметр --max-age
вместе с количеством дней, например:
rsync --ignore-existing --max-age=7 -av source/destination/
Скопируйте файлы по размеру с помощью Rsync
Также можно указать копировать только файлы большего или меньшего размера, чем определенный размер, используя параметр --size-range
, который принимает аргумент +SIZE
или -SIZE
. Например, если вы хотите копировать только файлы размером более 100 МБ, вы должны использовать параметр --size-range
следующим образом:
rsync --ignore-existing --size-range='+100M' -av source/destination/
Есть также много других опций, доступных с rsync, которые можно использовать для дальнейшего улучшения процесса передачи файлов. Например, вы можете использовать параметр --exclude
, чтобы исключить передачу определенных файлов или каталогов, или параметр --dry-run
, чтобы увидеть, какие файлы будут скопированы без фактического выполнения переноса.
Заключение
В заключение, команда rsync является мощным инструментом для копирования файлов и каталогов и может использоваться для копирования только отсутствующих или измененных файлов в целевое расположение. Используя различные параметры, доступные в rsync, вы можете дополнительно настроить процесс передачи файлов в соответствии со своими конкретными потребностями.