Zeitgesteuertes Abspielen von mp3-Tracks

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Alles klar – ich werde das mit dem Watchdog testen und dann wieder berichten.

    //Nachtrag

    swissflyer Nach nochmaliger Überlegung müsste sich der MPD eigentlich seinen Status merken, also dürfte in der musiklosen Zeit bei einem reboot auch nicht passieren.

    Im Grunde genommen könnte ich das mit dem Bombfork-Befehl testen, resp. damit einen Absturz simulieren woraufhin das System rebootet (zumindest sollte es dass ja in der Theorie machen). So kann ich einerseits testen was MPD/MPC macht und andererseits ob der Watchdog funktioniert...

    Test 1: Musik läuft / Bombfork auslösen -> Auto-Reboot -> What happens?

    Test 2: Musik läuft nicht / Bombfork auslösen -> Auto-Reboot -> What happens?

    Zumindest in zweitem Fall müsste nach meinem Verständnis ja nichts passieren, resp, der Player erst wieder ab der in der Crontab eingetragenen Zeit neu starten.

  • Alles klar – ich werde das mit dem Watchdog testen und dann wieder berichten.

    Im Grunde genommen könnte ich das mit dem Bombfork-Befehl testen, resp. damit einen Absturz simulieren woraufhin das System rebootet (zumindest sollte es dass ja in der Theorie machen). So kann ich einerseits testen was MPD/MPC macht und andererseits ob der Watchdog funktioniert...

    Betr. hardware-watchdog siehe auch die manpage für systemd-system.conf.

    Code
    :~# cat /etc/systemd/system.conf | grep -i watch
    #RuntimeWatchdogSec=0
    #ShutdownWatchdogSec=10min
    #WatchdogDevice=

    Was die forkbomb auf Linux mit systemd betrifft, hatte ich ja bereits geschrieben, dass das Abstürzen evtl. nicht funktionieren wird, weil:

    Zitat


    Auf Distributionen mit systemd wird für jeden User eine cgroup angelegt, welche die Anzahl der Prozesse pro User limitiert und so Auswirkungen auf das Gesamtsystem unterbindet.

    Quelle: https://de.wikipedia.org/wiki/Forkbomb

    EDIT:

    Das forkbomb-binary kannst Du aus dem C-source code (siehe Quelle) auf deinem PI mit:

    Code
    gcc -o forkbomb forkbomb.c

    als nicht root-user (d. h. ohne sudo) kompilieren.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • So – neue Erkenntnisse:

    1. Watchdog ist installiert und funktioniert

    2. Der Forkbomb-Befehl funktioniert (zumindest unter meinem Betriebssystem...). Das läuft dann so ab, dass gleich nach der Eingabe die Prozessorleistung auf 100% steigt und etwa 90 Sekunden später der Pi sich automatisch neu startet

    In der von rpi444 angegebenen Datei habe ich unter anderem das gefunden:

    Code
    ....
    #DefaultTimeoutStartSec=90s
    #DefaultTimeoutStopSec=90s
    ....

    Ich denke, dass werden genau diese 90 Sekunden sein, die ich warten muss.

    3. Das ist nun die unerfreuliche Erkenntnis (es wäre ja auch zu schön, wenn auf Anhieb alles gelingen würde):

    Test 1: Musik läuft / Bombfork auslösen -> Auto-Reboot -> What happens?

    Test 2: Musik läuft nicht / Bombfork auslösen -> Auto-Reboot -> What happens?

    In beiden Fällen passiert genau nichts. Der Pi rebootet zwar und fährt wieder hoch, aber die Musik beginnt nicht wieder zu spielen. Hat hier jemand eine Idee woran das liegen könnte? Allenfalls eine Einstellung in MPD?

    2 Mal editiert, zuletzt von swissflyer (15. November 2019 um 22:36)

  • Hmm – das ist nun etwas komisch... Es hat mir offensichtlich die MPC-Einstellungen verhauen (Playlist war nicht mehr geladen und auch das repeat-on war wieder draussen).

    Habe nun die Playlist nochmals geladen wie auch das repeat-on wieder aktiviert und nochmals den Forkbomb während des Abspielens ausgeführt. Siehe da: Pi rebootet und fängt gleich wieder mit dem Abspielen der Musik an (und zwar an jener Lied-Stelle wo der Unterbruch stattfand). So wäre das ja eigentlich perfekt!

    Habe gleich auch noch den zweiten Fall durchgespielt (Forkbomb ohne aktive Musik): Auch hier scheint jetzt alles so zu funktionieren wie es soll (es bleibt still :). MPC-Einstellungen werden ebenfalls beibehalten.

    Ja - was soll ich sagen... :danke_ATDE: Das ist zurzeit alles was ich in Bezug auf dieses Thema wissen mochte. Ohne eure Hilfe wäre ich im Leben nie so schnell an das Ziel gekommen und deshalb nochmals ein herzliches Dankeschön an alle die zur Lösung beigetragen haben!

    -----------

    PS: Mein Pi-Projekt ist damit noch nicht abgeschlossen, aber der Mediaplayer war mit Abstand die wichtigste Funktion. Es gibt noch 3 weitere Teilprojekte die gelöst werden müssen:

    1. RTC installieren (ist bestellt)
    2. Pi-Screen auf dem iPad haben (ohne Internet)

    3. Schaltung einer 433Mhz Funksteckdose (notwendige Teile sind bestellt)

    Zum zweiten Punkt werde ich dann voraussichtlich auch wieder einen Thread hier im Forum erstellen – zum dritten Punkt gibt es bereits sehr viel Dokumaterial im Netz zu finden.

    • Offizieller Beitrag

    Es hat mir offensichtlich die MPC-Einstellungen verhauen (Playlist war nicht mehr geladen und auch das repeat-on war wieder draussen).

    Da hattest Du ein Worst Case Szenario, aber das war auch gut so um einen der schlimmsten anzunehmenden Fehler zu erkennen, vom Schrotten des RPi mal abgesehen. An dieser Stelle kann Dir bestimmt auch keine Systemd-Unit helfen, zumindest wüsste ich nicht wie. :conf:

    Btw. Eröffne bitte für jeden Punkt ein eigenes Thema! Verschiedene Fachrichtungen benötigt verschiedene Kompetenzen, auch wenn sich diese manchmal überschneiden. ;) Und falls das Thema hier für Dich erledigt ist, dann markiere dieses bitte als solches. Das geht oben unter dem Button "Thema bearbeiten".

Jetzt mitmachen!

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