configurations/linux/scp.md

32 lines
2.0 KiB
Markdown
Raw Normal View History

# Копирование файлов на удалённый сервер через SSH
`scp` - средство безопасной передачи компьютерных файлов между локальным хостом и удаленным хостом или между двумя удаленными хостами.
```sh
scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2
```
- `[user@]SRC_HOST:]file1` - исходный файл
- `[user@]DEST_HOST:]file2` - конечный файл
- `OPTION` - `scp` опции:
- `-P` - используемый порт подключения (`22` по умолчанию)
- `-p` - сохранять время модицикации файлов
- `-F` - указывает альтернативный файл конфигурации для каждого пользователя для `ssh`
- `-C` - включить сжатие при передаче
- `-r` - рекурсивное копирование директорий
- `-v` - более подробный режим
- `-l` - ограничивает полосу пропускания, указанную в `Кбит/с`
- `-i` - выбирает файл, из которого считывается идентификатор (закрытый ключ) для аутентификации по открытому ключу
Например, копирование каталога `~/pictures/mypic` с `локального` компьютера на удалённый компьютер `192.168.56.150` в директорию `/home/user` с использованием ключа идентификации `~/.ssh/mykey` по порту `2222`:
```sh
scp -P 2222 -i ~/.ssh/mykey -r ~/pictures/mypic user@192.168.56.150:/home/user/
```
Либо с удалённого компьютера на локальный компьютер в домашнюю директорию:
```sh
scp user@192.168.56.150:/home/user/myfile ~/
```