Rsync (Remote sync) - это полезный инструмент синхронизации для копирования и синхронизации файлов и каталогов в локальных и удаленных системах Linux. Вы можете синхронизировать файлы между двумя каталогами на одном компьютере, между каталогами в двух системах в одной сети и между двумя каталогами в удаленной системе.
Установка Rsync на Ubuntu
Rsync предустановлен в некоторых дистрибутивах Linux. Если он не предустановлен, вы можете установить его с помощью следующей команды:
1 | sudo apt install rsync |
Основной синтаксис rsync следующий:
1 | rsync [опции] [источник] [пункт назначения]. |
В опциях вы можете указать различные параметры.
Копирование файлов локально
Чтобы скопировать все файлы из исходного каталога в каталог назначения, введите следующую команду:
1 | rsync /home/tin/Documents/*.odc /home/tin/Desktop/data |
После выполнения приведенной выше команды все файлы .odc в исходном каталоге /home/tin/Documents будут скопированы в каталог назначения /home/tin/Desktop/data.
Копирование файлов с локальной на удаленную систему
Rsync может копировать файлы по сети, все, что вам нужно - это SSH логин удаленного сервера или рабочего стола.
Пример:
1 | rsync -e ssh /var/www/ root@192.168.1.100:/var/www/ |
Эта команда копирует содержимое локальной папки /var/www в папку /var/www системы на IP 192.168.0.100. Она использует пользователя 'root' для входа в удаленную систему.
Копирование файлов в зависимости от размера
Вы также можете указать максимальный размер файла, который может быть скопирован с помощью rsync. Допустим, в данном случае я указываю максимальный размер 0,2K. Файлы размером больше этого значения не будут скопированы в /home/tin/Desktop/data.
1 | rsync --max-size=0.2k /home/tin/Documents/*.odc /home/tin/Desktop/data |
Аналогичным образом вы можете указать минимальный размер, который можно скопировать с помощью rsync.
В этом примере я указываю минимальный размер 30K. Файлы размером менее 30K не будут скопированы с помощью rsync.
1 | rsync --min-size=30k /home/tin/Documents/*.odc /home/tin/Desktop/data |
Просмотр прогресса
Вы также можете просмотреть прогресс при копировании файлов с помощью rsync. Добавьте -progress в команду rsync в синтаксисе, как показано ниже:
1 | rsync --min-size=20k --progress /home/tin/Documents/*.odc /home/tin/Desktop/data |
Копирование всей папки с помощью rsync
Аналогично файлам, вы также можете скопировать всю папку и содержащиеся в ней файлы с помощью команды rsync.
Добавьте в терминал следующую команду:
1 | rsync --recursive /home/tin/Documents/ /home/tin/Desktop/documents |
Исключение файлов
Вы также можете исключить определенные файлы при копировании файла и папки с помощью rsync.
1 | rsync -r --exclude="*.odc" /home/tin/Documents/ /home/tin/Desktop/documents |
Исключение файлов из копирования с помощью rysnc
Введя следующую команду, все файлы будут скопированы из источника в пункт назначения, кроме файлов .odc.
Вот и все основные возможности утилиты rsync. Вы можете использовать rsync для копирования и синхронизации файлов между различными каталогами в операционной системе Linux.