Как передавать файлы по SSH

Как правильно передавать файлы с windows на linux и с linux на linux по ssh

Как передавать файлы по SSH: Windows → Linux и Linux → Linux

update manjaro

SSH позволяет безопасно передавать файлы между машинами через зашифрованное соединение. Для этого чаще всего используют SCP, SFTP и rsync, причём SCP подходит для быстрых разовых операций, а rsync удобен для больших объёмов данных и синхронизации.

Windows → Linux

В Windows 10 и 11 можно использовать встроенный OpenSSH-клиент и команду scp, которая копирует файлы на удалённый Linux-сервер по SSH.[cite:20]cite:22 Базовый синтаксис выглядит так:

scp C:\путь\к\файлу.txt user@server:/путь/на/сервере/

Эта команда отправит локальный файл на удалённую машину. Чтобы скачать файл обратно с Linux на Windows, путь источника и назначения меняют местами:

scp user@server:/путь/к/файлу.txt C:\путьаомпьютере\

Если нужно передать целую папку, добавляют ключ -r для рекурсивного копирования.

scp -r C:\папка user@server:/путь/на/сервере/

Если встроенный scp не используется, в Windows можно работать через pscp.exe из набора PuTTY или через графический клиент WinSCP, который подключается по SFTP или SCP.

Linux → Linux

В Linux передача файлов по SSH обычно тоже выполняется через scp, который входит в набор OpenSSH. Пример отправки файла на другой сервер:

scp /home/user/file.txt user@server:/home/user/

Пример скачивания файла с удалённой машины:

scp user@server:/home/user/file.txt /home/user/Downloads/

Для копирования каталога также используют ключ -r.

scp -r /home/user/project user@server:/home/user/

Полезные опции

При нестандартном SSH-порте используют ключ -P, например -P 2222. Для ускорения передачи можно включить сжатие данных ключом -C.

scp -P 2222 -C file.txt user@server:/путь/

Когда лучше rsync

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

rsync -avz /home/user/project/ user@server:/home/user/project/

В коротких инструкциях обычно достаточно помнить простое правило: для разовой передачи файлов удобно использовать scp, а для регулярной синхронизации и больших объёмов — rsync.