← Все статьи

SCP: как скопировать файл на сервер и с сервера по SSH

Автор: Юрий Нефёдов, системный инженер · 23.06.2021 · обновлено 24.10.2026

scp копирует файлы между компьютерами по SSH. Если вы можете зайти на сервер по SSH, то можете и передать файл: отдельно ничего настраивать не нужно. Общий вид команды: scp откуда куда, где удалённый путь записывается как пользователь@сервер:/путь.

Отправить файл на сервер

Команда выполняется на вашем компьютере. remote — имя сервера или его IP-адрес:

scp /file/to/send username@remote:/where/to/put

Забрать файл с сервера

Источник и назначение просто меняются местами:

scp username@remote:/file/to/send /where/to/put

Скопировать между двумя серверами

scp username@remote_1:/file/to/send username@remote_2:/where/to/put

По умолчанию первый сервер подключается ко второму сам, поэтому у него должен быть туда доступ. Если доступ есть только с вашего компьютера, добавьте ключ -3, тогда данные пойдут через вас.

Полезные ключи

scp -r /local/dir username@remote:/where/to/put     # скопировать папку целиком
scp -P 2222 file username@remote:/where/to/put      # SSH на нестандартном порту (P заглавная)
scp -p file username@remote:/where/to/put           # сохранить время изменения и права

Чем заменить scp

Для больших объёмов удобнее rsync: он докачивает прерванную передачу и копирует только изменившиеся файлы:

rsync -avP /local/dir/ username@remote:/where/to/put/

В новых версиях OpenSSH (с 9.0) scp сам работает поверх протокола SFTP, привычные команды при этом остаются прежними.

Нужна помощь с настройкой?

Если задача сложнее, чем в статье, напишите мне. Первая консультация бесплатная.