Mögliche Duplikate:
Führen Sie das Skript in OS X 10.6 über eine Netzwerkverbindung aus. (wie /etc/network/if-up.d/)
Ich habe ssh-Tunnel eingerichtet, damit ich über unser Gateway auf verschiedene Computer zugreifen kann, die gerade in Betrieb sind. Das Problem ist, dass ich diese nicht jedes Mal einrichten muss, wenn ich meinen Computer einschalte oder die Verbindung zum Internet herstelle / trenne. Ich hoffe, dass es eine Möglichkeit gibt, ein Shell-Skript zum Einrichten automatisch auszuführen die Tunnel, wann immer ich mich mit dem Internet verbinde. Ich habe auf meiner Workstation im Büro ein ähnliches Setup, auf dem Ubuntu ausgeführt wird und das /etc/network/if-up.d und if-down.d verwendet. Gibt es eine Entsprechung auf dem Mac?
quelle
Antworten:
Ich denke, kontextsensitive Tools wie Marco Polo Wenn Sie ein Shell-Skript verwenden, um die Tunnel einzurichten, können Sie dies mit Sicherheit tun:
quelle
Nicht eingebaut; So etwas wird normalerweise von launchd unter OS X erledigt, aber Netzwerk-Up / Down-Ereignisse sind nicht in der Liste der Auslöser enthalten. Glücklicherweise, PyMacAdmin Enthält das Programm Crankd, das diese Funktion bereitstellt. Hier ist ein Beispiel für die Verwendung von Crankd, um etwas Ähnliches zu tun (obwohl er es verwendet, um ein Python-Modul anstelle eines Shell-Skripts zu starten, sodass die Details etwas anders sind). Ich habe das noch nicht ausprobiert, aber es sieht so aus, als müssten Sie nur eine Crankd-Plist-Datei wie die folgende erstellen:
... schreiben Sie dann / usr / local / libexec / networkchangescript, um festzustellen, ob das Netzwerk aktiv ist (AIUI wird bei Änderungen gestartet, ob aufwärts, abwärts oder seitwärts) und richten Sie gegebenenfalls Tunnel ein. Erstellen Sie schließlich eine launchd-Liste, um crankd auszuführen (siehe das Beispiel, das ich für Details verlinkt habe).
quelle