MLD 2.0 - Aufbau
Inhaltsverzeichnis |
System
Zur Zeit ist die Version 2.x noch nicht freigegeben! Im Moment laufen noch die letzten Tests.
Die MLD (ab Version 2.x) basiert auf SuSE 10.0 und der BusyBox 1.9.2. Die verwendete BusyBox enthält einen Patch, der die umount Funktion korrigiert.
Der Kernel (2.6.25.13.2), die Kernelmudule und die Librarys stammen aus der SuSE 10.0, welche alle verfügbaren Updates erfahren haben. Es wurden die ide-Treiber fest in den Kernel aufgenommen und nicht als Module nachgeladen. Der DVB-Treiber wurde gegen die aktuellste verfügbare Version ersetzt.
Die MLD läuft ausschließlich in einer Ramdisk. Alle Änderungen am Filesystem gehen nach dem Abschalten des PCs verloren. Lediglich Änderungen an Konfigurations Dateien, die links auf Datein auf der Festplatte sind, bleiben erhalten.
Startvorgang
Im ersten Schritt wird der Kernel geladen, die Initial Ram Disk (initramfs) als root Dateisystem gemountet und der Kernel initialisiert. Anschließend ruft der Kernel das Skript /init auf.
Das Init-Skript initialisiert das System und legt eine dynamisch mitwachsende Ramdisk für das root-Dateisystem an. Normalerweise kopiert das Skript die Initial Ram Disk (initramfs) in das root-Dateisystem. Ist jedoch die FastBoot Option aktiviert, wird ein spezielles FastBoot-Dateisystem verwendet.
Danach wird /sbin/init gestartet und die Datei /etc/inittab ausgewertet. Das in der /etc/inittab definierte sysinit Skript /etc/init.d/rc.sysinit wird aufgerufen. Anschließend beendet sich /sbin/init und stellt die definierten Konsolen (normalerweise 4) zum Login zur Verfügung.
Struktur des Dateisystems
/ bin/ # Systemprogramme boot/ data/ dev/ etc/ acpi/ addons/ # -> mld/addons dropbear/ # SSH Konfigurationsdateien? fonts/ # Schriftarten hotplug/ # -> /usr/etc/hotplug init.d/ rc.function rc.poweroff rc.start rc.sysinit rc.sysinit.fastboot boot.d/ mld/ addons/ # alle Addons die beim Booten gestartet werden inactive/ # alle Addons die beim Booten nicht gestartet werden boot/ grub/ data/ etc/ usr/ share/ doc/ rc.d/ # -> init.d setup/ # -> /usr/etc/setup vdr/ # Konfigurationsdateien des vdr channels/ # DVB-Liste mit den Konfigurationen der Kanälen plugins/ # Plugins für den vdr themes/ # Themes für den vdr init/ lib/ # Librarys media/ mnt/ opt/ proc/ root/ sbin/ sys/ tmp/ usr/ var/
Skripte
rc.functions
/etc/init.d/rc.functions
Das Skript stellt allgemeine Funktionen zur Verfügung und wird von anderen Skripten eingebunden, zum Beispiel /etc/init.d/rc.sysinit.
rc.poweroff
/etc/init.d/rc.poweroff
Beim Herunterfahren des Systems wird das Skript aufgerufen.
rc.start
/etc/init.d/rc.poweroff
Dient zum Start des Systems???
rc.sysinit
/etc/init.d/rc.sysinit
Wird beim booten des System aufgerufen.
rc.sysinit.fastboot
/etc/init.d/rc.sysinit.fastboot
Wird beim booten des System aufgerufen, wenn die Option FastBoot eingestellt ist.