Я вошел на свой веб-сервер через SSH, используя инструмент с именем MobaXterm (это что-то вроде Putty, но с расширенными возможностями, это не так важно ...)

Моя проблема в том, что я хочу отправить каталог со своего локального компьютера (Windows) в определенный каталог этого сервера (Linux).

Поэтому я должен попытаться использовать команду scp, как показано здесь: http://www.hypexr.org/linux_scp_help.php

Я сделал таким образом:

-jailshell-4.1$ scp -r C:\Users\Andrea\Documents\Betrivius\candycane-0.9.6\candycane /home6/XXX/public_html

ssh: Could not resolve hostname C: Name or service not known

Но, как видите, я получаю ошибку.

Зачем? Что мне не хватает? Как я могу исправить эту проблему?

Tnx

2 ответа2

1

Если у этого веб-сервера нет способа напрямую подключиться к вашей машине с Windows (на порту 22, который потребует работы демона SSH и переадресации портов), вам потребуется вызывать SCP со стороны Windows. MobaXTerm - это ssh-клиент, я не уверен, что в него встроен SCP (я лично им не пользуюсь), но лучшее решение здесь - это использование клиента SCP, будь то клиент командной строки или клиент GUI.

Довольно популярным клиентом для Windows является WinSCP, это мой goto клиент, когда у меня нет выбора, кроме как использовать Windows.

1

Предположительно, вы выполняете это в локальной оболочке MobaXterm (то есть локально для машины с Windows). Если это так, вам нужно обновить синтаксис команды scp, чтобы приспособить эту среду, хотя синтаксис неверен независимо.

MobaXterm предоставляет доступ к локальным дискам в своей оболочке через точку монтирования /drive /drives/X , где X - буква диска Windows.

Кроме того, (упрощенный) общий синтаксис scp вне зависимости от среды:

использование scp:

scp [[user@]host1:]/path[/filename] [[user@]host2:]/path/[filename]

Первая последовательность ([[user@]host1:]/path[/filename]) - это раздел «FROM»; источник файла или файлов для копирования. Второе - «К»; пункт назначения. Скобки указывают необязательные аргументы.

На самом деле это просто ssh-версия стандартной команды cp; с разделом перед : содержащим специфическую для ssh информацию, и последующую информацию, относящуюся к операции cp.

пользователь:

user умолчанию использует ваше текущее локальное имя пользователя - оно может быть опущено, если это правильное имя пользователя как в источнике, так и в месте назначения.

хост:

host умолчанию использует локальный компьютер (localhost); так что если вы копируете на / с локального компьютера И имя пользователя на локальном хосте, который будет использоваться, является текущим пользователем, вы можете пропустить этот аргумент для локального файла (ов).

Путь файла:

path/filename умолчанию указывается домашним каталогом указанного пользователя, и при желании его можно опустить. имя файла может быть опущено при выполнении рекурсивного копирования, как в вашей ситуации - просто укажите путь в этом случае. Как правило, полный путь и имя файла указываются в разделе FROM, и только путь в разделе TO (по умолчанию будет сохранено то же имя файла).

Я использую remoteuser и remotePC качестве имени пользователя и имени удаленного ПК; заменить на правильные имена.

Правильный синтаксис в вашем примере:

 scp -r "/drives/C/Users/Andrea/Documents/Betrivius/candycane-0.9.6/candycane" remoteuser@remotePC:/home6/XXX/public_html

Используйте команду man scp или этот сайт для получения дополнительной информации (аргументы, другая информация об использовании).

Опция GUI

В качестве альтернативы, MobaXterm предоставляет графический файловый браузер (построенный на sftp или scp на основе параметров конфигурации), который обеспечивает перетаскивание двунаправленных передач файлов при подключении к удаленному хосту через ssh. Подробности здесь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .