2009-10-31 13 views
9

Próbuję uruchomić skrypt bash, który ma:Jak sudo na komputerze używając ssh wewnątrz skryptu bash

ssh -l <username> <compname> 'sudo yum -y install expect' 

pojawia się błąd:

sudo: sorry, you must have a tty to run sudo 

ale na niektórych komputerach na innych proces przebiega płynnie. Jak mogę temu zapobiec?

+0

superuser.com może być lepsze miejsce na to pytanie – Michael

+0

Kwestia * * programowanie jest związane, ponieważ jest w skrypcie. To wystarczy, aby było ważne dla SO. Żaden zwykły użytkownik nie musiałby o tym wiedzieć. –

+0

prawda, wystarczająca, – Michael

Odpowiedz

22

Użyj flagę -t zmusić tty, które zostaną przyznane:

ssh -t -l <username> <compname> 'sudo yum -y install expect' 
+0

dzięki. Działa jak marzenie! – Guy