Rsync (Удаленная синхронизация) - наиболее часто используемая команда для копирование и синхронизация файлы и каталоги удаленно а также локально в Linux/Unix системы. С помощью rsync вы можете копировать и синхронизировать данные удаленно и локально между каталогами, дисками и сетями, выполнять резервное копирование и зеркалирование данных между двумя машинами Linux.
Эта статья объясняет 10 базовое и расширенное использование rsync команда для передачи файлов удаленно и локально в Linux на базе машин. Тебе не нужно быть корень пользователь для запуска rsync команда.
# параметры rsync источник назначения
Мы можем установить rsync package с помощью следующей команды.
# yum install rsync (Вкл. Красная Шапкана базе систем) # apt-get install rsync (Вкл.Debian на базе систем)
Эта следующая команда синхронизирует один файл на локальном компьютере из одного места в другое. Здесь, в этом примере, имя файла backup.tar нужно скопировать или синхронизировать с /tmp/backups/ папка.
[[электронная почта защищена]] # rsync -zvh backup.tar / tmp / backups / created directory / tmp / backups backup.tar отправлено 14,71 МБ получено 31 байт 3,27 МБ / сек общий размер 16,18M ускорение 1,10
В приведенном выше примере вы можете видеть, что если место назначения еще не существует, rsync автоматически создаст каталог для места назначения.
Следующая команда перенесет или синхронизирует все файлы из одного каталога в другой на том же компьютере. В этом примере /root/rpmpkgs содержит некоторые файлы пакета rpm, и вы хотите, чтобы этот каталог был скопирован внутри /tmp/backups/ папка.
[[электронная почта защищена]] # rsync -avzh / root / rpmpkgs / tmp / backups / отправка добавочного списка файлов rpmpkgs / rpmpkgs / httpd-2.2.3-82.el5.centos.i386.rpm rpmpkgs / mod_ssl-2.2.3-82.el5.centos.i386.rpm rpmpkgs / nagios-3.5.0.tar.gz rpmpkgs / nagios-plugins-1.4.16.tar.gz отправлено 4,99 МБ получено 92 байта 3,33 МБ байт / сек общий размер 4,99 млн ускорение 1,00
Эта команда синхронизирует каталог с локального компьютера на удаленный. Например: На вашем локальном компьютере есть папка «rpmpkgs», Который содержит некоторые Об / мин пакеты, и вы хотите, чтобы содержимое этого локального каталога отправлялось на удаленный сервер, вы можете использовать следующую команду.
[[электронная почта защищена]] $ rsync -avz rpmpkgs / [электронная почта защищена]:/дом/ [электронная почта защищена]пароль: отправка инкрементного списка файлов ./ httpd-2.2.3-82.el5.centos.i386.rpm mod_ssl-2.2.3-82.el5.centos.i386.rpm nagios-3.5.0.tar.gz nagios-plugins-1.4.16.tar.gz отправлено 4993369 байт получено 91 байт 399476,80 байт / сек общий размер 4991313 ускорение 1.00
Эта команда поможет вам синхронизировать удаленный каталог с локальным каталогом. В этом примере каталог /home/tarunika/rpmpkgs который находится на удаленном сервере, копируется на ваш локальный компьютер в /tmp/myrpms.
[[электронная почта защищена]] # rsync -avzh [электронная почта защищена]: / главная / tarunika / rpmpkgs / tmp / myrpms [электронная почта защищена]пароль: получение добавочного списка файлов создало каталог / tmp / myrpms rpmpkgs / rpmpkgs / httpd-2.2.3-82.el5.centos.i386.rpm rpmpkgs / mod_ssl-2.2.3-82.el5.centos.i386.rpm rpmpkgs / nagios-3.5.0.tar.gz rpmpkgs / nagios-plugins-1.4.16.tar.gz отправлено 91 байт, получено 4,99 МБ 322,16 КБ байт / сек общий размер 4,99 млн ускорение 1,00
С помощью rsync мы можем использовать SSH (Безопасная оболочка) для передачи данных, используя SSH протокол при передаче наших данных вы можете быть уверены, что ваши данные передаются в защищенном соединение с шифрованием, чтобы никто не мог прочитать ваши данные, пока они передаются по проводам на Интернет.
Также, когда мы используем rsync, нам нужно предоставить Пользователь/корень пароль для выполнения этой конкретной задачи, поэтому используйте SSH опция отправит ваши логины в зашифрованном виде, чтобы ваш пароль будет безопасно.
Чтобы указать протокол с rsync вам нужно дать "-e»С именем протокола, который вы хотите использовать. В этом примере мы будем использовать «ssh" с "-e»И выполните передачу данных.
[[электронная почта защищена]] # rsync -avzhe ssh [электронная почта защищена]: /root/install.log / tmp / [электронная почта защищена]пароль пользователя: получение инкрементного списка файлов install.log отправлено 30 байтов получено 8,12 Кбайт 1,48 Кбайт / сек общий размер 30,74 КБ ускорение 3,77
[[электронная почта защищена]] # rsync -avzhe ssh backup.tar [электронная почта защищена]: / резервные копии / [электронная почта защищена]пароль: отправка инкрементного списка файлов backup.tar отправлено 14,71 МБ получено 31 байт 1,28 МБ / сек общий размер 16,18 МБ ускорение 1,10.
Предлагаемое чтение:Используйте Rsync для синхронизации новых или измененных / измененных файлов в Linux
Чтобы показать прогресс при передаче данных с одной машины на другую, мы можем использовать "-прогресс' вариант для этого. Он отображает файлы и время, оставшееся до завершения передачи.
[[электронная почта защищена]] # rsync -avzhe ssh --progress / home / rpmpkgs [электронная почта защищена]: / корень / rpmpkgs [электронная почта защищена]пароль: отправка добавочного списка файлов созданного каталога / root / rpmpkgs rpmpkgs / rpmpkgs / httpd-2.2.3-82.el5.centos.i386.rpm 1.02M 100% 2,72 МБ / с 0:00:00 (xfer # 1, to-check = 3/5) rpmpkgs / mod_ssl-2.2.3-82.el5.centos.i386.rpm 99.04K 100% 241.19kB / s 0:00:00 (xfer # 2, to-check = 2/5 ) rpmpkgs / nagios-3.5.0.tar.gz 1.79M 100% 1.56MB / s 0:00:01 (xfer # 3, to-check = 1/5) rpmpkgs / nagios-plugins-1.4.16.tar.gz 2.09M 100% 1.47MB / s 0:00:01 (xfer # 4, to-check = 0/5) отправлено 4.99M полученных байтов 92 байта 475,56 Кбайт / сек общий размер 4,99 МБ ускорение 1.00
Эти два варианта позволяют нам включают и исключать файлы, указав параметры с помощью этой опции, помогает нам указать эти файлы или каталоги которые вы хотите включить в синхронизацию и исключить файлы и папки, в которых вы не хотите быть переведен.
В этом примере команда rsync будет включать только те файлы и каталог, которые начинаются с "р’И исключите все остальные файлы и каталоги.
[[электронная почта защищена]] # rsync -avze ssh --include 'R *' --exclude '*' [электронная почта защищена]: / var / lib / rpm / / root / rpm [электронная почта защищена]пароль: получение добавочного списка файлов, созданный каталог / root / rpm ./ Requirename Requireversion отправлен 67 байт получено 167289 байт 7438,04 байт / сек общий размер 434176 ускорение 2,59
Если файл или каталог не существует в источнике, но уже существует в месте назначения, вы можете удалить этот существующий файл / каталог в целевом устройстве во время синхронизации.
Мы можем использовать '-Удалить‘Возможность удаления файлов, которых нет в исходном каталоге.
Источник и цель синхронизированы. Теперь создаем новый файл test.txt в цель.
[[электронная почта защищена]] # touch test.txt. [[электронная почта защищена]] # rsync -avz --delete [электронная почта защищена]: / var / lib / rpm /. Пароль: получение списка файлов... сделано. удаление test.txt. ./ отправлено 26 байт получено 390 байт 48,94 байт / сек. общий размер 45305958 ускорение 108908,55
У цели есть новый файл с именем test.txt, при синхронизации с источником с помощью ‘-Удалить‘Вариант, он удалил файл test.txt.
Вы можете указать Максимум размер файла для передачи или синхронизации. Вы можете сделать это с помощью "–Max-size" вариант. В этом примере максимальный размер файла равен 200 тыс., поэтому эта команда будет передавать только те файлы, которые меньше или равны 200 тыс..
[[электронная почта защищена]] # rsync -avzhe ssh --max-size = '200k' / var / lib / rpm / [электронная почта защищена]: / корень / tmprpm [электронная почта защищена]пароль: отправка добавочного списка файлов, созданного в каталог / root / tmprpm ./ Conflictname Group Installtid Name Provideversion Pubkeys Requireversion Sha1header Sigmd5 Triggername __db.001 отправлено 189,79 Кбайт получено 224 байта 13,10 Кбайт / сек общий размер 38.08M ускорение 200.43
Теперь предположим, что у вас есть основной веб-сервер и сервер резервного копирования данных, вы создали ежедневную резервную копию и синхронизировал его с сервером резервного копирования, теперь вы не хотите хранить эту локальную копию резервной копии в Интернете сервер.
Итак, дождетесь ли вы завершения передачи, а затем удалите этот локальный файл резервной копии вручную? Конечно нет. Это автоматическое удаление можно выполнить с помощью ‘–Remove-исходные файлы' вариант.
[[электронная почта защищена]] # rsync --remove-source-files -zvh backup.tar / tmp / backups / backup.tar отправлено 14,71 МБ получено 31 байт 4,20 МБ / сек общий размер 16,18 МБ ускорение 1,10 [[электронная почта защищена]] # ll backup.tar ls: backup.tar: Нет такого файла или каталога
Если вы новичок и используете rsync и не знаете, что именно будет делать ваша команда. Rsync действительно может испортить вещи в папке назначения, а отмена действий может оказаться утомительной работой.
Предлагаемое чтение:Как синхронизировать два веб-сервера / веб-сайта Apache с помощью Rsync
Использование этой опции не приведет к внесению каких-либо изменений, только выполнит пробный запуск команды и покажет вывод команды, если вывод показывает точно то же самое, что вы хотите сделать, тогда вы можете удалить ‘-пробный прогон‘Опцию вашей команды и запустите на терминале.
[электронная почта защищена]] # rsync --dry-run --remove-source-files -zvh backup.tar / tmp / backups / backup.tar отправлено 35 байтов получено 15 байтов 100,00 байт / сек общий размер 16,18M ускорение 323584,00 (DRY RUN)
Вы можете установить ограничение пропускной способности при передаче данных с одного компьютера на другой с помощью «–Bwlimit' вариант. Эти параметры помогают нам ограничить Ввод / вывод пропускная способность.
[[электронная почта защищена]] # rsync --bwlimit = 100 -авже ssh / var / lib / rpm / [электронная почта защищена]: / корень / tmprpm / [электронная почта защищена]пароль: отправка инкрементного списка файлов. отправлено 324 байта получено 12 байтов 61,09 байт / сек. общий размер 38.08M ускорение 113347.05
Кроме того, по умолчанию rsync синхронизирует только измененные блоки и байты, если вы явно хотите синхронизировать весь файл, используйте ‘-W‘Вариант с этим.
[[электронная почта защищена]] # rsync -zvhW backup.tar /tmp/backups/backup.tar. backup.tar. отправлено 14,71 МБ получено 31 байт 3,27 МБ / сек. общий размер 16,18M ускорение 1,10
Теперь с rsync все, вы можете увидеть страницы руководства для дополнительных опций. Оставайтесь на связи с Tecmint для получения более захватывающих и интересных уроков в будущем. Оставьте свой Комментарии и предложения.