Ich habe mir mal Gedanken gemacht wie das runvdr script erkennen kann welches Plugin abgestürzt ist und wie man es beim nächsten Start deaktivieren kann.
Somit verhindert man die bekannte start-schleife.
Dazu muss vdr mit -g übersetzt sein, was es per default auch ist.
Als erstes muss in das runvdr ein
mit rein. Das muss nur einmal nach dem booten gemacht werden.
Somit wird ein coredump beim Absturz von VDR erzeugt.
Mit folgendem Befehl kann der coredump dann ausgewertet werden.
Da mich ja erst mal nur interessiert welches Plugin den Fehler verursacht hat extrahiere ich den Pluginnamen:
gdb --core core --exec vdr --batch -ex bt 2>&1 | grep cPlugin | tail -1 | sed "s/.*cPlugin\(.*\)::.*/\1/g"
Somit habe ich den Namen des Plugin welcher den Absturz verursacht hat und kann dieses gegebenenfalls beim nächsten Start deaktivieren.
Ein netter Tip ist es auch die Coredump zu sammeln.
Ich mache es so:
Dann landen die coredumps alle bei mir im Homeverzeichniss mit einem eindeutigen Namen.
Für Distri Entwickler ist das eine echte Hilfe wenn man diese Coredumps dann an die Entwickler schickt.