Как копировать папки через SSH

Источник: «How to Copy Folders Using SSH»
Копирование папок между локальной и удалённой системами может не относиться к ежедневным задачам, но иногда это необходимо. В этой статье мы рассмотрим практические сценарии использования SSH для копирования папок с упором на команду scp. Рассмотрим основные способы использования, типичные проблемы и советы, позволяющие сделать передачу файлов более эффективной.

Копирование папки проекта

Сценарий: Вы работали над проектом локально, и теперь необходимо загрузить его на dev-сервер.

Шаги:

scp -r ./my_project user@dev_server:/home/user/projects/

Объяснение:

Скачивание папки с удалённого сервера

Сценарий: Необходимо загрузить большую папку данных с удалённого сервера компании для локального анализа.

Шаги:

scp -r user@company_server:/path/to/data_folder ./
scp -rC user@company_server:/path/to/data_folder ./

Копирование между двумя удалёнными серверами

Сценарий: Необходимо перенести папку конфигурации с одного сервера на другой.

Шаги:

scp -r user1@server1:/path/to/config_folder user2@server2:/destination/path/

Работа с нестандартными портами SSH

Сценарий: Сервер использует порт 2222 для SSH вместо стандартного 22.

Решение: Используйте флаг -P, чтобы указать порт:

scp -P 2222 -r local_folder user@remote_server:/remote/path/

Сохранение атрибутов файлов

Сценарий: При переносе веб-сайта необходимо сохранить все разрешения на файлы в неизменном виде.

Решение: Используйте флаг -p, чтобы сохранить время модификации, время доступа и права доступа:

scp -rp /local/website/files user@web_server:/var/www/html/

Заключение

Освоение команды scp для копирования папок через SSH очень важно для эффективного управления файлами в разных системах. Ознакомившись с этими практическими сценариями и советами, вы будете подготовлены к решению различных задач по передаче файлов в повседневной работе. Не забывайте проверять команды перед выполнением, особенно если речь идёт о важных данных.

Дополнительные материалы

Предыдущая Статья

Руководство по событиям модели Laravel

Следующая Статья

Повышение производительности PHP с OPCache