it-swarm.com.de

SSH SCP Lokale Datei zu Remote in Terminal Mac Os X

Ich versuche, eine lokale Datei 'magento.tar.gz' von meinem lokalen Computer mithilfe von SSH über ein VPN auf einen Remote-Server zu kopieren. Dies verbindet sich mit der internen IP der virtuellen Maschine, die ich hier als xx.x.x.xx verwendet habe.

Ich habe vollen 'Sudo'-Zugriff auf das SSH-Konto, daher sollte es keine Probleme beim Kopieren geben. Ich habe Folgendes versucht:

Ich habe Folgendes versucht (die Datei magento.tar.gz befindet sich bereits im lokalen Stammverzeichnis)

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

Dies fordert mich auf, mein lokales Passwort einzugeben. Anschließend wird cp: [email protected]/var/www: Not a directory Zurückgegeben.

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

Gibt dasselbe zurück.

Muss ich irgendwo eine SSH einbinden?

Muss ich mich zuerst über SSH mit der Site verbinden?

Nebenbemerkung: Ich habe es geschafft, über SSH eine Verbindung zum Server herzustellen, zum Verzeichnis zu navigieren, einen Ordner zu erstellen und ihn mit Sudo mkdir Usw. zu löschen, sodass ich definitiv Berechtigungen habe.

83
James

Zuerst müssen Sie nach der IP-Adresse : Hinzufügen, um anzugeben, dass der Pfad folgt:

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

Ich glaube nicht, dass Sie Sudo das scp brauchen. In diesem Fall wirkt es sich nicht auf die entfernte Maschine aus, sondern nur auf den lokalen Befehl.

Wenn Ihr user @ xx.x.x.xx keinen Schreibzugriff auf /var/www Hat, müssen Sie dies zweimal tun:

Kopieren Sie auf einen Remote-Server in Ihrem Home-Ordner (: Steht für Ihren Remote-Home-Ordner, verwenden Sie bei Bedarf :subfolder/ Oder :/home/user/ Für den vollständigen Pfad):

scp magento.tar.gz [email protected]:

Dann SSH und verschiebe die Datei:

ssh [email protected]
Sudo mv magento.tar.gz /var/www
183
JScoobyCed

Um die Antwort von JScoobyCed zu verdeutlichen, kann der Befehl scp keine Dateien in Verzeichnisse kopieren, für die Administratorrechte erforderlich sind. Mit dem Befehl scp können Sie jedoch in Verzeichnisse kopieren, die dem Remotebenutzer gehören.

Wenn Sie also in ein Verzeichnis kopieren möchten, für das Root-Berechtigungen erforderlich sind, müssen Sie diese Datei zunächst mit dem Befehl scp in ein Verzeichnis kopieren, das dem Remotebenutzer gehört. Als Nächstes müssen Sie sich mit ssh beim Remote-Konto anmelden. Sobald Sie angemeldet sind, können Sie die Datei mit dem Befehl Sudo mv in das Verzeichnis Ihrer Wahl verschieben. Kurz gesagt, die zu verwendenden Befehle lauten wie folgt:

Kopieren Sie die Datei mit scp in ein Verzeichnis im Konto des Remotebenutzers, zum Beispiel in das Verzeichnis "Documents":

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

Melden Sie sich anschließend mit ssh beim Konto des Remote-Benutzers an und verschieben Sie die Datei mit Sudo in ein eingeschränktes Verzeichnis:

ssh [email protected]_address
Sudo mv /home/remoteUser/Documents/file /var/www
18
legend12

Achten Sie darauf, dass in Ihrem Dateinamen auch nicht : Enthalten ist. Ich stellte fest, dass ich mv blah-07-08-17-02:69.txt no_colons.txt Und dann scp no-colons.txt server: Musste und vergesse dann nicht, mv wieder auf dem Server zu installieren. Nur für den Fall, dass dies ein Problem war.

0
pjammer