Wir haben einen Befehl, um den Beitritt unserer RHEL7 Server zu Privilege Manager für Sudo zu übernehmen, der nicht funktioniert, wenn er vom rc.local Skript ausgeführt wurde. Der Befehl ist unten mit generischen Namen anstelle unserer spezifischen Assets.Ersetzendes Passwort zum Befehl mit rc.local
echo "passwort" |/opt/quest/sbin/pmjoin_plugin -b -a -v -q -d masterport = 12345 -d FailOverTimeOut = 10 -d selecthostrandom = JA somehostname.com someotherhostname.com >> /var/log/Build.log
Der Befehl, wenn er manuell oder von anderen Bash-Skripten ausgeführt wird, funktioniert perfekt, aber wenn er innerhalb von rc.local ausgeführt wird, ist es so, als würde das Passwort nicht in den Befehl eingegeben, wenn er nach einem Passwort gefragt wird.
Ich habe einige Vorschläge wie "plymouth quit" gelesen, was nicht geholfen hat.
Jeder da draußen hat Erfahrung damit, ein Passwort auf diese Weise innerhalb des rc.local-Skripts zu "wiederholen", so dass Sie ein interaktives Skript durchlaufen können, das nach einem Passwort fragt?
Letztendlich ist dies nur etwas, was wir beim ersten Start einer Instanz ausführen möchten. Wenn es also eine andere Möglichkeit gibt, ein Shell-Skript einmal beim Booten auszuführen und sich dann selbst ohne rc.local zu löschen, dann könnten wir auch diese Route erkunden (crontab, etc?).
Wollen Sie sagen, dass der Befehl mit "echo" Passwort "' und keine manuelle Passworteingabe manuell und von Skripten funktioniert? –
@thatotherguy das ist richtig. Etwas an rc.local scheint das Verhalten zu ändern oder es funktioniert anders. Wenn ich den Befehl, den ich in der rc.local dafür habe und von der Befehlszeile ausführen, alles gut geht. Gleiches, wenn ich es zu einem .sh-Skript hinzufüge und dieses Skript anrufe. Wenn der Befehl von rc.local ausgeführt wird oder wenn rc.local versucht, den Befehl in einem SH-Skript aufzurufen, funktioniert es nicht. Das Protokoll, das ich an >> /var/log/Build.log ausspreche, verhält sich so, als hätte es ein schlechtes Passwort, was mich glauben lässt, dass es nicht das gleiche Passwort (oder überhaupt) in rc.local gibt. – Sadadar
Was passiert, wenn Sie 'echo" testtest "| cat> /var/log/testtest.log'in dein rc.local, taucht testtest.log auf? –