2016-11-03 6 views
0

Ich muss "Monit Neustart Haproxy" Befehl nach Sudo su ausführen.Wie führe ich den Befehl nach Sudo su

Das ist mein script.sh

sudo su 
monit restart haproxy. 

Hier, wenn ich die script.sh Datei ausgeführt wird, dann wird es hängen, und es wird die Ausführung nicht die monit haproxy Befehl neu starten.

Irgendeine Idee.

Danke in fortgeschrittenem.

Antwort

0

Der sudo Befehl wird Sie erwarten, ein Passwort einzugeben, die, warum es wird hängen, können Sie ein Rohr verwenden, so dass das Passwort für den Befehl wie folgt übergeben wird:

echo <password> | sudo su 
monit restart haproxy. 
+0

Eigentlich sudo su Befehl erwarten Sie nicht das Passwort. Als ob ich manuell sudo su machen würde. Dann springt es zum Root-Terminal, ohne ein Passwort anzugeben. Im Grunde ist das Problem, dass sobald es zum root-Benutzer bewegt wird, es dann nicht den monit-Befehl ausführt. – ishwar

+0

Hat der Benutzer root das Recht den Befehl 'monit restart haproxy.' auszuführen? – IamNguele

+0

ja .. ich kann monit neu starten haproxy Befehl nach sudo su. – ishwar

0

Here kommt einige Informationen über Sudo su. Sie müssen ein Passwort für den Befehl sudo oder su eingeben, hier ist ein Zitat aus dem Link, das die Quelle Ihres Problems sein könnte:

sudo - sudo soll einen einzigen Befehl mit root-Rechten ausführen. Aber anders als su fragt Sie nach dem Passwort des aktuellen Benutzers. Dieser Benutzer muss sich in der sudoers-Datei (oder einer Gruppe, die sich in der sudoers-Datei befindet) befinden. Standardmäßig merkt sich Ubuntu Ihr Passwort 15 Minuten lang, so dass Sie nicht jedes Mal Ihr Passwort eingeben müssen.

Verwandte Themen