1

Я отчаянно пытаюсь скопировать некоторые файлы с компьютера AWS EC2, но я борюсь со следующим.

  • Я могу скопировать только некоторые файлы из уже существующей папки (хотя хочу скопировать все файлы рекурсивно на мой локальный компьютер)
  • scp и rsync жалуются, что путь не существует, когда я создаю совершенно новый файл в каком-то месте (скажем, /home/ec2-user/a.txt)

Я использую команду

scp -rpi ~/.ssh/my-key.pem  ec2-user@52.29.216.47:/home/ec2-user/a.txt

Я создал файл под пользователем ec2 с помощью touch a.txt поэтому разрешения должны быть в порядке (если это даже имеет значение).

Содержимое оригинальной папки, которую я хочу скопировать

-rw-r--r--  1 webapp   webapp     90 17. úno  2015 cron.yaml
drw-r--r--  2 ec2-user ec2-user 4096  1. dub 13.09 db-backup
-rw-r--r--  1 webapp   webapp   2703 17. úno  2015 index.php
-rw-r--r--  1 webapp   webapp    189 17. úno  2015 logo_aws_reduced.gif
drwxrwxrwx 15 ec2-user ec2-user 4096  1. dub 17.35 martintour
drw-r--r-- 14 ec2-user ec2-user 4096 30. bře 20.52 master_martintour
-rw-r--r--  1 webapp   webapp    367 17. úno  2015 scheduled.php
-rw-r--r--  1 webapp   webapp   3490 17. úno  2015 styles.css

Однако копируется только эта часть.

-rw-r--r-- 1 pmensik pmensik   90 úno 17  2015 cron.yaml
-rw-r--r-- 1 pmensik pmensik 2703 úno 17  2015 index.php
-rw-r--r-- 1 pmensik pmensik  189 úno 17  2015 logo_aws_reduced.gif
-rw-r--r-- 1 pmensik pmensik  367 úno 17  2015 scheduled.php
-rw-r--r-- 1 pmensik pmensik 3490 úno 17  2015 styles.css

Похоже, опция -r не работает. А также это не объясняет, почему я не могу копировать вновь созданные файлы или папки, как я упоминал ранее.

Команда, которую я использовал для этого

scp -rpi ~/.ssh/my-key.pem  ec2-user@52.29.216.47:/var/app/current . 

Я уже играл с изменением разрешений, но нет, я полностью потерян.

2 ответа2

2

Вам не хватает каталога назначения.

Пытаться:

scp -rp -i ~/.ssh/my-key.pem ec2-user@52.29.216.47:/home/ec2-user/a.txt /your/local/dir/

1

Помимо пункта назначения - разрешение имеет значение, потому что вы входите в экземпляр с помощью scp/rsync от имени пользователя ec2, а не root. Тем не менее, например, cron.yaml чтения любому, поэтому он был перенесен. Убедитесь, что владелец a.txt не является пользователем root.

Пытаться:

rsync -Hva --progress -e "ssh -i ~/.ssh/my-key.pem" ec2-user@52.29.216.47:/home/ec2-user/ ./

где ./ - ваш местный пункт назначения. Обратите внимание на конечные косые черты в конце обоих путей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .