10 примеров команды rsync в Linux (2023)
Команда rsync — это мощный и универсальный инструмент, предназначенный для эффективной синхронизации файлов в вашей среде Linux. Независимо от того, являетесь ли вы системным администратором, разработчиком или просто энтузиастом Linux, использование возможностей команды rsync может значительно улучшить ваш рабочий процесс. В этой статье мы рассмотрим несколько практических примеров использования команды rsync в Linux.
Как установить rsync в системе Linux
Прежде чем мы обсудим примеры команды rsync в Linux, давайте сначала узнаем, как ее установить. Используйте команду, специфичную для вашего дистрибутива Linux, для установки rsync:
sudo apt установить rsync sudo yum установить rsync
Синтаксис и параметры команды Rsync Linux
Простой синтаксис команды rsync делает ее идеальным выбором для любого типа пользователей. Синтаксис использования команды rsync в команде Linux:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
rsync
В приведенном выше синтаксисе
Практические примеры команды Rsync в Linux
После этого давайте рассмотрим несколько примеров использования команды rsync в ваших системах Linux.
1. Синхронизация каталогов в локальной файловой системе
Этот сценарий является одним из наиболее распространенных вариантов использования rsync. Предположим, у вас в системе есть две одинаковые папки с некоторыми различиями, и вам нужно их синхронизировать после сравнения. Вы можете использовать команду rsync как:
rsync
Например, если вы хотите синхронизировать исходную папку «src_local1» и папку назначения «dest_local1»:
rsync -a -v src_local1/dest_local1/
Примечание. Если вам нужно сохранить разрешения и владельца содержимого каталога, используйте ключи -p (сохранить разрешения) и -o (сохранить владельцев).
2. Синхронизация файла в локальной файловой системе
Подобно тому, как вы можете синхронизировать два каталога, вы также можете использовать команду rsync для синхронизации отдельных файлов. Для синхронизации файла используйте этот синтаксис:
rsync
Например, чтобы синхронизировать файл с именем test.txt, используйте эту команду:
rsync -a -v src_local1/test.txt dest_local1/
3. Синхронизируйте файлы и каталоги из удаленной системы в локальную систему
С помощью команды rsync вы даже можете копировать/синхронизировать с удаленной системой из вашей локальной системы. Используйте этот синтаксис для копирования файлов из удаленной системы:
rsync
Например, если вам нужно перейти из удаленного исходного каталога с именем «src_remote» в «dest_local», используйте команду:
rsync -a -v root@45.79.126.148:~/src_remote1/ ~/dest_local/
4. Синхронизируйте файлы и каталоги из локальной системы в удаленную систему.
Точно так же, как вы можете копировать файлы из удаленной системы на локальный компьютер, вы также можете использовать команду rsync для синхронизации файлов из вашей локальной системы с удаленной системой, к которой у вас есть доступ:
rsync
Например, чтобы скопировать весь локальный исходный каталог «src_local» в каталог «dest_remote» в удаленной системе, используйте это:
rsync -a -v ~/src_local1/ root@45.79.126.148:~/dest_remote1/
5. Удалить исходные файлы после синхронизации
Если вам нужно удалить исходные файлы после их синхронизации с местом назначения, добавьте флаг –remove-source-files, например:
rsync
Например, чтобы удалить старую резервную копию файла «test.txt» после завершения копирования с локального компьютера на удаленную систему:
rsync -a –remove-source-files ~/src_local1/test.txt root@45.79.126.148:~/dest_local1/
6. Исключите или включите только определенные файлы/каталоги из копирования/синхронизации с помощью Rsync
Чтобы исключить определенные файлы/каталоги для rsync из синхронизации, используйте флаг –exclude, например:
rsync
А чтобы включить определенные типы файлов с помощью команды rsync, используйте флаг –include, например:
rsync
Например, чтобы исключить все файлы .txt и включить все файлы .py в каталог src_local1:
rsync -a -v –exclude=*.txt –include=*.py ~/src_local1/ root@45.79.126.148:~/dest_local1/
7. Установите ограничение размера файла для синхронизации
Вы даже можете ограничить максимальный размер файла, который может быть передан команде rsync, используя флаг –max-size:
rsync
Например, если вам нужно установить ограничение на размер файла для копирования до 1 ГБ:
rsync -a -v –max-size=”1G” ~/src_local1/ ~/dest_local1/
8. Установите ограничение пропускной способности для синхронизации
Если вы находитесь в сети, где у вас есть ограничения на скорость сети, вы можете использовать флаг –bwlimit с командой rsync. Обязательно установите пропускную способность в кбит/с с помощью следующего синтаксиса:
rsync
Например, чтобы установить пропускную способность 100 кбит/с, вы можете использовать команду rsync следующим образом:
rsync -a -v –bwlimit=”100″ ~/src_local1/ ~/dest_local1/
9. Сжать данные и скопировать в место назначения
Иногда вы находитесь в плохой сети и вам нужно отправить данные из вашей системы на другой компьютер назначения, вы можете сжать данные, а затем отправить их. Это обеспечит низкий общий объем передаваемых данных, что может работать даже на низких скоростях. Чтобы сжать данные, используйте флаг -z с командой rsync Linux:
rsync
Например, чтобы сжать файл test.txt и отправить его в удаленный каталог назначения ~/dest_remote1/:
rsync -a -v -z ~/src_local1/test.txt root@45.79.126.148:~/dest_remote1/
Примечание. Не используйте флаг -z при передаче файлов в локальной системе, так как это может сильно замедлить всю операцию.
10. Отображение текущего хода передачи
Иногда при передаче больших файлов с помощью команды rsync Linux все, что вы видите, это мигающий курсор, который не дает вам представления о том, что на самом деле происходит. Чтобы показать индикатор выполнения текущей передачи, используйте флаг –progress с командой rsync:
rsync -a –progress ~/src_local1/ ~/dest_local1/
Команда Rsync Linux не работает? Как исправить!
Это расстраивает, когда вам нужно передать некоторые файлы с помощью команды rsync и вы сталкиваетесь с некоторыми ошибками. Что ж, вот несколько общих советов по устранению неполадок, которые помогут решить проблему с неработающей командой rsync:
1. Команда rsync не найдена
Иногда вы можете столкнуться с ошибкой rsync command not found в системах Linux. Это может быть связано с неправильно установленным пакетом rsync, поэтому убедитесь, что в вашей системе Linux установлен rsync. Если нет, используйте соответствующую команду для установки пакета rsync в вашем дистрибутиве.
2. Отказано в доступе
Как правило, эта ошибка возникает, когда вы пытаетесь записать в каталог, для которого у вас нет прав на запись. Ознакомьтесь с нашим обширным руководством по разрешениям в Linux.
3. rsync не удалось установить время включения
Этот тип ошибки возникает, когда время модификации файлов и каталогов отличается как на исходном, так и на целевом компьютере. Это приводит к конфликту времени модификации и, в конечном счете, к ошибке.