Подтвердить что ты не робот

SSH SCP Локальный файл для удаленного в терминале Mac Os X

Я пытаюсь скопировать локальный файл magento.tar.gz с моей локальной машины на удаленный сервер, используя SSH через VPN. Это соединение с внутренним IP-адресом виртуальной машины, который я использовал здесь как xx.x.x.xx.

У меня есть полный доступ "sudo" к учетной записи SSH, поэтому не должно быть никаких проблем с копированием. Я пробовал следующее:

Я пробовал следующее (файл magento.tar.gz уже находится в локальном корневом каталоге)

sudo scp magento.tar.gz [email protected]/var/www/

Это требует ввода моего локального пароля. Впоследствии возвращается cp: [email protected]/var/www: Not a directory

sudo scp /Users/myname/magento.tar.gz [email protected]/var/www/

Возвращает то же самое.

Нужно ли включать SSH там где-нибудь?

Нужно ли сначала подключаться через SSH к сайту?

Боковое примечание: мне удалось подключиться через SSH к серверу, перейти в каталог и сделать папку и удалить ее с помощью sudo mkdir и т.д., поэтому я определенно имею разрешения.

4b9b3361

Ответ 1

Сначала вам нужно добавить : после IP-адреса, чтобы указать, что путь следующий:

scp magento.tar.gz [email protected]:/var/www

Я не думаю, что вам нужно sudo scp. В этом случае он не влияет на удаленный компьютер, а только на локальную команду.

Тогда, если ваш user @xx.x.x.xx не имеет доступа на запись к /var/www, вам нужно сделать это в 2 раза:

Скопировать на удаленный сервер в домашней папке (: представляет вашу удаленную домашнюю папку, при необходимости используйте :subfolder/ или :/home/user/ для полного пути):

scp magento.tar.gz [email protected]:

Затем SSH и переместите файл:

ssh [email protected]
sudo mv magento.tar.gz /var/www

Ответ 2

Чтобы уточнить ответ JScoobyCed, команда scp не может скопировать файлы в каталоги, требующие административного разрешения. Однако вы можете использовать команду scp для копирования в каталоги, принадлежащие удаленному пользователю.

Итак, чтобы скопировать в каталог, требующий прав root, сначала скопируйте этот файл в каталог, принадлежащий удаленному пользователю, используя команду scp. Затем вы должны войти в удаленную учетную запись, используя ssh. После входа в систему вы можете переместить файл в выбранный вами каталог с помощью команды sudo mv. Короче говоря, следующие команды:

Используя scp, скопируйте файл в каталог в удаленной учетной записи пользователя, например в папку "Документы":

scp /path/to/your/local/file [email protected]_address:/home/remoteUser/Documents

Затем войдите в учетную запись удаленного пользователя с помощью ssh, а затем переместите файл в ограниченный каталог с помощью sudo:

ssh [email protected]_address
sudo mv /home/remoteUser/Documents/file /var/www

Ответ 3

Следите, чтобы в вашем файле не было :. Я обнаружил, что мне пришлось mv blah-07-08-17-02:69.txt no_colons.txt, а затем scp no-colons.txt server:, затем не забывайте mv вернуться на сервер. На всякий случай это было проблемой.