Wie kann man einen Linux-Computer einschließlich des Root-Passworts in einer Zeile herunterfahren?

7

Wie fügen Sie das Root-Passwort ein, beispielsweise zum Herunterfahren eines Ubuntu-Computers?

mögen,

sudo shutdown now

Ist es möglich, das Passwort in diese 1 Zeile aufzunehmen? wie ein zusätzlicher Parameter?

Grund dafür ist, dass ich versuche, mit dieser App namens azr remote prompt zu spielen, mit der Sie Befehle von Ihrem Blackberry an Ihren Ubuntu-Computer senden können, und es scheint eine einfache Fahrt zu sein. Sie senden Befehle, erhalten jedoch keine Antwort vom Computer.

niccolo m.
quelle
4
Sie können auch / etc / sudoers bearbeiten, damit einige Befehle kein Kennwort benötigen.
Strg-Alt-Delor
@richard Wenn er die / etc / sudoers bearbeiten könnte, würde er diese Frage nicht stellen! Hier ist ein Weg: sleekmason.wordpress.com/fluxbox/…
Adit Saxena
@AditSaxena, um Ihren Kommentar zu beantworten: Da ich gerade einen Kommentar hinzugefügt habe, könnte dies zu einer Antwort führen, ist aber keine Antwort.
Strg-Alt-Delor

Antworten:

17

Ja, sudo hat einen '-S' -Schalter, mit dem das sudo-Passwort von stdin eingelesen werden kann. Alles, was Sie tun müssen, ist, Ihr Root-Passwort wiederzugeben - für Ihre Instanz würde es also so aussehen (ersetzen Sie [PASSWORD] durch Ihr Root-Passwort).

history -d $((HISTCMD-1)) && echo '[PASSWORD]' | sudo -S shutdown now
LinuxPS2
quelle
10
@simon: Dadurch wird das Passwort in der Shell-Verlaufsdatei angezeigt, was nicht empfohlen wird! Ich schlage history -d $((HISTCMD-1)) &&vor, Sie setzen diesen Code ein, um sicherzustellen, dass die Zeile nicht in der Verlaufsdatei angezeigt wird. Der letzte Befehl sollte also sein history -d $((HISTCMD-1)) && echo '[PASSWORD]' | sudo -S shutdown now.
André Paramés
3
Wenn Sie Bash verwenden, können Sie das Schreiben des Verlaufs auch verhindern, indem Sie ein Leerzeichen HISTFILEwie in festlegen HISTFILE=; command here....
Lekensteyn
@ AndréParamés yeah man danke für die zusätzlichen Informationen, aber ich denke, ich werde sie vorerst nicht verwenden, da nach dem Ausführen des Befehls auf meinem Telefon die ausgeführten Befehle sofort gelöscht werden, aber trotzdem danke nochmal, werde dies für den Fall berücksichtigen es könnte in Zukunft notwendig sein
niccolo m.