noch ein Howto

  • hallo zusammen,


    ich habe mein howto mal überarbeitet .... vielleicht könnt ihr ja mal das ein oder andere feedback geben ....


    VDR 1.6.2 Installationsanleitung auf einem Debian Sid System mit 2.4.22er Kernel


    1. Einführung


    Dieses Dokument stellt eine Insallationsanleitung dar. Es erklärt wie man den VDR von Hand und ohne Debian Pakete auf einem Debian Sid System installiert. Dabei wird erklärt, wie man das Debian System installiert und das System auf einen 2.4.22er Kernel „aktualisiert“.
    Es wird dabei folgendes System zugrundegelegt:


    - Intel Pentuim 3 733 MHz
    - APM fähiges Mainboard
    - ATX Gehäuse
    - 256 MB Hauptspeicher
    - 120 GB Festplatte
    - Haupauge Nexus-s Rev.: 2.2 mit Fernbedienung (kein LIRC)


    2. Installation des Basissystems


    Zuerst wird das Debian System installiert. Dazu wird die Debian Woody CD 1, welche unter http://www.debian.org/CD/http-ftp/ heruntergeldaden werden kann, ins CD-Rom Laufwerk gelegt und bei dem Debian Bootprompt „bf24“ eingegeben, um das System mit einem 2.4.18er Kernel zu installieren.
    Bei der Frage nach der Festplattenpartitionierung ist es sinvoll eine primäre Partition (ca. 5GB) als Systempartition anzulegen und zudem zwei erweiterte Partitionen. Die erste soll dabei eine sogenannte Swappartition werden, auf der das Betriebssystem Hauptspeicher auslagen kann. Diese sollte ca. 1GB in Anspruch nehmen. Auf der zweiten Partition sollen nachher die Videodaten liegen. Daher kann für dieses der restliche Fesplattenspeicher genommen werden. Diese Partition sollte nach der Partitionierung als /video eingebunden werden.
    Die restlichen Fragen und Menüs die während der Installation erscheinen sind weitgehend selbsterklärend. Wichtig ist noch, dass man unter dem Menüpunkt „Laden und Konfigurieren der Treibermodule“ alle für das einene System passende Treibermodule lädt. Insbesondere ist hier die Netzwerkkarte wichtig. Sollte für bestimmte Hardware kein Modul zur Verfügung stehen, kann es sein, das dieses bereits fest in den Kernel eingebaut wurde. In diesem Fall hilft nur eine Überprüfung der Funktionalität nach der Installation des Systems. Sind alle Konfigurationsdialoge abgeschlossen startet der Rechner neu durch.
    Danach fragt die Installationsroutine noch einige Einstellungen ab. Ein neuer User wird an dieses Stelle noch nicht angelegt. Den PCMCIA Support kann man getrost deinstallieren. Bei der Frage nach der Installationsquelle sollte man wenn die Möglichkeit besteht immer http oder ftp wählen, da man somit immer die aktuellsten Pakete erhält. Die Restlichen Fragen kann man prinzipiell alle mit „ja“ beantworten. Danach fragt das System nach zusätzlicher Software indem man mit tasksel Installationsbündel auswählen kann. Da es ein minimales Debian System nur für den VDR sein soll, wird hier nichts ausgewählt und daher wird nach tasksel auch nicht dselect ausgeführt.
    3. Zusätzliche Software


    Erscheint der Boot Prompt nach der Installation ist der erste Schritt in Richtung VDR geschafft. Nun installieren wir zusätzliche Software, die die tägliche Arbeit mit dem System leichter machen und die für die Kernelkonfiguration und die VDR Kompilierung nötig sind. Es handelt sich dabei um folgende Pakete:


    mc Midnight Comander, das Vorbild für den Norton Comander
    wget Downloader
    libncurses5-dev make menuconfig
    libjpeg62-dev VDR Kompilierung


    Diese werden mit dem Tool apt-get installiert. Dazu wir folgende Syntax verwendet:


    apt-get install paketname


    Eventuelle Abhängigkeiten der Pakete zu Anderen löst apt-get automatisch auf.


    4. Neuer Kernel und Update auf Sid


    Nun kann das System mit dem 2.4.22er Kernel bestückt werden und auf Sid geupdated werden.
    Dazu Installiert man zuerst die Kernel Sourcen. Da die Sourcen für den 2.4.22er Kernel nicht im aktuellen stable Relesase von Debian(Woody) enthalten sind, muss man diese aus dem testing Release (Sid) installieren. Dazu ist es notwendig in der Datei sources.conf unter /etc/apt alle stable Einträge durch testing zu ersetzen. Dies kann man recht einfach mit dem Editor vi erledigen. Nach dem Speichern der Änderungen führt man ein apt-get update aus, um die Installationsquellen zu aktualisieren. Nun wird ein Distributionsupdate ausgeführt, um das System auf das testing Release (Sid) zu bringen. Dazu wird folgender Befehl aufgerufen.


    apt-get upgrade


    Jetzt können auch die Kernelquellen installiert werden. Das geht ziemlich simpel mit dem Kommando: apt-get install kernel-source-2.4.22. Danach müssen die Kernel Sourcen entpackt werden. Dazu wechselt man in der Verzeichnis /usr/src und entpackt dort mit tar xvfj kernelpaket. Danach legt man einen symbolischen Link an. Das geht mit ln –s entpacktesKernelPaket linux. Jetzt kann man ins Verzeichnis /usr/scr/linux wechseln und dort „make menuconfig“ aufrufen um den Kernel zu konfigurieren. Wenn man noch nicht so viel Ahnung vom Kernelbau hat, dann kann man auch die sich im Anhang befindliche .config Datei wählen. Diese Datei wird mit dem menuconfig Tool ausgewählt und so geladen. Danach speichert man die Konfiguration direkt und beendet das menuconfig Progamm.
    Nun kann es an das Kompilieren des Kernels und der Module gehen. Dazu ruft man im /usr/src/linux Verzeichnis folgende Befehle auf:


    make dep
    make clean
    make bzImage
    make modules
    make modules_install


    Ist alles ordentlich durchgelaufen, muss man den Kernel noch in das /boot/ Verzeichnis kopieren und die lilo Konfiguration anpassen. Das geschieht mit:


    cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.22


    In der Datei /etc/lilo.conf legt man einen neuen Image Eintrag an. Dazu kann man sich den schon bestehenden Image Eintrag zum Vorbild nehmen. Zudem wird den Name unserer neunen Image Sektion also default eingetragen, um unseren neune Kernel standardmäßig zu starten. Zum Schluss ruft man noch das Kommando lilo auf, um die lilo Konfiguration gültig werden zu lassen. Um späteren Problemen beim Kompilieren der Komponenten vorzubeugen ist noch folgendes zu tun. Das libc6-dev Paket, welches mit dem Update auf Sid kommt, installiert neue Kernelheader mit denen der DVB Treiber nicht klar kommt. Diese befinden sich in den Verzeichnissen /usr/include/linux und /usr/include/asm. Diese beiden Verzeichnisse werden mit dem mv Befehl umbenannt z.B. in name.old. Danach legt man im Verzeichnis /usr/include/ zwei symbolische Links an, welche auf das asm und linux Verzeichnis in den Kernel Quellen zeigen. Dies geschieht mit:


    ln –s /usr/src/linux/include/linux/ /usr/include/linux
    ln –s /usr/src/linux/include/asm/ /usr/include/asm


    Da bei dem “alten” Kernel noch zusätzliche Module geladen wurden, die der neue Kernel nicht mehr benötigt, befinden sich nun nicht mehr benötigte Einträge in der Datei /etc/modules. Diese Einträge werden nun aus dieser Datei herausgelöscht. Das kann man wieder mit der Editor vi machen. Welche dies sind muss mit einem akribischen Blick auf die Bootmeldungen heraugefunden werden. Dort findet man das u.a. usbkbd, input und keybdev Einträge entfernt werden müssen.


    Damit ist das Debian System eingerichtet und es kann an die Installation des DVB Treibers gehen.


    5. DVB Treiber


    Das Basissystem ist nun soweit eingerichtet, dass die Installation des DVB Treibers stattfinden kann.
    Dazu wechelt man zuetst in das Verzeichnis /usr/local/src.


    cd /usr/local/src


    Dann wird mittels wget das DVB Treiberarchiv geladen.


    wget ftp://ftp.cadsoft.de/vdr/linux-dvb.2003-11-08.tar.bz2


    Zum Zeitpunkt der Erstellung der Anleitung war dies die aktuellste Datei. Es ist daher zu prüfen ob zum Installationszeitpunkt eine aktuellere Version existiert.


    Das Archiv wird nun entpackt und zudem wird ein symbolischer Link auf das entpackte Verzeichnis angelegt.


    tar xvfj linux-dvb.2003-11-08.tar.bz2


    ln –s linux-dvb.2003-11-08 DVB


    Da eine Haupauge Nexus-s DVB Karte mir Fernbedienung die grundlage dieser anleitung bildet und der VDR später mit einem normalen Systemuser und nicht mit root Rechten laufen soll, ist es notwendig die DVB Treiber Quellen zu patchen. Der Patch ermöglicht es die Fernbedienung auch als normaler Benutzer verwenden zu können. Dazu wird zunächst der Patch mittels wget geladen.


    wget http://cvs.berlios.de/cgi-bin/…10_ir-permission-666.diff
    (Dieser Patch ist von Martini und heisst „remote-plugin as normal user“)


    Der Patch wird nun nach linux-dvb.2003-11-08/driver/av7110/av7110_ir.c kopiert und dort mittels


    cat av7110_ir-permission-666.diff | patch –p1


    installiert.


    Jetzt kann der DVB Treiber kompiliert und installiert werden. Dazu wechselt man in das Verzeichnis /usr/local/scr/DVB/driver und führt folgende Kommandos aus:


    make
    ./makedev.napi
    make insmod


    Nach dem letzten Kommando sollte auf dem Fernseher die Convergence Schrift zu sehen sein. Damit ist der DVB Treiber richtig geladen. Um die kompilierten Treibermodule fest zu installieren, wird das Kommando make install ausgeführt. Das kopiert die Treibermodule an den richtigen Ort (/lib/modules/2.4.22/…). Um diese bei jedem Systemstart zu laden, trägt man entweder die Namen der Module in die Datei /etc/modules ein oder erledigt diese Konfigurationsaufgabe über das Programm modconf. Welche Module für die DVB Karte geladen weden müssen, erfährt man in der Datei CARDS, welche sich im Sourcenverzeichnis des DVB Treibers befindet. Bei einer WinTV Nexus-s sind dies die Module dvb-core, dvb-ttpci und stv2099.


    Wenn mann später das Programm VDRAdmin benutzen will, möchte man sicherlich auch Fernseher dort benutzen. Dazu ist es notwendig das GRAB Kommando beim svdrp ausführen zu können. Dies ist allerdings nur möglich, wenn die Devices /dev/video* vorhanden sind. Bei einer Debian installation ist das jedoch nicht der Fall. Daher ist es nötig, diese von Hand anzulegen. Dies geschieht mit:


    cd /dev
    mknod video0 c 81 0
    mknod video1 c 81 1
    mknod video2 c 81 2
    mknod video3 c 81 3


    Nun legen wie noch einen symbolischen Link auf das video0 Device an.


    ln -s video0 video


    Damit wäre die Installation des DVB Treibers abgeschlossen und es kann der VDR Installiert werden.


    6. VDR Installation


    Um den VDR zu installieren, wechelt man zuerst in das Verzeichnis /usr/local/src.


    cd /usr/local/src


    Dann wird mittels wget das VDR Softwarearchiv geladen.


    wget ftp://ftp.cadsoft.de/vdr/vdr-1.2.6.tar.bz2


    Zum Zeitpunkt der Erstellung der Anleitung war dies die aktuellste Datei. Es ist daher zu prüfen ob zum Installationszeitpunkt eine aktuellere Version existiert.


    Das Archiv wird nun entpackt und zudem wird ein symbolischer Link auf das entpackte Verzeichnis angelegt.


    tar xvfj vdr-1.2.6.tar.bz2


    ln –s vdr-1.2.6.tar.bz2 VDR


    Nun kann es an die Kompilierung und Installation des VDR gehen. Da die VDR Binaries nachher im Verzeichnis /usr/local/vdr/ liegen sollen, wird zunächt die Variable BINDIR in der Datei /usr/local/src/VDR/Makefile auf diesen Pfad angepasst. Jetzt kann der VDR kompiliert werden. Dazu wechselt man in das Verzeichnis /usr/local/src/VDR und füht dort folgendes Kommando aus:


    make VFAT=1


    Die genauen Optionen kann man in der Datei INSTALL welche sich im tar Archiv befindet nachlesen. Ein einfaches make ist zudem auch gültig. Sinnvollerweise sollte man hier immer VFAT=1 angeben, da sonst keine spätere Freigabe des /video Verzeichnisses über SAMBA möglich ist.


    Die Kompilierung des VDR ist nun abgeschlossen. Damit die Installation der Software auch richtig funktioniert, müssen noch drei Verzeichnisse angelegt werden. Eins, für die VDR Binaries und die anderen beiden für die VDR Manpages. Das zudem nötige /video Verzeichnis für die VDR Aufnahmen wurde schon während der Basisinstallation eingerichtet. Folgende Kommandos erstellen die benötigten Verzeichnisse:


    mkdir /usr/local/vdr
    mkdir /usr/local/man/man1
    mkdir /usr/local/man/man5


    Um die Software nun zu installieren gibt man einfach „make install“ ein. Das kopiert die Dateien vdr und runvdr in den im Makefile angegebenen BINDIR Pfad.


    Prinzipiell ist die Installation des VDR nun abgeschlossen. Allerdings sind die Vorgaben für die Speicherorte der config Dateien und Plugins nicht schön. Die config Dateien sollen unter /usr/local/vdr/conf und die Plugins unter /usr/local/vdr/plugins liegen. Dazu werden die Verzeichnisse angelegt und die *.conf aus dem /video Verzeichis in das config Verzeichnis verschoben. Das geschieht mit folgenden Kommandos:


    mkdir /usr/local/vdr/conf
    mkdir /usr/local/vdr/plugins
    mv /video/*.conf /usr/local/vdr/conf/


    Der letzte Schritt der Installation besteht in der Bearbeitung des VDR Startskriptes. Dies geschieht mit:


    vi /usr/local/vdr/runvdr


    Hier müssen noch die richtigen Pfade zu allen Verzeichnissen gesetzt werden. Danach kann das Skript aufgerufen werden und somit der VDR gestartet werden. Das skript sollte nach der Bearbeitung ungefähr folgendermaßen aussehen:


    #!/bin/sh


    # runvdr: Loads the DVB driver and runs VDR
    #
    # If VDR exits abnormally, the driver will be reloaded
    # and VDR restarted.
    #
    # Set the environment variable VDRUSR to the user id you
    # want VDR to run with. If VDRUSR is not set, VDR will run
    # as 'root', which is not necessarily advisable.
    #
    # Since this script loads the DVB driver, it must be started
    # as user 'root'.
    #
    # Any command line parameters will be passed on to the
    # actual 'vdr' program.
    #
    # See the main source file 'vdr.c' for copyright information and
    # how to reach the author.
    #
    # $Id: runvdr 1.11 2003/08/26 16:15:41 kls Exp $


    DVBDIR="/lib/modules/2.4.22/misc"
    VDRPRG="/usr/local/vdr/vdr"
    VDRCMD="$VDRPRG -w 60 -t /dev/tty8 –c /usr/local/vdr/conf –L /usr/local/vdr/plugins $*"
    VDRUSR=”root”


    LSMOD="`/sbin/lsmod | grep -w '^dvb' | wc -l`"
    KILL="/usr/bin/killall -q -TERM"


    # Load driver if it hasn't been loaded already:
    if [ $LSMOD -eq 0 ] ; then
    (cd $DVBDIR; make insmod)
    fi


    while (true) do
    su -c "$VDRCMD" $VDRUSR
    if test $? -eq 0 -o $? -eq 2; then exit; fi
    date
    echo "restarting VDR"
    $KILL $VDRPRG
    sleep 10
    (cd $DVBDIR; make rmmod; make insmod)
    date
    done


    Zusätzlich zu den Pfaden zu den einzelnen Dateien, wurde in der runvdr noch der Benutzer mit dem der VDR gestartet wird angegeben. Zur Zeit ist dies noch der Benutzer root. Wie man einen eigenen Systemuser für den VDR einrichtet wird im nächsten Abschnitt beschrieben.


    Damit der VDR beim Einschalten des Rechners automatisch startet, wird noch ein Eintrag in der Datei /etc/inittab vorgenommen. Dieser wird am besten ganz am Ende der Datei mit dem Editor vi eingefügt. Er sollte folgendermaßen aussehen:


    vdr:25:once:/usr/local/vdr/runvdr


    Damit ist die Installation des VDR Basissystems abgeschlossen.
    7. Systemuser


    Nun wird ein Systembenutzer angelegt, unter dem der VDR laufen soll. Den VDR mit root Rechten zu starten wird nicht empfohlen, da es ein zu großes Risiko darstellt. Die Einrichtung des Benutzers geschieht mit den folgenden Kommandos:


    groupadd -g 99 vdrdaem


    useradd -u 99 -g vdrdaem -d /home/vdr -p password vdr


    Das erste Kommando legt eine neue Gruppe (vdrdaem) mit der GID 99 an. Das zweite Kommando legt einen neuen Benutzer (vdr) mit der UID 99 an und weißt diesem die primäre Gruppe vdrdaem zu. Zudem wird das Homeverzeichnis (/home/vdr) gesetzt und das Passwort für den Benutzer vergeben.
    Zur Erklärung: Die User- und Group-ID unterhalb des Wertes 100 sind traditionell für die speziellen User von Systemdiensten vorbehalten.
    Um nun den VDR mit dem vdr Systemuser zu starten, muss man die Zeile


    VDRUSR=”root”


    durch


    VDRUSR=”vdr”


    ersetzen.


    Damit der vdr Systemuser den VDR auch ausführen darf, muss man ihm Rechte auf alle für die Ausführung des VDR notwendigen Dateien erteilen. Dies sind die Dateien in den folgenden Verzeichnissnen:


    chown -R vdr:vdrdaem /video Verzeichnis für die Videodaten
    chown -R vdr:vdrdaem /usr/local/vdr VDR Binariverzeichnis, „config“ Verzeichnis und „plugin“ Verzeichnis
    chown vdr:vdrdaem /dev/dvb/adapter?/* Zugriff auf das DVB Device
    chown vdr:vdrdaem /dev/video? Zugriff auf das Video Device für GRAB (s.o.)
    chown vdr:vdrdaem /dev/input/event? Zugriff auf das Event Device für IR


    Nun müssen noch einige Rechte an bestehenden Dateien verändert werden. Das gescheiht mittels:


    chmod a+rw /dev/tty8 Alle User dürfen Konsole 8 lesen und „scheiben“
    chmod a+rw /dev/dvd Alle User dürfen das DVD Laufwerk lesen und „scheiben“
    chmod a+rw /dev/video? Alle User dürfen das Video Device lesen und „scheiben“


    Jetzt kann der VDR gestartet werden. Am besten startet man den Rechner dafür neu durch. Dies geht am besten mit dem Kommando „init 6“. Ist alles richtig installiert und konfiguriert, sollte der VDR nun selbstständig starten. Falls etwas nicht richtig funktionieren sollte, hilft vielleicht ein Blich in das Eventlog mittels:


    tail –f /var/log/messages


    8. VDR ausschalten


    Die VDR-Software bietet die praktische Möglichkeit den Rechner per Direkteingabe herunterzufahren. Man benötigt lediglich ein kleines Skript, welches diese Aufgabe erledigt und beispielsweise unter dem Namen „vdrshutdown“ im Verzeichnis /usr/local/vdr angelegt wird. Das Skript könnte beispielsweise folgendermaßen aussehen:


    #!/bin/bash
    sudo shutdown –h now


    Dieses Skript wird nun mittels chmod a+x /usr/local/vdr/vdrshutdown ausführbar gemacht.
    Wie man an der zweiten Zeile des Skriptes erkennen kann, steht dem eigentlichen shutdown Kommando der Befehl „sudo“ voran. Sudo ist ein Programm, welches es unpriviligierten Benutzern erlaubt, bestimmte Befehle auszuführen, die i.d.R. nur mit root Rechten ausgeführt werden können.
    Dazu muss allerdings das Programm sudo noch installiert werden. Dies geschieht mittels apt-get install sudo. Nach der Installation des sudo Progamms muss dieses nun so konfiguriert werden, das der Benutzer vdr das shutdown Kommando ausführen darf. Dies erreicht man, indem man folgenden Eintrag mit dem Editor vi in der Datei /etc/sudoers anhängt:


    vdr ALL=(ALL) NOPASSWD: /sbin/shutdown


    Nun muss dem VDR noch mitgelteilt werden, welches Kommando er bei einem Druck auf den Power Button ausführen soll. Dies geschieht indem man ihm bei seinem Aufruf das Shutdown Skript mittels –s übergibt.
    Es muss demnach „-s /usr/local/vdr/vdrshutdown“ in die VDRCMD="… Zeile einbebaut werden, sodass diese dann vollständig lautet:


    VDRCMD="$VDRPRG -w 60 -t /dev/tty8 –c /usr/local/vdr/conf –L /usr/local/vdr/plugins \
    -s /usr/local/vdr/vdrshutdown $*"


    Nun kann der VDR mittels des Power Buttons heruntergefahren werden. Im folgenden Abschnitt wird erklärt wie man die Haupauge Fernbedienung mit dem VDR benutzen kann.

  • und der rest...



    9. Remote Plugin


    Dieser Abschnitt soll zwei Dinge erreichen. Zum einen geht es darum, wie mal Plugins in den VDR intagriert und zum anderen soll der VDR lernen, die Haupauge Fernbedienung zu verstehen.
    Es wird demnach exemplarisch das Remote Plugin für den VDR installiert. Wenn man dieses installiert hat, ist die Installation anderer Plugins reine Reproduktion.


    Zuerst wird das Quellpaket des Remote Plugins geladen. Dies geschieht mittels:


    cd /usr/local/src/VDR/PLUGINS/src


    wget http://endriss.escape.bei.t-on…/vdr/vdr-remote-0.2.0.tgz


    Danach wird das Quellarchiv mittels tar xvfz vdr-remote-0.2.0.tgz entpackt. Nun wird mittels ln –s vdr-remote-0.2.0 remote ein symbolischer link auf das entpackte Quellarchiv gelegt.


    Jetzt kann das Plugin kompiliert werden. Dazu wechselt man in das Verzeichnis /usr/local/src/VDR/ und fürht dort „make plugins“ aus.
    Da das Plugin Verzeichnis /usr/local/vdr/plugins lautet, müssen die kompilerten Plugins aus dem Verzeichnis /usr/local/src/VDR/PLUGINS/lib in das Verzeichnis /usr/local/vdr/plugins kopiert werden. Die geschieht mittels:


    cp /usr/local/src/VDR/PLUGINS/lib/* /usr/local/vdr/plugins/


    Um das Plugin bei dem Systemstart automatisch zu laden, muss dem VDR beim Start die Option „–P remote“ übergeben werden. Die geschieht indem die VDRCMD="… Zeile der Datei runvdr um diesen Eintrag erweitert wird. Die Zeile lautet nun:


    VDRCMD="$VDRPRG -w 60 -t /dev/tty8 –c /usr/local/vdr/conf –L /usr/local/vdr/plugins \
    -P remote -s /usr/local/vdr/vdrshutdown $*"


    Damit wäre die Installation des VDR abgeschlossen.

  • cool, auf sowas hab ich noch gewartet. Nutze zwar sei ein paar Wochen Linvdr aber werde mich irgendwann davon trennen müssen, da ich dem VDR noch einige andere Dienste auferlegen will, wenn er mal fertig ist.


    Dazu ist mir so ein Howto grade recht. Kann nur mit mandrake umgehen, wollte aber, der Stabilität wegen debian für den VDR nehmen.


    THX!
    Cat

    "Life moves fast. Don't miss a thing."
    ------------------------------------------------------
    Rechner: Celeron 2,666 Ghz; 256 SDRAM, TT rev. 1.6 +Satelco Easywatch ,1x 160GB Samsung Festplatte, 1 x 500 GB WD
    Gehäuse : LaScala03 (Silverstone),Zalman CNPS 7000CU .Asus P4S533-MX; AVBoard 1.0
    CTVDR ( Lenny)

  • Zitat

    Original von slapmonster
    hallo zusammen,


    ich habe mein howto mal überarbeitet .... vielleicht könnt ihr ja mal das ein oder andere feedback geben ....


    VDR 1.6.2 Installationsanleitung auf einem Debian Sid System mit 2.4.22er Kernel


    Warum verwendest Du SID? Die VDR Software läut gut unter Woody wenn man sie von Hand installiert.


    Zitat

    Original von slapmonster
    1. Einführung


    Dieses Dokument stellt eine Insallationsanleitung dar. Es erklärt wie man den VDR von Hand und ohne Debian Pakete auf einem Debian Sid System installiert. Dabei wird erklärt, wie man das Debian System installiert und das System auf einen 2.4.22er Kernel „aktualisiert“.


    Sorry, aber dafür habe ich kein Verständnis. Wer mit den üblichen Quellen kein Debian sid installieren kann, sollte es besser bleiben lassen. Derjenige wird mit dem System nicht klar kommen.


    Zitat

    Original von slapmonster
    [...]
    Bei der Frage nach der Festplattenpartitionierung ist es sinvoll eine primäre Partition (ca. 5GB) als Systempartition anzulegen und zudem zwei erweiterte Partitionen. Die erste soll dabei eine sogenannte Swappartition werden, auf der das Betriebssystem Hauptspeicher auslagen kann. Diese sollte ca. 1GB in Anspruch nehmen. Auf der zweiten Partition sollen nachher die Videodaten liegen.


    Mit 'erste' meinst Du sicherlich die erste der erweiterten/logische Partitionen. Ferner ist eine Swappartiton von 1 GB beim VDR bei einem Arbeitsspeicher wie angegeben etwas arg reichlich :)


    Zitat


    Bei der Frage nach der Installationsquelle sollte man wenn die Möglichkeit besteht immer http oder ftp wählen,


    Du solltest oben angeben, das man eine gute Internetanbindung braucht (dsl mit Flat)


    Zitat


    Nun wird ein Distributionsupdate ausgeführt, um das System auf das testing Release (Sid) zu bringen. Dazu wird folgender Befehl aufgerufen.


    apt-get upgrade


    Du meinst hier sicherlich dist-upgrade


    Zitat


    Wenn man noch nicht so viel Ahnung vom Kernelbau hat, dann kann man auch die sich im Anhang befindliche .config Datei wählen.


    Wenn man keine Ahnung vom Kernelbau hat, sollte man sich entsprechend informieren. Hier fehlen mir entsprechende weiterführende URL.


    Du hast nicht erklärt, warum Du meinst, das man den Kernel selbst erzeugen soll (ich mach das zwar auch, habe mir aber sagen lassen, das der VDR gut mit dem bf24 zusammen läuft)



    Warum beschreibst Du nicht, wie man ein ordentliches deb-Paket aus den Kernel baut. Wer bis hier geschaft hat, wird das auch noch schaffen.


    Zitat


    Um späteren Problemen beim Kompilieren der Komponenten vorzubeugen ist noch folgendes zu tun. Das libc6-dev Paket, welches mit dem Update auf Sid kommt, installiert neue Kernelheader mit denen der DVB


    Das vermeidet man, wenn man bei Woody bleibt


    Zitat


    Welche Module für die DVB Karte geladen weden müssen, erfährt man in der Datei CARDS, welche sich im Sourcenverzeichnis des DVB Treibers befindet. Bei einer WinTV Nexus-s sind dies die Module dvb-core, dvb-ttpci und stv2099.


    hier hat modconf die richtige Pakete nachgeladen, nachdem ich dvb-ttpci und dvb-core geladen hatte



    Das war sehr hilfreich! Hier lief das noch nicht und ich bin bisher nich dazu gekommen, mir das mal anzuschauen!


    Zitat


    Da die VDR Binaries nachher im Verzeichnis /usr/local/vdr/ liegen sollen, wird zunächt die Variable BINDIR in der Datei /usr/local/src/VDR/Makefile auf diesen Pfad angepasst.


    Warum das?
    Wenn man schon von der unüblichen Verzeichnisstruktur von VDR abweicht, sollte man dies doch linux-like machen, oder?


    also
    /usr/local/bin
    /usr/local/etc oder /etc
    /usr/local/lib/vdr-plugins



    Zitat


    Jetzt kann der VDR kompiliert werden. Dazu wechselt man in das Verzeichnis /usr/local/src/VDR und füht dort folgendes Kommando aus:


    make VFAT=1


    Die genauen Optionen kann man in der Datei INSTALL welche sich im tar Archiv befindet nachlesen. Ein einfaches make ist zudem auch gültig. Sinnvollerweise sollte man hier immer VFAT=1 angeben, da sonst keine spätere Freigabe des /video Verzeichnisses über SAMBA möglich ist.


    hmm, lese bitte noch mal die INSTALL. Wenn ich das richtig gelese habe, braucht man diese Option nur, wenn man den VDR auf eine VFAT Partition installieren will. Das hat aber überhaupt nichts mit Samba zu tun. Samba bildet eine Windows-Share im Netz nach.


    Zitat


    vdr:25:once:/usr/local/vdr/runvdr


    Das halt ich nicht für so glücklich. Zum einen sind die Runlevel bei einem Debian System per default gleich (nicht wie bei Suse, wo obiges besser passen würde), zum anderen ist das Handling einfacher, wenn man eine entsprechendes Startscript unter /etc/init.d anlegt und in rc2.d mit update-rc.d verlinkt.


    Du hast Kommentare gewünscht, verstehe meine Hinweise entsprechend.


    bis dann


    jamur

  • Zitat

    Original von catweazle
    cool, auf sowas hab ich noch gewartet. Nutze zwar sei ein paar Wochen Linvdr aber werde mich irgendwann davon trennen müssen, da ich dem VDR noch einige andere Dienste auferlegen will, wenn er mal fertig ist.


    Dazu ist mir so ein Howto grade recht. Kann nur mit mandrake umgehen, wollte aber, der Stabilität wegen debian für den VDR nehmen.


    THX!
    Cat


    wenn aus Gründen der Stabilität zu Debian wechseln möchtest, kann ich hierzu als Fan von Debian nichts sagen. Nur solltest Du dann nicht unstable nehmen. Woody reicht für vdr und läuft und läuft und...


    jamur

  • Danke für den Tip:-)


    Cu
    Cat

    "Life moves fast. Don't miss a thing."
    ------------------------------------------------------
    Rechner: Celeron 2,666 Ghz; 256 SDRAM, TT rev. 1.6 +Satelco Easywatch ,1x 160GB Samsung Festplatte, 1 x 500 GB WD
    Gehäuse : LaScala03 (Silverstone),Zalman CNPS 7000CU .Asus P4S533-MX; AVBoard 1.0
    CTVDR ( Lenny)

  • Hi jamour,


    ich habe sid genommen, weil ich bei meiner testinstallation den 2.4.22er kernel installiert habe und dann ein update gemacht habe. so hatte ich auf einmal die testing version und ich bin prinzipiell recht zufreiden. was benutzt du denn für einen kernel? ich könnte mein howto ja in der richtung ändern, das ich mir nur die 2.4.22er kernelsourcen zeihe und diese benutze und dann woody benutze dann spare ich mir auch das mit den c headern.
    was meinst du?


    was die verzeichnisstruktur betrifft, da habe ich mich an plato gehlaten. ich habe seine struktur übernommen falls jemand sein und mein howto parallel liest. daher wollte ich die leute nicht zusätzlich verwirren.


    danke allerdings für diene ausführlichen tipps.


    meinst du ich sollte vielleicht das sid update als extra punkt nehmen? den man dann ausführen kann oder nicht???


    thx
    pat

  • Zitat

    Original von slapmonster
    Hi jamour,


    ich habe sid genommen, weil ich bei meiner testinstallation den 2.4.22er kernel installiert habe und dann ein update gemacht habe. so hatte ich auf einmal die testing version und ich bin prinzipiell recht zufreiden.


    hmm, Du verwirrst mich ?(


    Verwendest Du nun testing (=sarge) oder unstable (=sid)?


    Außerdem: man hat nicht auf einmal unstable/sid oder testing/sarge. Da muss man schon mindest drei Sachen machen (config ändern, update und dann dist-upgrade durchführen)


    Zitat


    was benutzt du denn für einen kernel? ich könnte mein howto ja in der richtung ändern, das ich mir nur die 2.4.22er kernelsourcen zeihe und diese benutze und dann woody benutze dann spare ich mir auch das mit den c headern.
    was meinst du?


    auf meinen Woody (stable) Kisten läuft 2.4.18 (vdr, server, router)
    auf meinem Arbeitsrechner läuft 2.4.22 (unter sid/unstable)


    Bei sid sind die Programme sicherlich aktueller, allerdings muss man hier schon mal manuell bei den Upgrades eingreifen, nicht alles läuft immer rund. Und das möchte ich bei meinem VDR, der im Wohnzimmer stehen soll und funktionieren soll, lieber nicht.


    Daher vdr unter woody, die normalen Kernel-Source ziehen, einrichten und konfiguieren und mit

    Code
    make-kpkg kernel_image --revision ...


    ein schönes deb Paket bauen.



    Wie gesagt, wer nicht weiss oder es nicht schafft, sich in den üblichen Quellen entsprechend zu informieren, wie man sein System von stable nach unstable bringt, sollte es lassen. Ich habe es selberst früher nicht glauben wollen, aber debian sid ist nichts für Anfänger! Es kann durchaus passieren, das man bei einem Upgrade manuell ins System eingreife muss, weil es nicht mehr läuft.

    Daher ist das hier einfach nicht der richtige Ort, das zu beschreiben. Hier geht es um den VDR. Und nicht darum, wie ich Debian installieren.


    Es ist nicht notwendig, das man sein System nach sid/unstable upgradet, wenn man den VDR verwenden möchte und die Progamme hierfür selber übersetzt.


    Aber wie gesagt, das ist nur meine Meinung. Entscheiden muss es jeder selber. Soll nur nachher keiner weinen, weil sein System steht und er was für Mutter nicht aufnehmen konnte :D

  • ohhh mann ich habe es total verpeilt,


    also ich meine auf jeden fall sarge also das testing release. und ich habe auch kein dist update demacht sondern nur die pakete von woody mit update geupdatet und so auf den testing stand gebracht.
    was machcht das dist-update eigentlich zusätzlich?


    ich denke ich werde das mit sid dann entfernen und auch nur den 2.4.22er kernel bauen und den rest auf woody lassen.... dann ist auch kein stress mit den c headern....


    danke für den tipp und sorry das ich das verpeilt habe....


    cu
    pat

  • hey jamour,


    habe nochmal einige deiner tipps eingebaut und das howto auf woody mit 2,4,22er kernel geupdatet.


    zu deiner anmerkung mit samba. es ist richtig das das nicht prinzipiel was mit samba zu tun hat. wenn man VFAT=1 weglässt, dann verwendet der VDR ":" in den pfadnamen und damit kommt windoof nicht klar. daher kann man es ruhig mit der option kompilieren. eine einschränkung hat man da nicht.


    und zu der verzeichnisstuktur: du hast gesagt das ich von der standard vdr struktur abweiche. wo ist die standardstruktur denn definiert? kann ich es irgendwo nachlesen? oder meinst du die pfade in den sourchen usw???


    das mit dem debian packet werde ich vielleicht noch machen, allerdings bin ich eher für das selber machen... weiss auch nicht wieso....


    also schaut alle nochmal drüber und sagt was ich davon haltet...



    ****************************************************************


    VDR 1.6.2 Installationsanleitung auf einem Debian Woody System mit 2.4.22er Kernel


    1. Einführung


    Dieses Dokument stellt eine Insallationsanleitung dar. Es erklärt wie man den VDR von Hand und ohne Debian Pakete auf einem Debian Woody System installiert. Dabei wird erklärt, wie man das Debian System installiert und das System auf einen 2.4.22er Kernel „aktualisiert“.
    Es wird dabei folgendes System zugrundegelegt:


    - Intel Pentuim 3 733 MHz
    - APM fähiges Mainboard
    - ATX Gehäuse
    - 256 MB Hauptspeicher
    - 120 GB Festplatte
    - Haupauge Nexus-s Rev.: 2.2 mit Fernbedienung (kein LIRC)


    2. Installation des Basissystems


    Zuerst wird das Debian System installiert. Dazu wird die Debian Woody CD 1, welche unter http://www.debian.org/CD/http-ftp/ heruntergeldaden werden kann, ins CD-Rom Laufwerk gelegt und bei dem Debian Bootprompt „bf24“ eingegeben, um das System mit einem 2.4.18er Kernel zu installieren.
    Bei der Frage nach der Festplattenpartitionierung ist es sinvoll eine primäre Partition (ca. 5GB) als Systempartition anzulegen und zudem zwei erweiterte Partitionen. Die erste soll dabei eine sogenannte Swappartition werden, auf der das Betriebssystem Hauptspeicher auslagen kann. Diese sollte ca. 1GB in Anspruch nehmen. Auf der zweiten Partition sollen nachher die Videodaten liegen. Daher kann für dieses der restliche Fesplattenspeicher genommen werden. Diese Partition sollte nach der Partitionierung als /video eingebunden werden.
    Die restlichen Fragen und Menüs die während der Installation erscheinen sind weitgehend selbsterklärend. Wichtig ist noch, dass man unter dem Menüpunkt „Laden und Konfigurieren der Treibermodule“ alle für das einene System passende Treibermodule lädt. Insbesondere ist hier die Netzwerkkarte wichtig. Sollte für bestimmte Hardware kein Modul zur Verfügung stehen, kann es sein, das dieses bereits fest in den Kernel eingebaut wurde. In diesem Fall hilft nur eine Überprüfung der Funktionalität nach der Installation des Systems. Sind alle Konfigurationsdialoge abgeschlossen startet der Rechner neu durch.
    Danach fragt die Installationsroutine noch einige Einstellungen ab. Ein neuer User wird an dieses Stelle noch nicht angelegt. Den PCMCIA Support kann man getrost deinstallieren. Bei der Frage nach der Installationsquelle sollte man wenn die Möglichkeit besteht immer http oder ftp wählen, da man somit immer die aktuellsten Pakete erhält. Die Restlichen Fragen kann man prinzipiell alle mit „ja“ beantworten. Danach fragt das System nach zusätzlicher Software indem man mit tasksel Installationsbündel auswählen kann. Da es ein minimales Debian System nur für den VDR sein soll, wird hier nichts ausgewählt und daher wird nach tasksel auch nicht dselect ausgeführt.
    3. Zusätzliche Software


    Erscheint der Boot Prompt nach der Installation ist der erste Schritt in Richtung VDR geschafft. Nun installieren wir zusätzliche Software, die die tägliche Arbeit mit dem System leichter machen und die für die Kernelkonfiguration und die VDR Kompilierung nötig sind. Es handelt sich dabei um folgende Pakete:


    mc Midnight Comander, das Vorbild für den Norton Comander
    wget Downloader
    libncurses5-dev make menuconfig
    libjpeg62-dev VDR Kompilierung


    Diese werden mit dem Tool apt-get installiert. Dazu wir folgende Syntax verwendet:


    apt-get install paketname


    Eventuelle Abhängigkeiten der Pakete zu Anderen löst apt-get automatisch auf.


    4. Neuer Kernel und Update auf Woody


    Nun kann das System mit dem 2.4.22er Kernel bestückt werden.
    Dazu Installiert man zuerst die Kernel Sourcen. Da die Sourcen für den 2.4.22er Kernel nicht im aktuellen stable Relesase von Debian (Woody) enthalten sind, muss man diese aus dem testing Release (Sarge) installieren. Dazu ist es notwendig in der Datei sources.conf unter /etc/apt alle stable Einträge durch testing zu ersetzen. Dies kann man recht einfach mit dem Editor vi erledigen. Nach dem Speichern der Änderungen führt man ein apt-get update aus, um die Installationsquellen zu aktualisieren.
    Jetzt können auch die Kernelquellen installiert werden. Das geht ziemlich simpel mit dem Kommando: apt-get install kernel-source-2.4.22. Nun kann man die testing Einträge in der sources.conf wieder in stable ändern und nochmal apt-get update ausführen. Danach müssen die Kernel Sourcen entpackt werden. Dazu wechselt man in der Verzeichnis /usr/src und entpackt dort mit tar xvfj kernelpaket. Danach legt man einen symbolischen Link an. Das geht mit ln –s entpacktesKernelPaket linux. Jetzt kann man ins Verzeichnis /usr/scr/linux wechseln und dort „make menuconfig“ aufrufen um den Kernel zu konfigurieren. Wenn man noch nicht so viel Ahnung vom Kernelbau hat, dann kann man auch die sich im Anhang befindliche .config Datei wählen. Diese Datei wird mit dem menuconfig Tool ausgewählt und so geladen. Danach speichert man die Konfiguration direkt und beendet das menuconfig Progamm.
    Nun kann es an das Kompilieren des Kernels und der Module gehen. Dazu ruft man im /usr/src/linux Verzeichnis folgende Befehle auf:


    make dep
    make clean
    make bzImage
    make modules
    make modules_install


    Ist alles ordentlich durchgelaufen, muss man den Kernel noch in das /boot/ Verzeichnis kopieren und die lilo Konfiguration anpassen. Das geschieht mit:


    cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.22


    In der Datei /etc/lilo.conf legt man einen neuen Image Eintrag an. Dazu kann man sich den schon bestehenden Image Eintrag zum Vorbild nehmen. Zudem wird den Name unserer neunen Image Sektion also default eingetragen, um unseren neune Kernel standardmäßig zu starten. Zum Schluss ruft man noch das Kommando lilo auf, um die lilo Konfiguration gültig werden zu lassen.


    Da bei dem “alten” Kernel noch zusätzliche Module geladen wurden, die der neue Kernel nicht mehr benötigt, befinden sich nun nicht mehr benötigte Einträge in der Datei /etc/modules. Diese Einträge werden nun aus dieser Datei herausgelöscht. Das kann man wieder mit der Editor vi machen. Welche dies sind muss mit einem akribischen Blick auf die Bootmeldungen heraugefunden werden. Dort findet man das u.a. usbkbd, input und keybdev Einträge entfernt werden müssen.


    Damit ist das Debian System eingerichtet und es kann an die Installation des DVB Treibers gehen.


    5. DVB Treiber


    Das Basissystem ist nun soweit eingerichtet, dass die Installation des DVB Treibers stattfinden kann.
    Dazu wechelt man zuetst in das Verzeichnis /usr/local/src.


    cd /usr/local/src


    Dann wird mittels wget das DVB Treiberarchiv geladen.


    wget ftp://ftp.cadsoft.de/vdr/linux-dvb.2003-11-08.tar.bz2


    Zum Zeitpunkt der Erstellung der Anleitung war dies die aktuellste Datei. Es ist daher zu prüfen ob zum Installationszeitpunkt eine aktuellere Version existiert.


    Das Archiv wird nun entpackt und zudem wird ein symbolischer Link auf das entpackte Verzeichnis angelegt.


    tar xvfj linux-dvb.2003-11-08.tar.bz2


    ln –s linux-dvb.2003-11-08 DVB


    Da eine Haupauge Nexus-s DVB Karte mir Fernbedienung die grundlage dieser anleitung bildet und der VDR später mit einem normalen Systemuser und nicht mit root Rechten laufen soll, ist es notwendig die DVB Treiber Quellen zu patchen. Der Patch ermöglicht es die Fernbedienung auch als normaler Benutzer verwenden zu können. Dazu wird zunächst der Patch mittels wget geladen.


    wget http://cvs.berlios.de/cgi-bin/…10_ir-permission-666.diff
    (Dieser Patch ist von Martini und heisst „remote-plugin as normal user“)


    Der Patch wird nun nach linux-dvb.2003-11-08/driver/av7110/av7110_ir.c kopiert und dort mittels


    cat av7110_ir-permission-666.diff | patch –p1


    installiert.


    Jetzt kann der DVB Treiber kompiliert und installiert werden. Dazu wechselt man in das Verzeichnis /usr/local/scr/DVB/driver und führt folgende Kommandos aus:


    make
    ./makedev.napi
    make insmod


    Nach dem letzten Kommando sollte auf dem Fernseher die Convergence Schrift zu sehen sein. Damit ist der DVB Treiber richtig geladen. Um die kompilierten Treibermodule fest zu installieren, wird das Kommando make install ausgeführt. Das kopiert die Treibermodule an den richtigen Ort (/lib/modules/2.4.22/…). Um diese bei jedem Systemstart zu laden, trägt man entweder die Namen der Module in die Datei /etc/modules ein oder erledigt diese Konfigurationsaufgabe über das Programm modconf. Welche Module für die DVB Karte geladen weden müssen, erfährt man in der Datei CARDS, welche sich im Sourcenverzeichnis des DVB Treibers befindet. Bei einer WinTV Nexus-s sind dies die Module dvb-core, dvb-ttpci und stv2099.


    Wenn mann später das Programm VDRAdmin benutzen will, möchte man sicherlich auch Fernseher dort benutzen. Dazu ist es notwendig das GRAB Kommando beim svdrp ausführen zu können. Dies ist allerdings nur möglich, wenn die Devices /dev/video* vorhanden sind. Bei einer Debian installation ist das jedoch nicht der Fall. Daher ist es nötig, diese von Hand anzulegen. Dies geschieht mit:


    cd /dev
    mknod video0 c 81 0
    mknod video1 c 81 1
    mknod video2 c 81 2
    mknod video3 c 81 3


    Nun legen wie noch einen symbolischen Link auf das video0 Device an.


    ln -s video0 video


    Damit wäre die Installation des DVB Treibers abgeschlossen und es kann der VDR Installiert werden.


    6. VDR Installation


    Um den VDR zu installieren, wechelt man zuerst in das Verzeichnis /usr/local/src.


    cd /usr/local/src


    Dann wird mittels wget das VDR Softwarearchiv geladen.


    wget ftp://ftp.cadsoft.de/vdr/vdr-1.2.6.tar.bz2


    Zum Zeitpunkt der Erstellung der Anleitung war dies die aktuellste Datei. Es ist daher zu prüfen ob zum Installationszeitpunkt eine aktuellere Version existiert.


    Das Archiv wird nun entpackt und zudem wird ein symbolischer Link auf das entpackte Verzeichnis angelegt.


    tar xvfj vdr-1.2.6.tar.bz2


    ln –s vdr-1.2.6.tar.bz2 VDR


    Nun kann es an die Kompilierung und Installation des VDR gehen. Da die VDR Binaries nachher im Verzeichnis /usr/local/vdr/ liegen sollen, wird zunächt die Variable BINDIR in der Datei /usr/local/src/VDR/Makefile auf diesen Pfad angepasst. Jetzt kann der VDR kompiliert werden. Dazu wechselt man in das Verzeichnis /usr/local/src/VDR und füht dort folgendes Kommando aus:


    make VFAT=1


    Die genauen Optionen kann man in der Datei INSTALL welche sich im tar Archiv befindet nachlesen. Ein einfaches make ist zudem auch gültig. Sinnvollerweise sollte man hier immer VFAT=1 angeben, da sonst keine spätere Freigabe des /video Verzeichnisses über SAMBA möglich ist.


    Die Kompilierung des VDR ist nun abgeschlossen. Damit die Installation der Software auch richtig funktioniert, müssen noch drei Verzeichnisse angelegt werden. Eins, für die VDR Binaries und die anderen beiden für die VDR Manpages. Das zudem nötige /video Verzeichnis für die VDR Aufnahmen wurde schon während der Basisinstallation eingerichtet. Folgende Kommandos erstellen die benötigten Verzeichnisse:


    mkdir /usr/local/vdr
    mkdir /usr/local/man/man1
    mkdir /usr/local/man/man5


    Um die Software nun zu installieren gibt man einfach „make install“ ein. Das kopiert die Dateien vdr und runvdr in den im Makefile angegebenen BINDIR Pfad.


    Prinzipiell ist die Installation des VDR nun abgeschlossen. Allerdings sind die Vorgaben für die Speicherorte der config Dateien und Plugins nicht schön. Die config Dateien sollen unter /usr/local/vdr/conf und die Plugins unter /usr/local/vdr/plugins liegen. Dazu werden die Verzeichnisse angelegt und die *.conf aus dem /video Verzeichis in das config Verzeichnis verschoben. Das geschieht mit folgenden Kommandos:


    mkdir /usr/local/vdr/conf
    mkdir /usr/local/vdr/plugins
    mv /video/*.conf /usr/local/vdr/conf/


    Der letzte Schritt der Installation besteht in der Bearbeitung des VDR Startskriptes. Dies geschieht mit:


    vi /usr/local/vdr/runvdr


    Hier müssen noch die richtigen Pfade zu allen Verzeichnissen gesetzt werden. Danach kann das Skript aufgerufen werden und somit der VDR gestartet werden. Das skript sollte nach der Bearbeitung ungefähr folgendermaßen aussehen:


    #!/bin/sh


    # runvdr: Loads the DVB driver and runs VDR
    #
    # If VDR exits abnormally, the driver will be reloaded
    # and VDR restarted.
    #
    # Set the environment variable VDRUSR to the user id you
    # want VDR to run with. If VDRUSR is not set, VDR will run
    # as 'root', which is not necessarily advisable.
    #
    # Since this script loads the DVB driver, it must be started
    # as user 'root'.
    #
    # Any command line parameters will be passed on to the
    # actual 'vdr' program.
    #
    # See the main source file 'vdr.c' for copyright information and
    # how to reach the author.
    #
    # $Id: runvdr 1.11 2003/08/26 16:15:41 kls Exp $


    DVBDIR="/lib/modules/2.4.22/misc"
    VDRPRG="/usr/local/vdr/vdr"
    VDRCMD="$VDRPRG -w 60 -t /dev/tty8 –c /usr/local/vdr/conf –L /usr/local/vdr/plugins $*"
    VDRUSR=”root”


    LSMOD="`/sbin/lsmod | grep -w '^dvb' | wc -l`"
    KILL="/usr/bin/killall -q -TERM"


    # Load driver if it hasn't been loaded already:
    if [ $LSMOD -eq 0 ] ; then
    (cd $DVBDIR; make insmod)
    fi


    while (true) do
    su -c "$VDRCMD" $VDRUSR
    if test $? -eq 0 -o $? -eq 2; then exit; fi
    date
    echo "restarting VDR"
    $KILL $VDRPRG
    sleep 10
    (cd $DVBDIR; make rmmod; make insmod)
    date
    done


    Zusätzlich zu den Pfaden zu den einzelnen Dateien, wurde in der runvdr noch der Benutzer mit dem der VDR gestartet wird angegeben. Zur Zeit ist dies noch der Benutzer root. Wie man einen eigenen Systemuser für den VDR einrichtet wird im nächsten Abschnitt beschrieben.


    Damit der VDR beim Einschalten des Rechners automatisch startet, wird noch ein Eintrag in der Datei /etc/inittab vorgenommen. Dieser wird am besten ganz am Ende der Datei mit dem Editor vi eingefügt. Er sollte folgendermaßen aussehen:


    vdr:25:once:/usr/local/vdr/runvdr


    Damit ist die Installation des VDR Basissystems abgeschlossen.
    7. Systemuser


    Nun wird ein Systembenutzer angelegt, unter dem der VDR laufen soll. Den VDR mit root Rechten zu starten wird nicht empfohlen, da es ein zu großes Risiko darstellt. Die Einrichtung des Benutzers geschieht mit den folgenden Kommandos:


    groupadd -g 99 vdrdaem


    useradd -u 99 -g vdrdaem -d /home/vdr -p password vdr


    Das erste Kommando legt eine neue Gruppe (vdrdaem) mit der GID 99 an. Das zweite Kommando legt einen neuen Benutzer (vdr) mit der UID 99 an und weißt diesem die primäre Gruppe vdrdaem zu. Zudem wird das Homeverzeichnis (/home/vdr) gesetzt und das Passwort für den Benutzer vergeben.
    Zur Erklärung: Die User- und Group-ID unterhalb des Wertes 100 sind traditionell für die speziellen User von Systemdiensten vorbehalten.
    Um nun den VDR mit dem vdr Systemuser zu starten, muss man die Zeile


    VDRUSR=”root”


    durch


    VDRUSR=”vdr”


    ersetzen.


    Damit der vdr Systemuser den VDR auch ausführen darf, muss man ihm Rechte auf alle für die Ausführung des VDR notwendigen Dateien erteilen. Dies sind die Dateien in den folgenden Verzeichnissnen:


    chown -R vdr:vdrdaem /video Verzeichnis für die Videodaten
    chown -R vdr:vdrdaem /usr/local/vdr VDR Binariverzeichnis, „config“ Verzeichnis und „plugin“ Verzeichnis
    chown vdr:vdrdaem /dev/dvb/adapter?/* Zugriff auf das DVB Device
    chown vdr:vdrdaem /dev/video? Zugriff auf das Video Device für GRAB (s.o.)
    chown vdr:vdrdaem /dev/input/event? Zugriff auf das Event Device für IR


    Nun müssen noch einige Rechte an bestehenden Dateien verändert werden. Das gescheiht mittels:


    chmod a+rw /dev/tty8 Alle User dürfen Konsole 8 lesen und „scheiben“
    chmod a+rw /dev/dvd Alle User dürfen das DVD Laufwerk lesen und „scheiben“
    chmod a+rw /dev/video? Alle User dürfen das Video Device lesen und „scheiben“


    Jetzt kann der VDR gestartet werden. Am besten startet man den Rechner dafür neu durch. Dies geht am besten mit dem Kommando „init 6“. Ist alles richtig installiert und konfiguriert, sollte der VDR nun selbstständig starten. Falls etwas nicht richtig funktionieren sollte, hilft vielleicht ein Blich in das Eventlog mittels:


    tail –f /var/log/messages


    8. VDR ausschalten


    Die VDR-Software bietet die praktische Möglichkeit den Rechner per Direkteingabe herunterzufahren. Man benötigt lediglich ein kleines Skript, welches diese Aufgabe erledigt und beispielsweise unter dem Namen „vdrshutdown“ im Verzeichnis /usr/local/vdr angelegt wird. Das Skript könnte beispielsweise folgendermaßen aussehen:


    #!/bin/bash
    sudo shutdown –h now


    Dieses Skript wird nun mittels chmod a+x /usr/local/vdr/vdrshutdown ausführbar gemacht.
    Wie man an der zweiten Zeile des Skriptes erkennen kann, steht dem eigentlichen shutdown Kommando der Befehl „sudo“ voran. Sudo ist ein Programm, welches es unpriviligierten Benutzern erlaubt, bestimmte Befehle auszuführen, die i.d.R. nur mit root Rechten ausgeführt werden können.
    Dazu muss allerdings das Programm sudo noch installiert werden. Dies geschieht mittels apt-get install sudo. Nach der Installation des sudo Progamms muss dieses nun so konfiguriert werden, das der Benutzer vdr das shutdown Kommando ausführen darf. Dies erreicht man, indem man folgenden Eintrag mit dem Editor vi in der Datei /etc/sudoers anhängt:


    vdr ALL=(ALL) NOPASSWD: /sbin/shutdown


    Nun muss dem VDR noch mitgelteilt werden, welches Kommando er bei einem Druck auf den Power Button ausführen soll. Dies geschieht indem man ihm bei seinem Aufruf das Shutdown Skript mittels –s übergibt.
    Es muss demnach „-s /usr/local/vdr/vdrshutdown“ in die VDRCMD="… Zeile einbebaut werden, sodass diese dann vollständig lautet:


    VDRCMD="$VDRPRG -w 60 -t /dev/tty8 –c /usr/local/vdr/conf –L /usr/local/vdr/plugins \
    -s /usr/local/vdr/vdrshutdown $*"


    Nun kann der VDR mittels des Power Buttons heruntergefahren werden. Im folgenden Abschnitt wird erklärt wie man die Haupauge Fernbedienung mit dem VDR benutzen kann.

  • Zitat

    Original von slapmonster
    ohhh mann ich habe es total verpeilt,


    Zitat


    also ich meine auf jeden fall sarge also das testing release. und ich habe auch kein dist update demacht sondern nur die pakete von woody mit update geupdatet und so auf den testing stand gebracht.
    was machcht das dist-update eigentlich zusätzlich?


    Du bringst einiges durcheinander ?(


    Um von Woody (stable) nach testing (sarge) zu kommen, muss man upgraden.


    Ferne ist die Syntax
    update
    upgrade
    dist-upgrade


    Daher gibt auch kein dist-update :D Bitte nicht durcheinander bringen.


    Du solltest dich daher mit den Grundlagen von debian vertraut machen, insbesondere wenn Du diese Besonderheiten in eine Howto verarbeitest.


    Zitat


    ich denke ich werde das mit sid dann entfernen und auch nur den 2.4.22er kernel bauen und den rest auf woody lassen.... dann ist auch kein stress mit den c headern....


    danke für den tipp und sorry das ich das verpeilt habe....


    cu
    pat


    hint: wenn Du den orginal-kernel nimmst (und nicht den von Debian) fehlen dort ein paar Patche. Das sollte man sich gut überlegen, ich halten die Debian-Source in diesem Fall für besser geeignet.

  • Zitat

    Original von slapmonster
    hey jamour,


    jamur oder jörg bitte :]


    Zitat


    und zu der verzeichnisstuktur: du hast gesagt das ich von der standard vdr struktur abweiche. wo ist die standardstruktur denn definiert? kann ich es irgendwo nachlesen? oder meinst du die pfade in den sourchen usw???


    Meinst Du die von vdr oder von Linux?
    Für Linux gibt es entsprechende Dokumente (halt mal suchen) und die von VDR sind doch in den Dateien beschrieben.


    Zitat


    das mit dem debian packet werde ich vielleicht noch machen, allerdings bin ich eher für das selber machen... weiss auch nicht wieso....


    Man macht es selber! Nur durch das Paket kann ein Kernel einfacher sauber deinstalliert und/oder weitergegeben werden.


    Zitat


    4. Neuer Kernel und Update auf Woody


    Nun kann das System mit dem 2.4.22er Kernel bestückt werden.
    Dazu Installiert man zuerst die Kernel Sourcen. Da die Sourcen für den 2.4.22er Kernel nicht im aktuellen stable Relesase von Debian (Woody) enthalten sind, muss man diese aus dem testing Release (Sarge) installieren. Dazu ist es notwendig in der Datei sources.conf unter /etc/apt alle stable Einträge durch testing zu ersetzen. Dies kann man recht einfach mit dem Editor vi erledigen. Nach dem Speichern der Änderungen führt man ein apt-get update aus, um die Installationsquellen zu aktualisieren.
    Jetzt können auch die Kernelquellen installiert werden. Das geht ziemlich simpel mit dem Kommando: apt-get install kernel-source-2.4.22. Nun kann man die testing Einträge in der sources.conf wieder in stable ändern und nochmal apt-get update ausführen.


    warum holst Du nicht einfach das deb Paket direkt via http/ftp vom Server. Dein Vorgehen ist reichlich umständlich.


    Den Rest habe ich nur überflogen.

  • oh das mit dem namen tut mir leid.... sorry jörg



    entschuldige meine flachse wortwahl was das update/upgrade usw. betrifft....


    ich meinte allerdings das richtige.... war natürlcih nicht so glücklich das in den howto so zu verwenden....


    aber du hast meine frage nicht beantwortet. wo liegt denn genau das unterschied zwischen dist-upgrade und upgrade ausser das das eine die vorhandenen packete aktualisiert und das andere eigentlich das gleiche machet???


    cu
    pat

  • Moin,


    ich hab mal dein HowTo auf meinem Server veröffentlich. Ich hoffe das geht ok ...


    http://xpix.dieserver.de/content/vdr/b_260_artikel.shtml



    Aber eins muss ich noch loswerden ...


    Zitat

    Original von slapmonster
    entschuldige meine flachse wortwahl was das update/upgrade usw. betrifft....


    Ich denke mal, da sollte sich Jörg eher bei dir entschuldigen, wenn er schon die Weisheit mit dem grossen löffel gefressen hat dann würde mich ein HowTo von Ihm doch mal stark interessieren und natürlich auch die Kritik darauf.


    Ich finde das ist ne gute Arbeit ;) Natürlich kann man eine Menge anders machen, aber es führen immer tausend Wege nach Rom ;)

  • Zitat

    Original von xpix
    Ich denke mal, da sollte sich Jörg eher bei dir entschuldigen, wenn er schon die Weisheit mit dem grossen löffel gefressen hat dann würde mich ein HowTo von Ihm doch mal stark interessieren und natürlich auch die Kritik darauf.


    Warum soll ich mich entschuldigen? Dafür, das ich auf einige Fehler in der Howto hingewiesen habe? Ich habe das sachlich vorgetragen und sehe daher kein Grund für eine Entschuldigung.


    Warum sollte ich eine weitere und damit überflüssige Howto schreiben. Ich mache das, was meiner Meinung nach sinnvoller ist, ich beteilige mich nach meinen Möglichkeiten daran, das bestehen Howtos/Seiten sich weiter entwickeln.


    Ich würde eine Howto nur schreiben, wenn es diesbezügliches noch nicht gibt und ich das entsprechende Wissen auch habe. Fehlerhafte und unfertige Howtos können contraproduktiv sein.


    Und es wird daher doch wohl erlaubt sein, Kritik zu üben, wenn jemand eine Howto darüber schreibt, wie man ein Debian System inkl. zusätzlich Software (vdr) installiert, und hierbei grundsätzliche Fehler macht, die drauf schliessen lassen, das demjenige noch an Grundwissen im Bereich Debian fehlt (hier Paketverwaltung). Das hat nichts mit der guten Absicht zu tun. Und wenn diese Kritik nicht erwünscht ist, sollte man nicht ausdrücklich danach frage - nur frage ich mich, was Du damit zu tun hast. slapmonster hat meine Anmerkungen schon richtig verstanden. Und für diesen Austausch ist dieses Forum wohl da.


    Du solltest über das Geschriebene daher nochmals nachdenken.

  • Nun soweit sehr gut.
    Das mit video ist sehr gut, werd ich bei mir einbauen *g*
    Allerdings fehlen mir hier einige Sachen die ein Anfänger nicht weiß.
    Naja... hat Jörg eigentlich schon alles gesagt.


    Im übrigen ist SWAP mittlerweile nicht mehr wirklich von Nöten.
    Ich hab bei mir keinen Platz mit SWAP verschwendet.


    MfG
    Plato


    - - - - - - - -
    Achja... Nich streiten, Kinder!

    vdr-server (apricot): debian squeeze 2.6.39.4-apricot, vdr (1.7.15/1.7.15) + unicable patch, streamdev-server (0.5.0)
    core i5-2300, 8GB Ram, 9TB HD lvm, ASUS P8H67-M, Digital Devices Cine S2 (v6) + DuoFlex S2 + CI

    Einmal editiert, zuletzt von Plato ()

  • Zitat

    Original von Plato
    Im übrigen ist SWAP mittlerweile nicht mehr wirklich von Nöten.
    Ich hab bei mir keinen Platz mit SWAP verschwendet.


    Stimmt, eine Swap Partition ist inzwischen nicht mehr nötig,
    aber wie ich finde trotzdem empfehlenswert.

  • Zitat

    Original von Plato
    Im übrigen ist SWAP mittlerweile nicht mehr wirklich von Nöten.
    Ich hab bei mir keinen Platz mit SWAP verschwendet.


    Hängt absolut vom System ab. Oder meinst du auf einem 8MB-RaM-System sollte man Swap deaktivieren?
    Selbst bei 256 sollte man noch swap haben.
    Ich bin der Meinung bei einem VDR tun so 300B für Swap nun echt nicht weh, sie können einem aber extremst helfen.

  • Ein 8MB Ram system ist bei der aktuellen Kernelversion gar nicht ohne Swap möglich.
    Ich sagte ja auch nur, daß es nicht nötig ist und ich keinen Platz verschwendet habe.
    Natürlich hängt es immer von den Anforderungen an die Hardware ab,
    aber da ich auf der Suche nach einem 4ten kingston 128 MB Modul bin, und dann mit dem 4ten 512 mb ram drin habe, sollte das wohl reichen.
    Naja, ein wenig OT hier, oder?

    vdr-server (apricot): debian squeeze 2.6.39.4-apricot, vdr (1.7.15/1.7.15) + unicable patch, streamdev-server (0.5.0)
    core i5-2300, 8GB Ram, 9TB HD lvm, ASUS P8H67-M, Digital Devices Cine S2 (v6) + DuoFlex S2 + CI

Jetzt mitmachen!

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