Hi,
Na gut also wenn man sich danach richtet;
Grober Ablauf:
1. Box anschalten
2. Script überprüft ob OpenVPN läuft und verbunden ist
3. Wenn alles läuft können alle anderen Dienste/ APPs etc. starten
4. Immer wieder (alle X-Minuten) testen ob die Verbindung noch steht
Das Script soll die Box anschalten ? Du meinst eher wenn du die Box anschaltest soll das Script Schritt 2 - 4 ausführen korrekt ?
Ok ich geh mal davon aus das es so ist dann kannst erstmal das Script vom
@Green Eagle also das hier;
Code: Alles auswählen
#!/bin/sh
APP=$(ps aux | grep -v grep | grep *deinprogramm*)
if [ -z "$APP" ];
then
echo "OpenVPN wird gestartet"
sudo *deinprogramm*
else
echo "OpenVPN ist aktiv"
fi
mit nem Texteditor (
muss unbedingt ein LinuxEditor sein z.b: Notepad++) in ein Textfile schreiben und dann zu
watchdog.sh umbenennen und das legst dann an deiner Box nach
/usr/script(sollte das Verzeichnis
/usr/script nicht vorhanden sein legst es eben zuvor selber an, entweder per FTP (Filezilla) oder per telnet mit;
Dann wenn das Script mit Namen
watchdog.sh in
/usr/script liegt musst es per telnet ausführbar machen mit;
Soweit is das aber erstmal nur ein Anfang denn das Script muss noch abgeändert werden.
Denn es is doch so das wenn Internet an der Box eingerichtet ist dieses ja erstmal automatisch startet
und auch musst du nach dem Box Start ja erstmal abfragen ob OpenVPN läuft - wird also bestimmt etwas komplizieter werden als das Script grade aussieht.
Vielleicht wärs ja seitenverkehrt besser anzufangen also schon erstmal die Abfrage ob OpenVPN läuft und wenn nicht das Internet stoppen
und falls doch, na dann läuft Internet ja schon dann nur noch deine Apps starten.
Nur is es auch blöd wenn das Internet dann gestoppt ist das das Script alle Minuten weiter anläuft, man müsste dann also ebenfalls
den Cron Dämon stoppen dann den Cronjob löschen und den Cron Dämon wieder starten im selben Script (das geht auch - is kein Problem)
, allerdings müsstest den Cronjob dann wieder manuell neu eintragen was auch wieder Blödsinn wäre
aber auch dazu gäbs ne Lösung (hab hier ähnliches am Laufen aber nicht für OpenVPN jedoch das selbe Prinzip
und zwar lass ich den Cronjob bei jedem Hochbooten der Box mit nem Init Script eintragen (das geht vollautomatisch dann).
Dann um
@Green Eagle zu folgen erstmal das hier;
Code: Alles auswählen
[color=#ffffff][font=monospace]* * * * * bash /usr/script/watchdog.sh >/dev/null 2>&1 [/font][/color]
in die
/etc/cron/crontabs/rootan deiner Box eintragen (ebenfalls
nur mit nem Linux Editor)
oder du trägst es per telnet Befehl ein (z.b: so wie folgt);
Code: Alles auswählen
echo -e "\n* * * * * sh /usr/script/watchdog.sh" >> /etc/cron/crontabs/root
is dann etwas anders eingetragen wie
@Green Eagle vorschlägt sollte aber auch tun.
Ansonsten halt stattdessen um exakt nach
@Green Eagle vorzugehen per telnet mit;
Code: Alles auswählen
echo -e "\n* * * * * bash /usr/script/watchdog.sh [font=monospace]>/dev/null 2>&1[/font]" >> /etc/cron/crontabs/root
Damit hättest dann erstmal das Grundgerüst - und müsstest eben nur noch das Script passend machen.
Grüsse
Biki3