View previous topic :: View next topic |
Author |
Message |
kami22 Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 14 Apr 2006 Posts: 116
|
Posted: Thu Sep 02, 2010 8:00 am Post subject: Init-Script von anderem PC neustarten? |
|
|
Hi,
ich weiß das es Sicherheitsmässige Gedanken bei dieser Frage gibt, aber diesen Aspekt bitte einfach außer Kraft lassen.
Also hier mein Problem:
Ich habe einen Homeserver mit einem AVM-Telefonscript darauflaufen, das mir kontinuierlich meine AVM Box Telefonliste ausliest.
Wird nun der Router abgeschaltet und wieder angeschaltet, muss das Shell Script neugestartet werden. Dafür habe ich die Möglichkeit, mit dem AVM Router auf den Server zu zugreifen und dort Aktionen auszuführen. Da ich es recht simpel halten möchte, habe ich mir ein PHP-skript geschrieben, das den Init-Prozess, der auch beim Homeserver-Reboot ausgeführt wird, neustartet. Das Skript sieht so aus:
Code: | $iprange= str_split($_SERVER['REMOTE_ADDR'],11);
if ($iprange[0] == "192.168.2.1")
{
system("sudo /etc/init.d/local stop");
sleep(1);
system("sudo /etc/init.d/local start");
sleep (5);}
else{echo "wrong ip";} |
Auf dem Router wird immer folgendes Skript ausgeführt:
Code: |
#!/bin/sh
count=1
while ! ping -c 1 192.168.2.12 && [ "$count" -lt "3" ]; do
sleep 5
let count=count+1
echo $count;
done;
ping -c1 192.168.2.12 >/dev/null 2>&1
currentStatus=$?
echo $currentStatus
if [ "$currentStatus" != "1" ]
then
cd /var/tmp
wget http://test:test@192.168.2.12/restart.php;
fi
|
Problem ist nun, ich erhalte auf dem Router immer das restart.php mit auch den Meldungen drin, dass der Prozess gestoppt und wieder gestartet wurde. Aber nur wenn ich das oben genannte Script selber per Konsole ausführe, dann läuft auch nachher auf dem Homeserver wieder der Prozess. Sonst, wenn es beim Rebooten des Systems automatisch gemacht wird, dann wird der Prozess nur abgeschaltet?
Vielleicht kann mir ja jemand bei meinem Gedankenfehler helfen. Achja es sind nur sehr wenig Befehle in der sh auf dem AVM Router möglich. Also umso simpler umso besser
Gruß kami |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Hollowman Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
Joined: 19 Apr 2007 Posts: 584
|
Posted: Thu Sep 02, 2010 8:26 am Post subject: |
|
|
Ersetz mal das alles
Code: | system("sudo /etc/init.d/local stop");
sleep(1);
system("sudo /etc/init.d/local start");
sleep (5); |
durch
Code: | system("sudo /etc/init.d/local restart"); |
Davon abgesehen, das ist alles sehr unschön.
Sebastian |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
kami22 Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 14 Apr 2006 Posts: 116
|
Posted: Thu Sep 02, 2010 3:06 pm Post subject: |
|
|
Hallo
also die Änderung habe ich eingebaut. Aber gleiches Problem. Er restartet zwar aber nur den ersten Prozess (Ein C-File) den Rest nicht.
also das Start-Skript wird vom Router ausgeführt.
Auf dem Server wird auch local gerestartet.
Ich habe in meiner /etc/conf.d/local.start (Gentoo) 2 Aufrufe drin. Der erst ist ein C-Programm das wird immer neugestartet. Der zweite ist das besagte Perl-Skript. Das wird nicht ausgeführt. Ich habe nun inzwischen auch noch einen Output mit eingefügt aber der wird gar nicht ausgeführt.
Ich verstehe nicht woran das liegt? Also das Perl-Skript ist für jeden Benutzer auszuführen. Was mache ich falsch? Es muss was ganz simples sein. Ich verstehe nicht warum er das nicht ausführen kann? wenn ich auf dem System so eingeloggt bin und das Init-file neustarte klappt alles.
Gruß kami |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
kami22 Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 14 Apr 2006 Posts: 116
|
Posted: Fri Sep 03, 2010 11:15 am Post subject: |
|
|
Keiner einen Vorschlag, woran es liegen kann? local.start hat nur 2 Einträge drin:
Also die local.start sieht so aus:
su -c "script-loader --daemon" kami &>/dev/null
su -c "avmget.pl &" kami &>/dev/null
Das erste Programm wird immer schön neugestartet das zweite nicht.
Tausche ich die beiden Befehle. Startet er auch wieder nur script-loader aber nicht avmget.pl
Gruß kami |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Finswimmer Bodhisattva
![Bodhisattva Bodhisattva](/images/ranks/rank-bodhisattva.gif)
![](images/avatars/1672586922424daf205ec26.jpg)
Joined: 02 Sep 2004 Posts: 5467 Location: Langen (Hessen), Germany
|
Posted: Fri Sep 03, 2010 12:15 pm Post subject: |
|
|
Lass dir doch irgendwohin mal die Ausgabe von den beiden Programmen geben.
Evtl. darfst du sie nicht direkt hintereinander starten, oder so etwas. _________________ Bitte auf Rechtschreibung, korrekte Formatierung und Höflichkeit achten!
Danke |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
|