Как скопировать файл с Windows на Linux через PuTTY — вопрос, который возникает у многих пользователей, работает с удалёнными серверами. PuTTY сам по себе — это SSH-клиент, и напрямую перетаскивать файлы через него не получится. Но есть несколько проверенных способов: через SCP, утилиту PSCP или SFTP. Каждый метод имеет свои нюансы, и мы разберём их подробно.
Например, если нужно срочно загрузить конфигурационный файл на сервер или перебросить лог для анализа, времени на настройку сложных инструментов нет. донат на помощь приходят встроенные возможности PuTTY и его дополнительные утилиты. они работают быстро, не требуют установки тяжелого ПО и гарантируют безопасность передачи данных.
Почему не копирует файлы напрямую
PuTTY — это клиент для подключения к удалённым серверам по протоколам SSH, Telnet или Rlogin. Его основная задача — предоставлять терминальный доступ, а не передавать файлы. Для обмена данными нужны дополнительные инструменты, которые работают поверх SSH:
- SCP (Secure Copy Protocol) — копирует файлы по
SSH, используя командную строку. - PSCP — утилита от создателей PuTTY, работающая из командной строки Windows.
- SFTP (SSH File Transfer Protocol) — протокол для интерактивной передачи файлов через
SSH.
Без этих инструментов PuTTY остаётся только терминалом — полезным, но не универсальным.
Если вам нужно перебросить один-два файла, используйте PSCP — это самый быстрый способ без настройки дополнительного ПО.
| Метод | Скорость | Сложность настройки | Требует ли GUI | Подходит для больших файлов |
|---|---|---|---|---|
| SCP | Высокая | Низкая (команды в терминале) | Нет | Да |
| PSCP | Высокая | Средняя (нужно скачать утилиту) | Нет | Да |
| SFTP | Средняя | Средняя (нужен клиент, например, WinSCP) | Да (опционально) | Да |
Сравнение методов передачи файлов через PuTTY
Чтобы выбрать подходящий способ, сравним три основных метода по ключевым критериям: скорости, простоте использования и требованиям к настройке.
Если вы работаете в командной строке и не хотите устанавливать дополнительное ПО, SCP — оптимальный выбор. Для пользователей, которые предпочитают графический интерфейс, подойдёт SFTP через WinSCP или аналогичные программы. А PSCP — это золотой стандарт для быстрой передачи файлов без лишних телодвижений.
Подготовка к передаче файлов
Перед тем как скопировать файл с Windows на Linux через PuTTY, нужно выполнить несколько подготовительных шагов. Это сэкономит время и избавит от типичных ошибок:
- Убедитесь, что у вас есть доступ по SSH. Проверьте, что вы можете подключиться к серверу через PuTTY с помощью логина и пароля или SSH-ключа.
- Проверьте права на запись. Убедитесь, что у вашего пользователя на Linux-сервере есть права на запись в целевой директории.
- Определите путь к файлу. Запишите полные пути к файлу на Windows и директории на Linux, куда он будет копироваться.
- Проверьте свободное место. Убедитесь, что на сервере достаточно места для файла.
Если что-то из этого списка не выполнено, передача файлов может завершиться ошибкой. Например, отсутствие прав на запись — частая причина неудач при использовании SCP.
Использование для передачи файлов
SCP (Secure Copy Protocol) — один из самых надёжных способов передачи файлов между Windows и Linux. Он входит в состав большинства дистрибутивов Linux и доступен из командной строки Windows через OpenSSH или сторонние утилиты.
Вот как это работает на практике:
- Откройте командную строку Windows. Нажмите
Win + R, введитеcmdи нажмитеEnter. - Используйте команду SCP. Формат команды:
scp [опции] источник пользователь@сервер:путь_назначения - Пример: Чтобы скопировать файл
C:\data\report.txtна сервер192.168.1.100в директорию/home/user/documents/под пользователемuser, выполните:scp C:\data\report.txt user@192.168.1.100:/home/user/documents/ - Введите пароль. После выполнения команды система запросит пароль для подключения по
SSH.
⚠️ Внимание: Если вы используете SSH-ключи для аутентификации, убедитесь, что приватный ключ находится в директории~/.ssh/на Windows и имеет корректные права доступа. В противном случаеSCPможет не сработать.
PSCP: утилита от создателей PuTTY
PSCP (PuTTY Secure Copy) — это утилита командной строки, разработанная создателями PuTTY. Она работает аналогично SCP, но не требует установки OpenSSH на Windows. PSCP входит в состав пакета PuTTY и доступна для скачивания на официальном сайте.
Вот какзовать PSCP для передачи файла:
| Действие | Команда | Описание |
|---|---|---|
| Копирование файла на сервер | pscp C:\path\to\file.txt user@server:/path/to/destination/ | Копирует файл file.txt на удалённый сервер |
| Копирование с портом | pscp -P 2222 C:\file.txt user@server:/home/user/ | Использует нестандартный порт 2222 для подключения |
| Копирование с ключом | pscp -i C:\keys\private.ppk C:\file.txt user@server:/home/user/ | Использует приватный ключ private.ppk для аутентификации |
| Рекурсивное копирование директории | pscp -r C:\folder\ user@server:/home/user/ | Копирует всю директорию folder рекурсивно |
Преимущество PSCP — простота и совместимость с PuTTY. Если вы уже используете PuTTY для подключения к серверу, PSCP будет естественным выбором.
SFTP: интерактивная передача файлов
SFTP (SSH File Transfer Protocol) — это протокол, который позволяет интерактивно работать с файлами на удалённом сервере. В отличие от SCP, он поддерживает команды вроде ls, cd, get и put, что делает его удобным для работы с большим количеством файлов.
Чтобы использовать SFTP через PuTTY, выполните следующие шаги:
- Запустите PuTTY. Откройте программу и введите адрес сервера, порт (обычно
22), а также логин и пароль (или загрузите SSH-ключ). - Подключитесь к серверу. Нажмите
Open, чтобы установить соединение. - Запустите SFTP-сессию. В терминале PuTTY введите команду:
sftp user@serverГдеuser— ваш логин, аserver— адрес сервера. - Работайте с файлами. Используйте команды:
put C:\path\to\file.txt /remote/path/— для загрузки файла на сервер,get /remote/path/file.txt C:\local\path\— для скачивания файла с сервера.
SFTP удобен для работы с большим количеством файлов, так как позволяет управлять ими интерактивно, как в обычной файловой системе.
Пошаговая инструкция: копируем файл через PSCP
Разберём самый универсальный способ — передача файла через PSCP. Это быстрый и надёжный метод, который работает в большинстве случаев.
Вот пошаговый алгоритм:
Как скопировать файл с Windows на Linux через PSCP
Часто задаваемые вопросы
Можно ли использовать для передачи файлов без дополнительных утилит?
Нет, PuTTY сам по себе не поддерживает передачу файлов. Для этого нужны дополнительные инструменты: SCP, PSCP или SFTP. Однако PuTTY можно использовать для запуска SFTP-сессии вручную.
Какая команда нужна, чтобы скопировать папку с подпапками на Linux-сервер?
Для рекурсивного копирования папки используйте флаг -r в SCP или PSCP. Пример команды для PSCP:
pscp -r C:\myfolder\ user@server:/home/user/destination/
Почему при использовании или возникает ошибка "Permission denied"?
Ошибка Permission denied обычно означает, что у вас нет прав на запись в целевой директории на сервере или неверные права доступа к SSH-ключу. Проверьте права на папку на сервере (chmod) и убедитесь, что ключ имеет правильные разрешения (600).
Можно ли использовать для копирования файлов с на Windows?
Да, PSCP поддерживает двустороннюю передачу файлов. Чтобы скопировать файл с Linux на Windows, используйте команду:
pscp user@server:/remote/path/file.txt C:\local\path\