Моя цель - скопировать папку с удаленного сервера на новый локальный компьютер с помощью скрипта. Я запустить сценарий из deploystudio так что это все сделано в root.So сценарий предполагает, чтобыSCP от удаленного локального сценария не копируется
1) создать .ssh и папку authorized_keys на локальном компьютере
2) Paste id_dsa.pub в удаленный_сервере в в местные authorized_keys файл
3) Безопасное копирование Folder1 с удаленного сервера на рабочем столе локального компьютера
Folder1 не удается скопировать. Если я подключу линию SCP и вручную запустил ее, она будет работать после ввода пароля.
user="name"
id_dsa.pub="ssh-dss AAAAB3NzaC1kc3MAAACBAPpK/k7Yk............"
mkdir /Users/${user}/.ssh
chmod 0700 /Users/${user}/.ssh
touch /Users/${user}/.ssh/authorized_keys
chmod 0644 /Users/${user}/.ssh/authorized_keys
/bin/cat > "/Users/${user}/.ssh/authorized_keys" << EOL
${id_dsa.pub}
EOL
scp -r [email protected]:/Users/admin/Desktop/Folder1 /Users/$user/Desktop
Зачем вам нужно заполнять 'authorized_keys'' sudo'? Так или иначе, вы используете root. Вы уверены, что имя пользователя на сервере в 192.168.1.39 должно быть «remoteserver»? –
oops, я скопировал неправильную строку. Я использовал sudo для тестирования в терминале. Я обновил код. его предположим быть /bin/cat> "/......../" << EOL – user3225946
ну, remoteserver - просто псевдоним, потому что я не хотел выдавать реальную информацию. Я могу успешно scp, когда я в терминале, но он просто терпит неудачу в этом скрипте. Я не могу понять, почему. – user3225946