Среда: Удалённо: AWS - RHEL 7.2 Локально: Ubuntu 16.04
Я подключаюсь по SSH к AWS напрямую, используя файл .pem для аутентификации, что-то вроде этого:
ssh -i /home/<user>/<path>/<serverkey>.pem ec2-user@ec2-<awsserver>.us-west-2.compute.amazonaws.com
Я просто хочу загрузить файл, принадлежащий не пользователю root, а другому пользователю, чтобы обычная магия scp не сработала.
Какие-либо предложения?
решение1
Лично я бы разобрался, почему sftp
что-то scp
не работает.
Технически вы можете сделать:
ssh -t user@host 'cat /path/to/file' > out.file
Это можетНЕТсоздать идентичный файл, но он может оказаться достаточно хорошим для того, что вам нужно.
Например, мой тестовый пример передачи создал файл с CRLF (dos) терминаторами строк, а оригинал имел LF (unix) - честно говоря, я не уверен, почему. Остальная часть файла была идентична. Ни один двоичный файл также не был протестирован.
Тест проводился с Linux на FreeBSD.
решение2
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
все три работают с демоном ssh.
ps, чтобы получить доступ к файлу другого пользователя, убедитесь, что у вашего пользователя есть права на чтение файла (либо chmod/chown, либо скопируйте файл в домашнюю папку вашего пользователя).