Ich beendete Installation von supervisord auf meinem centos6, es funktioniert auch gut. Aber ich fand heraus, dass ich den Befehl "kill" verwenden konnte, um Supervisord selbst zu töten. Ich denke, das ist falsch, ich nehme an, Supervisor ist nicht killbar, sonst kann es nicht die Sicherheit anderer Dienste garantieren, die von ihm kontrolliert werden. Also wie kann ich bitte Supervisor nicht killable machen?wie man supervisord unkillable macht
Antwort
Dies ist auf keinen Fall möglich, auf eine korrekte Art und Weise getan werden sagen wir, obwohl es etwas gibt, was Sie versuchen könnten, und ich denke, es wird funktionieren. Theoretisch kann nur root alle Prozesse töten und alle anderen können immer von ihrem Besitzer getötet werden. Was Sie tatsächlich versuchen könnten, ist einen Benutzer mit einem unzerbrechlichen Passwort zu erstellen und root zu bekommen, um einen Prozess mit su
zu starten. (Root wird nicht aufgefordert, ein Passwort einzugeben, aber ‚so‘ wird sich ändern, dass Benutzer)
su newacct ksh -c "/home/newacct/bin/the_process_to_start.ksh and its parameters"
su - newacct ksh -c "/home/newacct/bin/the_process_to_start.ksh and its parameters"
Der Bindestrich sagt, dass Sie die .profile des Benutzers ausführen soll. Es hängt davon ab, ob Sie wollen oder nicht. (Sie müssen kein Skript ausführen, aber ich nahm an, dass Sie in diesem Beispiel wahrscheinlich waren.)
Auf diese Weise kann niemand außer root diesen Prozess beenden, weil niemand dieser Benutzer werden kann.
Vielleicht möchten Sie google, wie Sie ein unverschlüsselbares Passwort in/etc/shadow erstellen können. Es ist eigentlich einfach.
Oder sagen, wenn Supervisord getötet wurde, wie erlebt es sofort wieder, wird der folgende Prozess wieder zu erleben, sobald Sie es töten: root 1 0 0 14:21? 00:00:00/usr/bin/python/usr/bin/supervisord – Jack
Wenn es getötet wird alle Kinderprozesse werden mit ihm abstürzen ich denke, keine Zeit, sie zu retten, indem Sie es wieder öffnen ...... immer noch, Ich denke ... der Hauptpunkt ist, es am Leben zu erhalten, und das ist der einzige Weg, an den ich denken kann .... – hedgehog
- 1. Wie man eine Gruppe in Supervisord einrichtet?
- 2. Wie "npm Start" mit Supervisord?
- 3. ZooKeeper mit Supervisord überwachen
- 4. Wie man Datumsumwandlung macht?
- 5. Wie man Zahlenauswahldialog macht?
- 6. Running PostgreSQL mit Supervisord
- 7. supervisord mit Verlassen ENOEXEC
- 8. Selleryd multi mit supervisord
- 9. Logging für Supervisord
- 10. supervisord: dynamisch config generieren?
- 11. Wie macht man `wo nicht`?
- 12. Wie man Datumszeit so macht?
- 13. Wie man rotierendes Menü macht
- 14. Wie man Navigationstastatur zugänglich macht?
- 15. wie man dynamisches Formular macht
- 16. Wie man eine Shell macht?
- 17. Wie man Code flexibler macht
- 18. Wie man Animation glatt macht
- 19. Wie macht man Dendogramme visueller?
- 20. wie man jmeter Ausgabegraphen macht
- 21. Wie macht man Klassen testbarer?
- 22. Wie macht man "schöne Rundungen"?
- 23. Wie macht man zoombare Scrollview?
- 24. Wie macht man diese Nachbarfunktion?
- 25. Wie macht man diese Übung?
- 26. Wie man MFCC-Algorithmus macht?
- 27. Wie macht man RLMResults veränderbar?
- 28. Wie macht man invertierten Index?
- 29. Wie macht man Netlogo Multiplayer?
- 30. Wie man Bildhintergrund transparent macht?
Hallo Leute, wenn Sie es wissen, können Sie mir bitte einen Hinweis geben, es ist wirklich schwer, das Ergebnis auf Google zu finden, bitte nicht stimmen Sie die Frage zu schließen. – Jack
Ich stimme, um diese Frage als Off-Thema zu schließen, weil es eindeutig nicht im Zusammenhang mit Programmierung & gehört http://unix.stackexchange.com –
Sie können nicht. Das einzige, was Sie tun könnten, ist, den Supervisor als einen anderen Benutzer auszuführen, der dann nicht durch andere Verwendungen gekillt werden kann; root kann es aber trotzdem töten. – Dencker