Automatisch gestartetes RTS uns Webserver werden nach 4 Minuten beendet

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Zusammen,

    ich habe da ein recht merkwürdiges Problem.

    Ich besitze einen Pi rev.2 mit 512 MB, darauf läuft ein Raspbian Wheezy, installiert vom Image 26.07.2013.

    Soweit so gut.

    Ich bin verhältnismäßig neu in der Linux Welt.

    Auf dem Pi habe ich nach der ersten Konfiguration FileZilla, proftpd, und tightvncserver installiert.

    Das läuft alles Problemlos.

    Jetzt möchte ich aber ein Laufzeitsystem und einen dazugehörigen Webserver ans Laufen bekommen.

    Diese Programme sind nicht Bestandteil irgendeines Pakets und werden einfach als Programm ausgeführt.

    Das Laufzeitsystem benutzt die wiringpi Erweiterung.

    Wenn ich nun die beiden Programme (RTSLoader und RTShttpd) in den Autostart einbinde, d.h. ich habe in /etc/init.d jeweils ein Start Script erstellt, und mittels update-rc.d eingebunden, werden beide Programme auch gestartet.

    Blöd ist nur, das nach einem Zeitraum von ca. 4-5 Minuten beide Programme ohne Fehlermeldung beendet werden.

    Kurios an der Sache ist, dass wenn ich die Programme nicht direkt in init.d starte, sondern dort ein Shell Script im Hintergrund aufrufe, welches zunächst 5 Minuten wartet (sleep 300) und dann die Programme aufruft, dann laufen beide durch, längster Test bisher ca. 10 Stunden.

    Hat jemand eine Ahnung woran das liegen könnte, bzw. wie ich heraus bekomme, was der Pi scheinbar einmalig nach ca. 5 Minuten Laufzeit macht?

    Ich habe die Programme auch mal ohne &, also nicht im Hintergrund gestartet, dann bekomme ich für beide nach der selben Zeit einen "segmentation fault", hab aber keine Ahnung was das ist, dieser Fehler kommt nicht, wenn ich die 5 Minuten warte.

    Habe das ganze auch mal ohne Autostart versucht, beide Programme manuell gestartet, selbes verhalten, ca. 5 Minuten nach dem Start => Absturz, wenn man nach dem Start des Pi 5 Minuten wartet und die Programme dann manuell startet => kein Fehler.

    Ich bin für jeden Tipp dankbar.:)

  • Automatisch gestartetes RTS uns Webserver werden nach 4 Minuten beendet? Schau mal ob du hier fündig wirst!

  • Hi,

    ich übersetze das mal, so wie es bei mir ankommt:

    "Ich habe da ein Problem mit einem Programm. Wenn ich es starte, dann kommt nach 5 Minuten beendet es sich nach ca. 5 Minuten.
    Wenn ich es anders starte, beendet es sich ebenfalls nach dieser Zeit. Wenn ich es ganz anders starte, dann läuft es bis zu 10 stunden mindestens. Was kann das sein?"

    Mal ehrlich ... erwartest Du bei so einer Bescheibung eine aussagekräftige Antwort?

    segmentation fault ist übrigens ein Zugriffsfehler auf eine Speicherbereich.

    cu,
    -ds-

  • Hallo dreamshader

    zunächst mal Danke für die Antwort.

    Es ist in etwa so wie du es beschreibst. Wie auch immer ich das Programm direkt nach dem Systemstart des Pi aufrufe, stürzt es ab.
    Wenn ich jetzt deine Antwort zum Segmentation fault mit einbringe, klingt das in etwa so:

    Wenn ich das Programm starte, direkt nach dem das System hochgefahren ist, bekomme ich nach 5 Minuten einen Zugriffsfehler auf einen Speicherbereich.

    Wenn ich nach dem Hochfahren des Systems 5 Minuten warte und es dann starte bekomme ich diesen Fehler nicht.

    Das hier ist stochern im Nebel, ich weiß, aber darum geht es ja, ich habe absolut keine Ahnung wie ich dem Problem auf die Spur kommen soll.

    Das es sich um einen normalen Programmfehler handelt glaube ich nicht, da das RTS ja ohne Probleme stabil läuft. Am Autostart kann es auch nicht liegen, da der selbe Fehler ja auch auftritt, wenn es manuell gestartet wird.

    Ich habe auch schon mit den Wartezeiten herumgespielt, von 30 Sekunden aufwärts in 10 Sekunden Schritten. 7Aber immer 5 Minuten nach dem Systemstart stürzt das Programm ab.

    Ich erwarte hier auch zunächst keine definitive Antwort, aber vielleicht einen Tip wie man einem solchen Fehler auf die Spur kommt, da er sich einwandfrei reproduzieren lässt. Also wie bekomme ich heraus was auf der Maschine 5 Minuten nach Systemstart abläuft?

    Gruß

    khmauli

  • Hmmm ... nochmal ...

    1. segmentation fault ist ein Programmierfehler ... da beisst die Maus keinen Faden ab.

    2. gibt es keine Software, die fehlerfrei ist ... zumindest ist mir keine bekannt

    3. wäre es hilfreich - und damit bin ich wieder beim Hauptteil meines Posts - was ist das für ein Teil, was wird da alles angestossen, wo ist das eingebunden, was hast Du für ein System, ....
    Ohne Hintergrundwissen kommen wir hier nicht weiter.

    cu,
    -ds-

  • Hallo dreamshader,

    zu 1) nehme ich mal so hin
    zu 2) dem stimme ich zu
    zu 3) das ist ein wenig knifflig

    Ich arbeite bei einer kleinen Softwarefirma, habe mal Applikationsentwickler gelernt.
    unsere Firma heißt logi.cals (http://www.logicals.com).
    Wir (d.h. die Kollegen in Österreich) entwickeln und vertreiben ein Tool welches logi.CAD heißt und ein grafisches Programmiermittel für Software SPS (Speicher Programmierbare Steuerungen) ist.
    In logi.CAD wird auf grafischem Weg ein Programm entwickelt, welches dann auf dem Zielsystem in einem RTS (Run Time System) abgearbeitet wird.
    Das ganze wird in der Automatisierungsindustrie benutzt um Maschinen oder Anlagen zu Steuern.
    logi.CAD läuft auf Windows PC's und unser RTS läuft normalerweise auf Industrie PC's wie z.B. einer Beckhoff CX5020, da läuft als Betriebssystem Windows CE.
    Diese Dinger sind verhältnismäßig teuer.
    Jetzt war meine Idee, das RTS auf einen Raspberry Pi zu portieren, um eine kostengünstige Variante für E-Technik Studenten anzubieten.
    Es gibt eine kostenlose Demoversion von logi.CAD, und das RTS würden wir für Studenten zum Download anbieten, da somit kein Umsatz zu Erwarten ist, ist die Zeit, welche die Entwickler in Österreich für dieses Projekt aufbringen können/dürfen ... sagen wir ... knapp bemessen.

    Da ich privat gerne mit Technik herumspiele z. B. dem Raspberry Pi habe ich mich der Sache mal angenommen.

    Das RTS und der Webserver sind dann mal von einem Kollegen für den Raspberry Pi kompiliert worden, und im Großen und Ganzen läuft das ja auch.

    Ich kann mit logi.CAD ein Programm "schreiben", welches mit einfachen Bausteinen die GPIO's vom Raspberry ausliest bzw. setzt, dieses dann compilieren, und auf das RTS im Raspberry spielen.

    Funktioniert alles tadellos, auch direkt vom Systemstart an, das ganze schmiert allerdings dann nach 5 Minuten sang und klanglos ab.

    Wenn ich den Raspberry starte, dann fünf Minuten warte und dann mein RTS starte funktioniert das auch Problemlos, nur sind 5 Minuten Wartezeit in meinen Augen einfach nicht akzeptabel, also irgendwo muss ein Fehler vorliegen. Ich will nicht abstreiten, dass der evtl. im RTS zu suchen ist, was mich halt nur stutzig macht, ist dass das immer und immer nur einmal und immer nach der selben Zeitspanne auftritt.

    Mein System auf dem Raspberry ist ein Raspbian Wheezy aus diesem Image 2013-07-26-wheezy-raspbian/2013-07-26-wheezy-raspbian.zip.
    Ich habe noch den filezilla installiert, und einen FTP Server proftpd, und den tightvncserver.

    An den Quellcode des RTS komme ich leider so ohne weiteres nicht heran, kann also nicht sagen, was da so alles angestossen wird bzw. eingebunden ist.

    Ich dachte mir nur, da ich bei meinem Windows System ein paar Minuten nachdem die Benutzeroberfläche schon gestartet ist von dem ein oder anderen Dienst ein Meldung bekomme, dass es sich evtl. beim Raspberry Pi ähnlich verhält, dass dort irgendetwas gestartet wird, was dann nach 5 Minuten im Zusammenspiel mit unserem RTS einen Fehler verursacht, und dem wollte ich auf die Spur kommen.

    Gruß

    khmauli

  • Tja ... das ist alles etwas knifflig ... aber ich denke, sonst hättest Du das nicht hier gepostet.

    Dass Du keinen Zugriff auf die Source hast, ist nicht so gut. Ich hoffe, der Kollege von Dir ist einigermassen kooperativ.
    Ale erstes würde ich ihn mal bitten, das RTS mit -g zu übersetzen. dann bekommst Du eine etwas aussagekräftigere Fehlermeldung.

    Dann wäre es interessant den Kollegen mal zu fragen, was dieses RTS denn nun erwartet oder benötigt.
    Ohne zu wissen, in welchen Resourcen es herumfummelt, wird das fast unmöglich.

    Und häng' dich nicht so seht an den 5 Minuten auf ... ich bin ziemlich sicher dass es auch nach 4 1/2 Minuten schon geht. Sobald die Bootsequenz abgschlossen ist und der RPi seinen endgültigen runlevel erreicht hat, passiert nichts besonderes mehr.

    cu,
    -ds-

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!