MLD 2.0 - Aufbau

Aus VDR Wiki
Wechseln zu: Navigation, Suche

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.