Вопрос:

Как обеспечить 2 ввода в команде сценария bash?

linux bash

79 просмотра

2 ответа

19 Репутация автора

Я пытаюсь смонтировать удаленную папку на моем компьютере с помощью sshfs. Мой скрипт bash выглядит следующим образом:

sudo sshfs -o allow_other id@afs1.domain.com:/ /home/kr1shna/remote -o password_stdin <<<"xxxxxx"

и каждый раз, когда я выполняю это, он запрашивает у меня пароль root.

поэтому я попробовал:

echo "rootpassword" | sudo -S sshfs -o allow_other id@afs1.domain.com:/ /home/kr1shna/remote -o password_stdin <<<"xxxxxx"

Я знаю, что нехорошая привычка выводить мой пароль root, но я единственный, кто использует этот компьютер.

Каким образом я могу предоставить пароль root и другой параметр пароля в скрипте bash?

Спасибо.

Автор: Krishna Chaitanya Nelloore Источник Размещён: 08.11.2017 11:01

Ответы (2)


0 плюса

50 Репутация автора

Попробуйте определить значения, которые вы хотите передать команде.

Например

password="$(echo 'HelloWorld!')";
echo "Your password is $password";

В вашем случае это будет:

password="$(echo 'xxxxx')"
sudo sshfs -o allow_other id@afs1.domain.com:/ /home/kr1shna/remote -p $password

И я знаю, что вы, вероятно, раздражаетесь, когда мы все просим вас не делать этого, но это действительно представляет потенциальную уязвимость вашего сервера. Я очень рекомендую против этого.

Автор: jramos775 Размещён: 09.11.2017 02:41

0 плюса

731 Репутация автора

Почему бы не создать ключи паба ssh и войти в систему ssh без ввода пароля. Многие распределенные кластеры делают это таким образом.

Автор: W.Perrin Размещён: 09.11.2017 04:46
Вопросы из категории :
32x32