Ich glaube, das K impliziert, dass beim Starten von Runlevel 3 sshd heruntergefahren wird
Ja. K ist für Kill.
Dies ist ein alter SystemV-Startup. Die Basis-Skripts befinden sich alle in init.d, und es gibt verschiedene symbolische Links mit spezifischen Namenskonventionen (S00 ..., K99 ...) in den Verzeichnissen von rc? .D, von denen sie tatsächlich ausgeführt werden.
Wenn Sie Runlevel ändern, beispielsweise von 1 auf 3, erzeugt der Init-Prozess ein Skript, das in das Verzeichnis für das alte Runlevel (/etc/rc.d/rc1.d/) wechselt, und führt alle Skripts aus, die mit K als beginnen
K_NUMBER_some_service stop
Dann wechseln Sie in das Verzeichnis für den neuen Runlevel (/etc/rc.d/rc3.d) und führen alle Skripts aus, die mit S beginnen
S_NUMBER_some_service start
Die Skripte werden in alphabetischer Reihenfolge ausgeführt. Die Reihenfolge wird normalerweise durch die NUMMER ( 00-99) bestimmt. Die Reihenfolge ist wichtig - Sie möchten sshd nicht starten, bevor Sie mit dem Networking beginnen.
Theoretisch könnten Sie die Symlinks manuell ausführen, wenn Sie wissen, wie die Anzahl / Reihenfolge festgelegt wird, in der sie ausgeführt werden soll. Die meisten Skripte haben diese Bestellnummer als Kommentar (try:) head /etc/rc.d/init.d/sshd
. Es ist jedoch viel besser, die richtigen Werkzeuge für die Arbeit zu verwenden. Auf Redhat gibt es ntsysv
und auch system-config-services
. Wenn Sie möchten, können Sie sogar das Befehlszeilentool verwenden chkconfig
. Meiner Ansicht nach
chkconfig --level 2345 sshd on
würde tun was du willst. Bestätigen Sie mitchkconfig --list sshd