/var/etc/alternate-rc

Aus M740 WikiWeb

Wechseln zu: Navigation, Suche

Datei: /var/etc/alternate-rc

Der Einsatz der hier genannten Modifikationen geschieht auf eigene Gefahr!!

Inhaltsverzeichnis


Einleitung

Beim Hochfahren der M740AV ist das Script /etc/rc maßgeblich beteidigt. Es mounted den Datenbereich /data, läd diverse Module und startet diverse Dienste, u.a. auch das Programm wavebox. Da /etc/rc im Nur-Lese-Bereich des root file systems abgelegt ist kann man es nur durch Aufspielen einer angepassten Firmware ändern.

Hook in /etc/rc

Ab der Firmware 1.18.lemmi-04 bis Firmware 2.01.0.lemmi-02 ist im Script /etc/rc ein Hook eingebaut, der ein alternatives Boot-Script zuläßt:

...
if [[ "$LEMMI_FIRST_BOOT" == "no" && -f /var/etc/alternate-rc ]]; then
   source /var/etc/alternate-rc
   exit
fi
...

Dieser Kodeteil wird direkt nach dem mounten von /data und dem Laden von /var/etc und der Module ausgeführt:

  • Existiert die Datei /var/etc/alternate-rc, dann wird diese Datei ausgeführt und danach /etc/rc beendet.

Daher ist es sehr einfach ein eigenes Boot-Script einzubinden.

Ab Firmware 2.01.0.lemmi-03 wird /var/etc/alternate-rc nicht mehr unterstützt. Stattdessen gibt es den Namensvetter /var/etc/rc.alternate.

Vorlage für /var/etc/alternate-rc

Als Vorlage solle immer die Datei /etc/rc der aktuell installierten Firmware verwendet werden.

Evtl. kann der folgende Wächter an den Anfang gesetzt werden um das Script /var/etc/alternate-rc nach 60 Sekunden in /var/etc/alternate-rc.1 umzubenennen. Damit wird die Sicherheit erhöht, falls das Script die Box zum Absturz bringt, da das Script im Normallfall nur bei einem Boot-Vorgang ausgeführt wird. Zum nochmaligen Ausführen muß das Script wieder in /var/etc/alternate-rc umbenannt werden.

#!/bin/sh
# Einmalige Benutzung, um bei einem Fehler wieder in die Box zu kommen
( sleep 60; mv /var/etc/alternate-rc /var/etc/alternate-rc.1 ) &

....

Verzeichnisse & Dateien der Firmware

/   (root file system; gemounted von /dev/mtd1)

Weitere Links

Persönliche Werkzeuge