Rc.local - Script führt commands nicht aus
Hi,
Vor kurzem habe ich smstools auf meinem HomeServer (Ubuntu 9.10 Server Edition) installiert. Somit
kann ich auf meinem Server auch SMs empfangen (Huawei E180). Das ganze funktioniert nun auch
schon relativ problemlos.
Allerdings würde ich gerne den HomeServer via SM-Commandos steuern können. Da ich noch keine
bestimmte Idee verfolge würde mir Anfangs ein simpler Reboot des Server ausreichen. Hier gibt es natürlich
schon die ersten Probleme
WAS wurde bisher realisiert? (und WIE?)
1. smstools wurde erfolgreich installiert & konfiguriert
2. smstools speichert nun die empfangenen SMs in [ /Storage/Other/SMS/Inbox ]
2. Mit Hilfe von inotify überwache ich dieses Verzeichnis:
Das Script macht also nichts anderes, als darauf zu warten, dass eine Datei innerhalb des Verzeichnisses
[ /Storage/Other/SMS/Inbox ] erstellt wird. Danach kopiert es die für mich wichtige Information in die
Variable MyCommand, welche ich danach prüfe und dementsprechend reagieren kann.
Zudem wird der Inhalt von Inbox komplett gelöscht.
Wenn ich das Script manuell starte funktioniert es eigentlich wunderbar. Da das Script allerdings die ganze
Zeit laufen soll habe ich es in die rc.local Datei geschrieben damit es beim Systemstart ausgeführt wird.
Wenn es aber über die rc.local gestartet wird, funktioniert es nur teilweise. D.h. wenn ich dann eine SM
erhalte, wird diese zwar durch das Script gelöscht, aber die Commands (MEINBEFEHL) wird nicht ausgeführt.
Bsp:
Wie gesagt funktionieren die beiden Commands, wenn ich das Script manuell via ./meinscript.sh starte.
Hab auch schon viel herumgegoogelt, aber ich komme irgendwie zu keiner Lösung. Leider bin ich auch erst seit kurzem
Linux-Anhänger und bin noch nicht so fit auf dem System.
Die Idee dahinter habe ich hoffentlich klar rüberbringen können und ich wäre dankbar für jede Art von Hilfe.
LG
zacharias
Vor kurzem habe ich smstools auf meinem HomeServer (Ubuntu 9.10 Server Edition) installiert. Somit
kann ich auf meinem Server auch SMs empfangen (Huawei E180). Das ganze funktioniert nun auch
schon relativ problemlos.
Allerdings würde ich gerne den HomeServer via SM-Commandos steuern können. Da ich noch keine
bestimmte Idee verfolge würde mir Anfangs ein simpler Reboot des Server ausreichen. Hier gibt es natürlich
schon die ersten Probleme
WAS wurde bisher realisiert? (und WIE?)
1. smstools wurde erfolgreich installiert & konfiguriert
2. smstools speichert nun die empfangenen SMs in [ /Storage/Other/SMS/Inbox ]
2. Mit Hilfe von inotify überwache ich dieses Verzeichnis:
while { inotifywait -qq -e create /Storage/Other/SMS/Inbox; }; do
MyCommand=$(sed '1,11d' /Storage/Other/SMS/Inbox/*)
if [ $MyCommand == "reboot" ]; then MEINBEFEHL; fi
rm /Storage/Other/SMS/Inbox/*
done
Das Script macht also nichts anderes, als darauf zu warten, dass eine Datei innerhalb des Verzeichnisses
[ /Storage/Other/SMS/Inbox ] erstellt wird. Danach kopiert es die für mich wichtige Information in die
Variable MyCommand, welche ich danach prüfe und dementsprechend reagieren kann.
Zudem wird der Inhalt von Inbox komplett gelöscht.
Wenn ich das Script manuell starte funktioniert es eigentlich wunderbar. Da das Script allerdings die ganze
Zeit laufen soll habe ich es in die rc.local Datei geschrieben damit es beim Systemstart ausgeführt wird.
Wenn es aber über die rc.local gestartet wird, funktioniert es nur teilweise. D.h. wenn ich dann eine SM
erhalte, wird diese zwar durch das Script gelöscht, aber die Commands (MEINBEFEHL) wird nicht ausgeführt.
Bsp:
if [ $MyCommand == "reboot" ]; then reboot now; fi // ... Reboot wird nicht durchgeführt //
if [ $MyCommand == "reboot" ]; then echo $USER > /Storage/Other/SMS/test.txt; fi // ... $USER wird nicht in die Datei geschrieben //
Wie gesagt funktionieren die beiden Commands, wenn ich das Script manuell via ./meinscript.sh starte.
Hab auch schon viel herumgegoogelt, aber ich komme irgendwie zu keiner Lösung. Leider bin ich auch erst seit kurzem
Linux-Anhänger und bin noch nicht so fit auf dem System.
Die Idee dahinter habe ich hoffentlich klar rüberbringen können und ich wäre dankbar für jede Art von Hilfe.
LG
zacharias
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 138976
Url: https://administrator.de/contentid/138976
Ausgedruckt am: 08.11.2024 um 18:11 Uhr
1 Kommentar