Probleme mit Cronjob

  • Hallo zusammen,


    ich habe mir mit einem Raspberry Pi 3 (Model B Rev 1.2 / Raspbian GNU/Linux 9 (stretch)) einen Bewässerungscomputer gebaut, der über die GPIO Schnittstelle ein Relaismodul schaltet und damit die Magnetventile.


    Als Bedienoberfläche habe ich mich für eine PHP-Seite entschieden. Somit habe ich installiert den Apache, PHP und MySQL.

    Da auch automatisch Programme gestartet werden sollen, habe ich zusätzlich eine cronjob.php erstellt (Ausführung dauert im Schnitt 2,5s, da einiges abgefragt wird) und im Crontab eine minütliche Ausführung eingestellt. Und hier fängt das Problem an.


    Von Zeit zu Zeit schreibt der Pi offenbar "beliebige" Dateien von seinem System kaputt. Mal funktioniert der MySQL Server nicht mehr, mal das PHP, auch mal der Apache. Da ich mit der Fehlersuche in Linux nicht ganz so vertraut bin, ist es mittlerweile einfacher ein vorher gesichertes Image zurückzuspielen.


    In der cronjob.php wird die MySQL Verbindung aufgebaut und zum Schluss auch wieder beendet.


    Fragen:

    - Ist der Pi wohl mit der minütlichen Ausführung des PHP-Skriptes überfordert?

    - Habt ihr Ideen, wie ich meine in der MySQL Datenbank gespeicherten Programme anders automatisch ausführen kann?


    Ich weiß jetzt nicht, welche Angaben euch fehlen, deswegen verzeiht mir dies schon mal.


    VG

  • Von Zeit zu Zeit schreibt der Pi offenbar "beliebige" Dateien von seinem System kaputt. Mal funktioniert der MySQL Server nicht mehr, mal das PHP, auch mal der Apache.

    Was heisst "schreibt kaputt" genau?

    Klingt nach (teil-) defekter SD-Karte oder instabiler Versorgungsspannung des RPi.

    Menschen die keine Ironie verstehen finde ich super!

  • Ich gehe halt davon aus, dass etwas kaputt geschrieben wird, da es eine gewisse Zeit geht und dann auf einmal nicht mehr.


    Also als Stromversorgung ist da ein Hutschienennetzteil dran. Ich weiß die Daten gerade nicht auswendig, aber hatte mich damals, nachdem ich gelesen hatte, dass es Leistungsfähig sein sollte, um so eins gekümmert.


    Die SD Karte hab ich noch nicht getauscht.

  • Fragen:

    - Ist der Pi wohl mit der minütlichen Ausführung des PHP-Skriptes überfordert?

    - Habt ihr Ideen, wie ich meine in der MySQL Datenbank gespeicherten Programme anders automatisch ausführen kann?

    - Wenn es sonst läuft, eher unwahrscheinlich, aber wir kennen dein Script ja nicht.

    - Du speicherst Programme zum ausführen in der Datenbank ?

  • Fragen:

    - Ist der Pi wohl mit der minütlichen Ausführung des PHP-Skriptes überfordert?

    - Habt ihr Ideen, wie ich meine in der MySQL Datenbank gespeicherten Programme anders automatisch ausführen kann?

    -1 Das hängt vom PHP Scipt ab. Wenn es nach wenigen Sekunden abgearbeotet ist und fehlerfrei beendet wird, kannst Du es danach wieder aufrufen.

    -2 Wie hast Du denn das geschafft, Programme in der Datenbank zu speichern ? Nicht dass es grundsärtlich nicht möglich wäre Binärfiles, oder Scripte in einer Datenbank zu verwalten, aber zum Fernschalten der Magnetventile der Gartenbewässering ist ein LAMP System schon etwas oversized. Du bist ja dann nicht nur der Linux-Host Admin, sondern auch der Web-Admin und der mySQL-Admin und musst Dich mit den Servern entsprechend vertraut machen.


    Servus !

    RTFM = Read The Factory Manual, oder so

  • Sind Dateien inhaltlich defekt, oder sind sie sporadisch weg oder was heißt "schreibt kaputt" für dich genau?

    Also ich sage das einfach mal so. Das in dem Moment betreffende Modul funktioniert nicht mehr. Neustart bringt meistens nichts.



    @alle

    Ich glaube ich habe Programme falsch beschrieben. Ich meine mit Programmen geplante Bewässerungen, die durch die Cronjob-Abfrage automatisch in der DB abgefragt und ausgeführt werden (GPIO wird geschaltet).

    Ich habe keine ausführbaren Programme in der DB gespeichert.

    • Official Post

    Ich sehe das ähnlich wie llutz. Die mSD hat imho schon zu viele Schreibzyklen hinter sich gebracht und liegt auf dem Sterbebett. Mach schnellstmöglich ein Backup und schreibe das auf eine nagelneue mSD. Falls die Probleme dort weiterhin auftreten sollten, geht die Fehlersuche halt in Richtung Script & Co.. ;)

  • So, es scheint wirklich an der Karte gelegen zu haben.


    Seit ich eine neue SD-Karte einsetze, keine Ausfälle mehr.


    Vielen Dank an euch alle!

  • Ist vielleicht ein Hilfsmittel um die IO-Fresser zu ermitteln:

    Code
    apt search iotop
    Sortierung... Fertig
    Volltextsuche... Fertig
    iotop/oldstable,now 0.6-1 armhf  [installiert]
      simple top-like I/O monitor
    
    sudo apt install iotop
    
    sudo iotop

    Es schadet auch nichts hier mal reinzuschnuppern:

    https://www.thomas-krenn.com/d…basierte-betriebssysteme/


    MfG


    Jürgen