環境:リモート:AWS-RHEL 7.2ローカル:Ubuntu 16.04
認証用の.pemファイルを使用してAWSボックスに直接SSHで接続します。これは、次のようなものです。
ssh -i /home/<user>/<path>/<serverkey>.pem ec2-user@ec2-<awsserver>.us-west-2.compute.amazonaws.com
私がやりたいのは、rootユーザーではなく、別のユーザーが所有するファイルをダウンロードするだけなので、通常のscpマジックは簡単には機能しません。
助言がありますか?
個人的には、sftp
またはscp
が機能しない理由を調べます。
技術的には次のことができます。
ssh -t user@Host 'cat /path/to/file' > out.file
これは[〜#〜] not [〜#〜]同一のファイルを生成する可能性がありますが、必要なものには十分な場合があります。
たとえば、私のテストケース転送では、CRLF(dos)ラインターミネータを含むファイルが生成され、元のファイルにはLF(unix)-正直な理由がわかりません。ファイルの残りの部分バイナリファイルもテストされていません。
テストはLinuxからFreeBSDまで実行されました。
ssh — OpenSSH SSH client (remote login program)
scp — secure copy (remote file copy program)
sftp — secure file transfer program
scpまたはsftpを使用します。使用例;
scp [email protected]:/home/ec2-user/.bashrc download-bashrc.txt
3つすべてがsshデーモンで動作します。
pS、別のユーザーのファイルを取得するには、そのユーザーがファイルへの読み取りアクセス権を持っていることを確認してください(chmod/chown、またはファイルをユーザーのホームにコピーしてください)。