Блог / Статьи

Полезная информация для вашего хостинга

Освойте передачу файлов через SCP в Linux: от простых команд до передачи целых каталогов

При управлении сервером через персональный компьютер возникает потребность в передаче файлов между этими устройствами. Это может вызвать затруднения, но существует несколько способов, и один из них — команда SCP в Linux.

SCP расшифровывается как Secure Copy Protocol (протокол безопасного копирования). Эта команда обеспечивает безопасную передачу файлов между удаленным сервером и локальной машиной по протоколу SSH (Secure Shell). В отличие от простой команды cp (копировать), SCP гарантирует безопасность передаваемых данных.

Синтаксис SCP включает несколько команд, позволяющих выполнять различные операции по передаче файлов. Основная структура выглядит так:
scp [OPTIONS] [[user@]src_host:]file1 [[user@]dest_host:]file2
"src_host" — файл или каталог для передачи, "dest_host" — место, куда передается содержимое. Оба элемента могут быть как локальными, так и удаленными. Опции включают выбор порта, добавление информации о времени, передачу всей директории, отключение уведомлений и сжатие данных при копировании.

Команда SCP универсальна: помимо передачи файлов с удаленного узла на локальный, она поддерживает обратное направление и обмен файлами между двумя удаленными узлами. Перед использованием SCP убедитесь, что SSH установлен на каждом устройстве, и имейте root-доступ к каждому из них.

Обзор основных команд SCP: Передача файлов в Linux


Передвигаясь между локальным хостом и удаленным сервером, важно эффективно передавать файлы. Команда SCP в Linux — отличный инструмент для этой задачи. Давайте рассмотрим основные команды.

Перемещение файлов с локального хоста на удаленный сервер


Используйте:
scp /path/to/local/file username@remote_ip:/path/to/destination
/path/to/local/file: путь к файлам на локальной машине.
username: имя пользователя на удаленном сервере.
remote_ip: IP-адрес удаленного сервера.
/path/to/destination: место на удаленном сервере.
Совет: Замените длинные пути символом ~ (тильда).

Копирование нескольких файлов из каталога с общим расширением:


scp /path/to/local/*.txt username@remote_ip:/path/to/destination
Или копирование с переименованием:
scp /path/to/local/painauchocolat.txt username@remote_ip:/path/to/destination/croissant.txt

Передача файлов с удаленного сервера на локальный


Аналогичная команда для передачи с удаленного сервера:
scp username@remote_ip:/path/to/remote/file /path/to/local/destination

Совет: Если файлы в домашнем каталоге, укажите только имя файла.
scp Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.:painauchocolat.txt

Передают файл "painauchocolat.txt" из домашнего каталога удаленного сервера в домашний каталог локального компьютера.

002

Копирование файлов между удаленными хостами


SCP позволяет обмениваться файлами между удаленными серверами:
scp username@remote_ip1:/path/to/source/file username@remote_ip2:/path/to/destination

Замените имена пользователей, IP, пути и назначения. Помните, пользователи не обязаны быть идентичными. Вы можете передавать файлы от одной учетной записи к другой, указав соответствующие имена пользователей.

Управление Передачей Нескольких Файлов через SCP
При работе с удаленными серверами часто возникает необходимость эффективно передавать несколько файлов или целые каталоги. Команда SCP в Linux делает этот процесс простым и безопасным. Давайте рассмотрим управление передачей нескольких файлов.

Передача Каталогов


Для передачи целых каталогов используйте флаг -r:
scp -r /path/to/local/directory username@remote_ip:/path/to/destination

Если нужно скопировать отдельные файлы из каталога, просто укажите их имена:
scp /path/to/local/file1 file2 file3 username@remote_ip:/path/to/destination

Важные Моменты


Разрешения: Обеспечьте необходимые разрешения на чтение для исходных файлов и на запись для конечного каталога.

SSH: Так как используется SSH, убедитесь, что у вас есть соответствующий пароль.

Файлы с Одинаковыми Именами: Проверьте, что в целевом каталоге нет файлов с теми же именами, чтобы избежать их замены.

Двоеточие: Не забудьте поставить двоеточие между исходным и целевым адресами.

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

Заключение


Передача файлов — обычная задача при работе с удаленными серверами. SCP предоставляет удобный и безопасный способ справиться с этой задачей. Надеемся, что эта статья разъяснила синтаксис и облегчила вам передачу файлов. Будьте внимательны!