ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Понедельник, 31 марта, 2025
Сегодня у нас 1 праздник:
Международный День Резервного Копирования (World Backup Day). Пользователи сайта социальных новостей reddit предложили сделать дату 31.03 Международным днём резервного копирования, аргументируя это тем, что никогда заранее нельзя узнать, какие сюрпризы преподнесёт 1.04

Как рекурсивно копировать удаленные файлы в Linux

Bash Heredoc

Когда вам нужно скопировать удаленные файлы в Linux, два популярных инструмента командной строки могут сделать эту работу за вас — например, scp и rsync. В этой статье будет описано, как использовать инструменты scp и rsync для рекурсивного копирования удаленных файлов в Linux.

 

Предварительное условие

Рабочая конфигурация SSH.

 

Рекурсивное копирование удаленных файлов с помощью scp

Scp — это аббревиатура от Secure Copy. Инструмент scp используется для безопасного копирования файлов на удаленный компьютер и с него с использованием протокола защищенной оболочки (SSH).

Базовый синтаксис команды scp следующий.

scp <option> <source> <destination>

Чтобы рекурсивно копировать файлы, вам нужно использовать параметр -r.

Например, приведенная ниже команда рекурсивно скопирует содержимое каталога my/projects в каталог /backup на удаленном сервере. Требуется действительное имя пользователя на удаленном сервере.

$ scp -r /projects redhat8@20.68.114.222:/backup

 

Вот еще один пример рекурсивного копирования содержимого каталога /backup/projects с удаленного сервера в каталог на моем локальном компьютере.

$ scp -r redhat8@20.68.114.222:/backup/projects /recovered

 

Рекурсивное копирование удаленных файлов с помощью rsync

Инструмент rsync (удаленная синхронизация) используется для копирования (синхронизации) файлов между локальными или удаленными компьютерами. Rsync также использует SSH для связи. Базовый синтаксис команды rsync следующий.

rsync <options> <source <destination>

Возможность рекурсивного копирования файлов обозначается -r.

Другие рекомендуемые варианты включают:

 

В rsync очень хорошо то, что он сравнивает исходный и целевой каталоги и копирует только различия. Эта функция снижает использование сетевых данных и делает rsync хорошим инструментом для зеркалирования и резервного копирования данных.

Ниже приведен пример рекурсивного копирования содержимого каталога my/projects2 в каталог /backup2 на удаленном сервере. Требуется действительное имя пользователя на удаленном сервере.

rsync -rav /projects2 redhat8@20.68.114.222:/backup2

 

В следующем примере рекурсивно копируется содержимое каталога /backup2/projects2 с удаленного сервера в каталог на моем локальном компьютере.

rsync -rav redhat8@20.68.114.222:/backup2/projects2 /recovered2

 

Заключение

В этой статье показано, как рекурсивно копировать файлы в Linux с помощью инструментов scp и rsync. Поделитесь с нами вашими мыслями.

Exit mobile version