Я знаю, что такие вопросы задавались ранее, и я прочитал их все (которые я нашел).
У меня проблема в том, что у нас есть встроенное устройство Linux, в которое мы можем войти для отладки, выполнив следующие действия:
ssh root@name
Тогда пароль - что угодно (я обычно просто нажимаю ввод). Я не хочу ничего менять на встроенном устройстве / Linux. Но я хочу быть в состоянии (как часть моего сценария) ssh в него.
Мои исследования показали, что можно использовать следующее (это скопировано из другого поста):
#!/usr/bin/expect -f
spawn ssh user@my.server.com
expect "assword:"
send "mypassword\r"
interact
Однако с моей версией Ubuntu (10.04) у меня нет команд spawn или send. Мне удалось установить команду "ожидается" с помощью команды sudo apt-get install Ожидается.
у кого-нибудь есть решение? Можно ли установить эти команды, или есть другой способ, чтобы ssh и пройти этап "пароль"?
Спасибо :)
------------- РЕДАКТИРОВАТЬ -----------------
Я думаю, что начинаю понимать проблему, которая у меня возникла. У меня есть скрипт, который начинается с:
#!/bin/bash
Затем позже я пытаюсь сделать:
spawn ssh user@my.server.com
expect "assword:"
send "mypassword\r"
interact
Я не понял, что вам нужно явно:
#!/usr/bin/expect -f
В начале сценария. поэтому мне пришлось перенести мой код в отдельный файл, который содержит только и точно:
#!/usr/bin/expect -f
spawn ssh user@my.server.com
expect "assword:"
send "mypassword\r"
interact
... извините за недопонимание с моей стороны, но ответы людей помогли мне понять, что я делаю. Это не совсем идеально для меня, так как я хотел передать параметры, чтобы открыть различные ssh-соединения, и я не могу передать параметры этому сценарию, начиная с «ожидаем -f» :(