Wie starte ich neu, z. B. mein httpd oder afpd, unter Mac OS X> = 10.5 (Leopard-), ohne die grafische Benutzeroberfläche verwenden zu müssen, und gehe zu Systemeinstellungen -> Freigeben und Deaktivieren / Aktivieren von "Webfreigabe"?
Ich suche das kanonische Äquivalent zu Debian invoke-rc.d apache2 restart
.
EDIT: Die Frage bezieht sich auf gesteuerte Dienste im Allgemeinen , nicht speziell auf Apache (was einfach ein Beispiel war).
mac-osx
service
osx-leopard
launchd
conny
quelle
quelle
kickstart
zusammen mit der-k
Option der Trick zu sein. Siehe meine Antwort unten ...Antworten:
Hallo launchctl (8) ist dein Freund. Bedenken Sie jedoch, dass einige der Dienste (z. B. sshd) in der Konfigurationsdatei deaktiviert sind, sodass Sie
-w
beim Laden den Schalter verwenden müssen. Hier ist ein SSHD-Beispiel:Sie können den Dienst mit dem
unload
Unterbefehl beenden .Verwenden Sie den Unterbefehl 'list', um die Dienste aufzulisten, wie Sie vielleicht schon vermutet haben;)
Hab Spaß
quelle
launchctl list
beschwert sich nicht, zeigt aber nicht alles,sudo launchctl list
was dazu benötigt wird.launchctl
als normaler Benutzer ausgeführt werden, werden LaunchAgents angezeigt / verwaltet, die in Ihrer Benutzersitzung ausgeführt werden. Als root ausgeführt, zeigt / verwaltet es die systemweiten LaunchDaemons.sudo launchctl start com.openssh.sshd
nicht tut nichts , nicht evan mit einer Fehlermeldung fehlschlagen, noch weniger tatsächlich etwas starten?launchctl start <label>
oderlaunchctl stop <label>
? Wenn es bereits mit launchctl gestartet wurde, muss die plist-Datei nicht erneut geladen werden (sofern sie nicht auch geändert wurde?). Es ist ärgerlich , gibt es keinenrestart
oderreload
Befehl. Kennt jemand eine Ein-Befehl-Methode, um (zum Beispiel) Mongod dazu zu bringen, eine Konfigurationsdateiänderung zu übernehmen? Ich bin einfach nicht zufrieden mit... stop ... && ... start ...
.sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
quelle
Um einen Dienst neu zu starten, können Sie den
launchctl kickstart
Befehl zusammen mit der-k
Option verwenden. Zum Neustarten von Apache können Sie beispielsweise verwendenDiese Informationen stammen von der
launchctl
Handbuchseite:quelle
Sie könnten es einfach tun
Wenn Sie den vollständigen Dienstnamen nicht kennen, können Sie dies tun
Wenn Sie den erwarteten Dienst immer noch nicht finden, versuchen Sie, ihn ohne die Root-Identität auszuführen:
Und Sie müssen den Service nicht entladen und laden.
quelle
ssh
von meinem Mac aus verwenden. Neustart lässt sich nicht beheben. Ersetzenstop
durchstart
auch behebt nicht.sudo unload /System/Library/LaunchDaemons/ssh.plist
stattdessen verwenden.launchctl stop
betrifft den Neustart eines Dienstes, aber ich glaube nicht, dass dies einen Dienst neu startet.Sie suchen nach
launchctl
.quelle
invoke-rc.d my-little-daemon restart
beidem ist ... Es bezieht sich auf "job_label", sagt mir aber nicht, wie ich die verfügbaren "job_label" auflisten soll.Für den Fall, dass Sie nach etwas suchen
launchctl reload
, können Sie die Shell-Funktion~/.bashrc/.zshrc
wie folgt definieren:Die Befehlsausführung sieht aus wie ->
lctl reload <your-plist-name>.plist
quelle
Funktioniert mit anderen Betriebssystemen sowie mit Apache.
quelle
Es gibt eine kleine und nützliche App mit dem Namen Lingon. Lingon Freeware Edition ist hier manchmal Neustart eines Dienstes kann schwierig sein.
Lesen hilft aber.
quelle