Änderungen auf read-only filesystem um firmware zu aktualiesiereren

  • Hallo Ihr,

    ich such gerade im TVheadend Forum Hilfe. Ich muss Kernel firmware für DVB-T2 aktualiesieren. Leider ist die System Partition ein read-only Filesystem. Ich habe es mit

    mount -o remount,rw /

    mount -o remount,rw /flash

    und mit

    mount -o remount,rw /storage

    probiert. Nichts half.

    Wie kann ich auf meinem Raspberry Pi 4 die firmware aktualisieren? Was gar nichts half, war die SD Karte am Laptop zu mounten. Die Verzeichnisse werden wohl erst beim Booten erstellt?!


    Hier der Forenbeitrag bei TV Headend:
    https://tvheadend.org/boards/14/topics/44259?page=1&r=44642


    Tobias

  • Das geht nur, wenn du dir ein eigenes LE build baust. An einem Read-Only Dateisystem kannst du da recht wenig ändern. Vielleicht gibt es noch ein Hintertürchen, aber ich würde nicht drauf bauen


    Was gar nichts half, war die SD Karte am Laptop zu mounten. Die Verzeichnisse werden wohl erst beim Booten erstellt?!

    Welches OS läuft denn auf dem Laptop? Wenn das ein Windows ist, wird Windows nur einfach diese Partition nicht lesen können. /flash sollte funktionieren, ich wüsste nur nicht, was du dort ändern wollen würdest.

    Das Firmwarefile liegt in /usr/lib/kernel-overlays/base/lib/firmware/ und das kannst du nicht remounten. Da würde ich dir empfehlen eine Anfrage im LibreELEC-forum direkt zu erstellen oder einen Issue auf Github zu eröffnen.

  • So rein aus Neugierde: Warum musst Du die Firmware erneuern ? Ist das eine neuere, als was bei LibreELEC eingebunden ist ? Wennn die ausreichend getestet und besser ist, dann siehe @DaVu - aka: LibreELEC bitten, die in einem Update einzubinden. Wenn die eher experimentell ist oder sonstwie nicht fuer jeden geeignet ist, dann ist eine sinnvolle loesung schwieriger. Da muesste es dann irgendwie im read-only code einen weg geben, lokale patches aufzurufen, und zwar sehr frueh im boot, und, das denke ich aber wird LibreELEC nicht haben.

    Ich habe bei solchen Problemen in anderen Linux (hab kein LibreELEC in produktion) halt immer pfrimeleien in /etc/rc.local gemacht. Da koenntest DU halt:

    - Alle Programme/Dienste, die von dem kernel treiber abhaengen stoppen
    - Alle kernel module die den fraglichen kernel treiber verwenden und den kerneltreiber selbst entfernen (modprobe -r)
    - Den neueren Treiber laden mit insmod - da kann man pfad angeben
    - die anderen kerneltreiber laden
    - die Dienste/Programme wieder starten

    Je nachdem wieviel das ist, ist das ein einfacher fix oder eine ewige Lite.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!