diff options
Diffstat (limited to 'LINUX/SCP, SFTP.md')
| -rw-r--r-- | LINUX/SCP, SFTP.md | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/LINUX/SCP, SFTP.md b/LINUX/SCP, SFTP.md new file mode 100644 index 0000000..e133e5f --- /dev/null +++ b/LINUX/SCP, SFTP.md @@ -0,0 +1,70 @@ +Скопируем файл с удаленного хоста в локальный каталог: +$ scp user@host:/path/to/file /local/dir + +Скопируем файлы с локального компьютера на удаленный хост: +$ scp /local/dir/file user@host:/remote/dir + +Скопируем файл с одного удаленного хоста на другой: +$ scp user1@host1:/remote/file user2@host2:/remote/dir + +======================================== +Прога **sftp** не требует постоянно указывать адрес **ssh** сервера. Вместо этого мы подключаемся к нему один раз и используем интерфейс **get** и **put**: + +$ sftp user@host +sftp> get /remote/dir/file /local/dir +sftp> put /local/dir/file /remote/dir + +Для передачи каталогов используем флаг "**-r**": +$ scp -r /local/dir user@host:/remote/dir +$ sftp> put -r /local/dir /remote/dir + +***Также хочется отметить, что **sftp** имеет важное преимущество перед обычным **ftp** — она не требует, чтобы на удаленном узле работал сервер **FTP**. Ей необходим только **SSH**. + +======================================== +```sh +mkdir bot +scp /полный/путь/к файлу/скрипта/bot.py vlapa@10.10.10.2:~/work_prog + +# Копируем файл на сервер (копирум = что -> куда): + +scp -r source_file_name username@destination_host:destination_folder +# параметр: -r – рекурсивное копирование папок (включая подкаталоги) + +scp /etc/wireguard/wg0.conf vlapa@10.0.0.1:/home/vlapa/wg000.conf +scp vlapa@10.0.0.1:/home/vlapa/wg0.conf log.txt +scp path/myfile user@8.8.8.8:/full/path/to/new/location/ + +# Копируем файл с сервера: + +scp user@8.8.8.8:/full/path/to/file /path/to/put/here +``` + +``` +-r - рекурсивное копирование +-p - сохраняет временные метки и права доступа на файлы +-q - тихий режим. Подавляет все сообщения, кроме ошибок +-C - включает сжатие данных +-P 1345 - указывает порт подключения к удаленному хосту +``` +💻 **Передача файлов с помощью scp** +Когда нам необходимо быстро передать файл на сервер или наоборот, скопировать файл с сервера на локалку, мы можем воспользоваться утилитой — **scp (Secure Copy Protocol)**. + +SCP — это утилита командной строки в Linux, используемая для безопасной передачи файлов между локальным и удаленным узлами или между двумя удаленными узлами. Она использует протокол SSH (Secure Shell) для передачи данных, обеспечивая безопасное копирование файлов с использованием тех же мер аутентификации и безопасности, что и SSH. + +⚙️ **Примеры использования** +• Копирование файла на удалённый сервер: + +`scp file.txt user@remote_host:/path/to/destination + +• Скачивание файла с сервера: +`scp user@remote_host:/path/to/file.txt ./ + +• Передача директории: +`scp -r папка user@remote_host:/path/to/destination +`-r — ключ для копирования директории + + • Указание порта SSH: +Если вдруг используется нестандартный порт, мы можем его передать установив флаг -P: +`scp -P 2222 file.txt user@remote_host:/path/to/destination + +➡️ Для оптимизации передачи больших файлов, можем добавить флаг -C для сжатия файлов. А также, для проверки удачной передачи, включаем подробный вывод -v.
\ No newline at end of file |
