Umgebung: Remote: AWS – RHEL 7.2 Lokal: Ubuntu 16.04
Ich melde mich per SSH direkt bei der AWS-Box an und verwende zur Authentifizierung eine PEM-Datei, etwa so:
ssh -i /home/<user>/<path>/<serverkey>.pem ec2-user@ec2-<awsserver>.us-west-2.compute.amazonaws.com
Ich möchte einfach eine Datei herunterladen, die nicht dem Root-Benutzer, sondern einem anderen Benutzer gehört, sodass die übliche SCP-Magie nicht ohne Weiteres funktioniert.
Irgendwelche Vorschläge?
Antwort1
Ich persönlich würde untersuchen, warum sftp
es scp
nicht funktioniert.
Technisch können Sie Folgendes tun:
ssh -t user@host 'cat /path/to/file' > out.file
Das vielleichtNICHTErstellen Sie eine identische Datei, die aber für Ihren Zweck möglicherweise gut genug ist.
Beispielsweise erzeugte meine Testfallübertragung eine Datei mit CRLF-Zeilenabschlusszeichen (DOS), während das Original LF (UNIX) hatte – ehrlich gesagt bin ich mir nicht sicher, warum. Der Rest der Datei war identisch. Es wurde auch keine Binärdatei getestet.
Der Test wurde von Linux auf FreeBSD durchgeführt.
Antwort2
ssh — OpenSSH SSH client (remote login program)
scp — secure copy (remote file copy program)
sftp — secure file transfer program
Verwenden Sie scp oder sftp. Beispielverwendung;
scp [email protected]:/home/ec2-user/.bashrc download-bashrc.txt
alle drei funktionieren mit dem SSH-Daemon.
PS: Um an die Datei eines anderen Benutzers zu gelangen, stellen Sie sicher, dass Ihr Benutzer Lesezugriff auf die Datei hat (entweder chmod/chown oder kopieren Sie die Datei in das Home-Verzeichnis Ihres Benutzers).