GENTOO - VDR Installation ohne Ebuilds

Aus VDR Wiki
(Weitergeleitet von Gentoo VdrInstallation2)
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Anmerkung siehe Diskussion

Allgemeines

Gentoo + Kernel 2.6.18 + cvs DVB-Treiber + cvs Lirc-Treiber + vdr-1.4.4

Distribution: Gentoo
Kernel: 2.6.18-gentoo-r6

Diese Anleitung ist für eine Stage 1 Installation.
Für eine Stage 3 Installation befolgt man die Anweisungen des offiziellen Handbuchs.

Voraussetzung: Gentoo-Image runter geladen und auf CD gebrannt
(ich bevorzuge das Universal Image, welches man hier runterladen kann)
Hinweis: Auf dem PC wird nur Gentoo installiert. Quellen: co-pro.de gentoo.de VDR Portal

Anmerkungen: 1 Zeile = 1 Befehl, wird mit Enter bestätigt
Getestet mit Homebrew IR Empfänger an Com 1 und Hauppauge NEXUS S

Gentoo installieren

Von CD booten. Bei den Boot-Parametern einfach Enter drücken.
Bei Bedarf von zusätzlichen Boot-Parametern, kann man mit den Funktionstasten F2 bis F6 durch verschieden Parameterseiten durch blättern
Danach Zahlencode 10 eintippen (für deutsches Tastaturlayout)

Befehle bis hier:
Enter
10 dann Enter

Nun befindet man sich in der Shell


Festplatte partitionieren

Mit

fdisk /dev/hda

oder

cfdisk

wird die Festplatte am IDE 0 Master partitioniert. Mit einem kurzen Blick auf die vorhanden Partitionen (p drücken), werden diese dann gelöscht. Das löschen der Partitionen geschieht durch drücken von d, der Auswahl der Partition 1 wird diese dann gelöscht. Diese Prozedur wird so lange wiederholt, bis alle Partitionen gelöscht sind.
Jetzt werden die Partitionen erstellt:

Beispiel für ein Partitionsschema:

Partition Größe Mountpunkt
/dev/hda1 64MB boot
/dev/hda2 512MB swap
/dev/hda3 ca.3000MB /
/dev/hda4 Rest /video

Als erstes wird Partition 1 erstellt. Durch drücken von n wird eine neue Partition erstellt. Diese wird als primary angelegt (p drücken, gefolgt von 1). Die Startadresse kann man mit Enter bestätigen. Als Endadresse gibt man +64M ein (wenn man verschiedene Kernels testen will, sollte man die Boot-Partition größer wählen). Die Boot-Partition wird jetzt noch als bootbar markiert. Dies geschieht durch drücken der Taste a. Nun noch Partition 1 auswählen und schon ist die Partition als bootbar markiert. Jetzt erstellt man die restlichen 3 Partitionen. Bei Partition 4 wird die Endadresse mit Enter bestätigt, damit man den übrigen freien Speicher komplett verwenden kann. Nun wird der Partition 2 noch der Systemtyp Swap zu gewiesen. Dies geschieht durch drücken von t, 2 und der Eingabe des Hexcodes 82. Nun wird mit w fdisk beendet und das Partitionsschema geschrieben.

Befehle bis hier:
fdisk /dev/hda
d (Partitionen 1 bis x)
n
Enter
+64M
a
1
n
Enter
+512M (und so weiter, bis alle Partitionen erstellt wurden)
t
2
82
w

Als nächstes muss man den eben erstellten Partitionen ein Dateisystem zu weisen. Ob man jetzt ext2/3, reiserfs, xfs oder jfs verwenden will, sei jedem selbst überlassen.
Hier verwenden wir jetzt xfs. Bei anderen Dateisystemen hilft ein Blick in das offizielle Gentoo-Handbuch. Mit

mkfs.xfs /dev/hda1

wird Partition 1 mit dem xfs Dateisystem formatiert. Das gleiche Dateisystem wird für Partition 3 und 4 verwendet. Mit

mkswap /dev/hda2

wird die Swap Partition erstellt.

Befehle bis hier:
mkfs.xfs /dev/hda1
mkfs.xfs /dev/hda3
mkfs.xfs /dev/hda4
mkswap /dev/hda2

Jetzt müssen die Partitionen in das System eingebunden werden (sprich gemountet werden). Dies geschieht durch den Befehl: mount /dev/hda3 /mnt/gentoo
Jetzt haben wir Partition 3 gemountet. Nun werden auf der Partition 3 zwei Verzeichnisse erstellt.
mkdir /mnt/gentoo/boot und mkdir /mnt/gentoo/video
Als nächstes werden noch die Partionen 1 und 4 gemountet. durch mount /dev/hda1 /mnt/gentoo/boot und mount /dev/hda4 /mnt/gentoo/video
Nun noch die Swap - Partition aktivieren und alle Partitionen sind in das System eingebunden. Dies erreicht man mit swapon /dev/hda2

Befehle bis hier:
mount /dev/hda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mkdir /mnt/gentoo/video
mount /dev/hda1 /mnt/gentoo/boot
mount /dev/hda4 /mnt/gentoo/video
swapon /dev/hda2

Herunterladen eines Stage 1 / Archivs und eines aktuellen Portages

Voraussetzung: funktionierende Verbindung ins Internet
(für Leute mit Router und dhcp / Server müsste das Netzwerk schon funktionieren.
Alle anderen schauen unter Gentoo Netzwerk einrichten nach)

Als erstes wechselt man mit cd /mnt/gentoo das Verzeichnis.
Mit links2 http://www.gentoo.org/main/en/mirrors.xml wird die Seite zum auswählen eines Mirrors zum herunterladen der beiden Archive geöffnet. (Ich bevorzuge den Server der TU Darmstadt.) Für eine Stage 1 Installation findet man das Stage 1 - Archiv unter releases/x86/<Jahr>.<Release>/stages/ Nun wird die Datei stage1-<aktuelles Datum>.tar.bz2 mit drücken der Taste d heruntergeladen. Wenn der Download fertig ist, wird wieder zurückgewechselt zum Startpunkt in dem man mit den linke Richtungstaste drückt. Dort geht man auf das Verzeichnis snapshots und wähle dort den aktuellsten snapshot aus. Nun wir das Portage Archiv heruntergeladen. Wenn dieser Download fertig ist, wird links mit dem Tastenkürzel q beendet.

Befehle bis hier:
cd /mnt/gentoo
links2 http://www.gentoo.org/main/en/mirrors.xml
...Mirror auswählen
...in das Verzeichnis releases/x86/<Jahr>.<Release>/stages/ wechseln
...stage1-<aktuelles Datum>.tar.bz2 anwählen
d
linke Richtungstaste drücken
...in das Verzeichnis snapshot wechseln
...portage-latest.tar.bz2 auswählen
d
q


Beide Archive entpacken

Als erstes muss das stage Archiv entpackt werden. Dies geschieht duch Eingabe von: tar -xvjpf stage1-<aktuelles Datum>.tar.bz2
Wenn der Entpackvorgang fertig ist wird das portage - Archiv entpackt. tar -xvjpf portage-latest.tar.bz2 -C /mnt/gentoo/usr

Befehle bis hier:
tar -xvjpf stage1-<aktuelles Datum>.tar.bz2
tar -xvjpf portage-latest.tar.bz2 -C /mnt/gentoo/usr

Compiler Optionen

Anmerkung: Gentoo ohne X - Server
Mit einem Editor wird nun die Datei make.conf bearbeitet und an das System angepasst.
nano -w /mnt/gentoo/etc/make.conf öffnet die Datei und man kann dann dort Einstellungen treffen. Bei der CHOST Variblen gibt es folgende Einstellungsmöglichkeiten:

Architektur Prozessortyp CHOST
x86 i386 i386-pc-linux-gnu
x86 i486 i486-pc-linux-gnu
x86 i586 i586-pc-linux-gnu
x86 i686 oder höher (inkl. Athlon) i686-pc-linux-gnu
amd64 x86_64-pc-linux-gnu

Bei der CFLAGS - Variablen wird noch die eigene CPU angegben (bei mir march=pentium4). Die restlichen Einstellungen kann man übernehmen. Genauere Infos über die Einstellungen gibt es in der Datei make.conf.example
Nun werden noch 2 Zeilen eingefügt. In die eine Zeile kommt MAKEOPTS="-j2" und in die andere Zeile kommt USE="dvb lirc -gtk -gtk2 -gnome -X -qt -kde -arts -opengl -xmms -xv"
Das setzen dieser USE Variablen hat zur Folge, dass weder der X-Server noch passende Windowmanager installiert werden. (Wenn ihr auf den X-Server und den ein oder anderen Windowmanager nicht verzichten wollt, dann solltet ihr die dritte Partition etwas größer machen.)
Des weiteren werden auch gleich noch zusätzliche Optionen für die Lirc- und Firmware-Installation in die make.conf eingetragen Mit Strg + X wird nano beendet und bei Abfrage, ob man die Änderungen speichern will mit y bestätigen.

Befehle bis hier:
nano -w /mnt/gentoo/etc/make.conf
...Variablen setzen und 2 Zeilen einfügen
MAKEOPTS="-j2"
USE="dvb lirc -gtk -gtk2 -gnome -X -qt -kde -arts -opengl -xmms -xv"
DVB_CARDS="ttpci"
LIRC_DEVICES="serial"
Strg + X
y
Enter


von Stage 1 zu Stage 2

Als erstes die Datei /etc/resolv.conf nach /mnt/gentoo/etc/resolv.conf kopieren. Dies geschieht mit dem Befehl cp -L /etc/resolv.conf /mnt/gentoo/resolv.conf. Nun muss noch mit mount -t proc none /mnt/gentoo/proc und mount -o bind /dev /mnt/gentoo/dev proc und dev mounten.

Befehle bis hier:
cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
mount -t proc none /mnt/gentoo/proc
mount -o bind /dev /mnt/gentoo/dev
Die neue Umgebung betreten

Die Vorarbeiten sind erledigt. Jetzt wird zum ersten mal die neue Umgebung betreten. Mit chroot /mnt/gentoo /bin/bash wird das Verzeichnis /mnt/gentoo als root deklariert. Nun noch env-update und danach source /etc/profile eingeben und mit Enter bestätigen und der Umzug in das neue System ist fertig.

Befehle bis hier:
chroot /mnt/gentoo /bin/bash
env-update
source /etc/profile

von Stage 1 zu Stage 2

Wir wechseln nun in das Verzeichnis /usr/portage mit cd /usr/portage. Dort führen wir den Befehl scripts/bootstrap.sh -f aus. Der Parameter -f bewirkt, dass erst alle benötigten Dateien runtergeladen werden. Sind alle Dateien heruntergeladen wird mit scripts/bootstrap.sh aus dem Stage 1 ein Stage 2. Dieser Vorgang dauert nun etwas.

Befehle bis hier:
emerge --sync
cd /usr/portage
scripts/bootstrap.sh -f
scripts/bootstrap.sh

von Stage 2 zu Stage 3

Nun wird mit dem Befehl emerge -f system die Dateien herruntergeladen, um aus dem Stage 2 ein Stage 3 zu machen. Nach dem runterladen wird mit emerge system der Rest des Systems kompiliert. Dies dauert dann auch etwas.

Befehle bis hier:
emerge -f system
emerge system

Kernel erstellen

Als erstes müssen wir erstmal die Zeitzone einstellen. Für uns aus Deutschland gilt folgender Befehl: ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Jetzt müssen die Kernel - Quellen heruntergeladen werden. Dafür wechselt man in das Verzeichnis /usr/portage/sys-kernel/gentoo-dev-sources. Dort wird dann mit emerge gentoo-dev-sources-2.6.14_r4.ebuild der Kernel 2.6.14-r4 heruntergeladen. Wenn dies fertig ist, wird wegen der Bequemlichkeit noch genkernel mit dem Befehl emerge genkernel heruntergeladen. Jetzt wird noch mit emerge coldplug Coldplug aktiviert. Als nächstes wird das Verzeichnis /lib/firmware erstellt. Dorthin wird dann die Firmware kopiert.

Befehle bis hier:
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
cd /usr/portage/sys-kernel/gentoo-dev-sources
emerge gentoo-dev-sources-2.6.14-r4.ebuild
emerge genkernel
emerge coldplug
mkdir /lib/firmware

Kernel für cvs DVB - Treiber vorbereiten

DVB - Treiber

ganz einfach:

emerge -v linuxtv-dvb-firmware

die firmware für die satkarte ist dann unter /lib/firmware fertig installiert

Kernel Optionen einstellen und kompilieren

Mit

cd /usr/src/linux

zu den Quellen wechseln. Als nächsten genkernel --menuconfig all eingeben und dann den Kernel an sein System anpassen. Folgende Optionen müssen so in den Kernel eingebaut werden.

Code maturity level options -->
  --> Prompt for development and incomplete code / driver fest einkompilieren
      Select only drivers expected to compile cleanly fest einkompilieren
      Select only drivers that don't need compile-time external firmware DEaktivieren

Loadable module support -->
  --> Enable loadable module support aktivieren
      Module unloading aktivieren
      Automatic kernel module loading aktivieren

Bus options -->
  --> Support for hot-pluggable devices aktivieren

Device Drivers -->
  --> Generic Driver Options -->
      --> Hotplug frimware loading support aktivieren (m)

  --> Block Devices
      --> Normal floppy Disk support aktivieren
      --> RAM disk support aktivieren
      --> Initial RAM disk (initrd) support aktivieren

  --> ATA/ATAPI/MFM/RLL support
         Hier den passenden Chipsatztreiber aktivieren, (welchen kann man mit "lspci" herrausfinden)

  --> Character Devices
      --> Serial Drivers -->
          --> 8250/16550 and compatible serial support DEaktivieren oder als Modul
      --> Unix98 PTY support aktivieren
      --> /dev/nvram aktivieren
      --> Enhance Realtime Clock support aktivieren

  --> I2C support -->
      --> I2C support aktivieren (m)
      --> I2C device interface aktivieren (m)
      --> I2C Algorithms -->
          --> I2C bit-banging interfaces aktivieren (m)
          --> I2C PCF 8584 interfaces aktivieren (m)

  --> Multimedia Devices -->
     (sieht wegen ./makelinks der cvs Treiber etwas anderst aus. Inhaltlich bleibts das gleiche)
      --> Video For Linux aktivieren
      --> Digital Video Broadcasting Devices -->
          --> DVB for linux aktivieren
          --> DVB core support aktivieren
          --> STV0299 based DVB-s frontend aktivieren (m)
          --> Alps TDLB7 aktivieren (m)
          --> Alps TDMB7 aktivieren (m)
          --> Grundig 29504-491 aktivieren (m)
          --> Grundig 29504-401 aktivieren (m)
          --> Frontends with external VES1820 demodulator aktivieren (m)
          --> Frontends with VES1893 or VES1993 demodulator aktivieren (m)
          --> AV7110 cards aktivieren (m)
            --> Compile AV7110 firmware into the driver
                  (/lib/firmware/dvb-ttpci-01.fw)
          --> AV7110 OSD support aktivieren
          --> Budget cards aktivieren (m)
          --> Budget cards with onboard CI connector aktivieren
          --> Budget cards with analog video inputs aktivieren
          --> AV7110 card with Budget Patch aktivieren

File Systems
  --> Kernel automounter version 4 support aktivieren
  --> Pseudo filesystems -->
      --> /proc file system support aktivieren
      --> /dev/pts file system for Unix98 PTYs aktivieren
      --> Virtual memory file system support aktivieren

Danach das Konfigurationsprogramm beenden und warten bis der Kernel kompiliert wurde. Jetzt noch ein

make modules_install

und der Kernel ist bereit für das neue System.

Befehle bis hier:
cd /usr/src/linux
genkernel --menuconfig all
die oben genannten Optionen so einstellen
make modules_install

Letzte Anpassungen für den Reboot von der Festplatte

Nun kann man noch die Datei /etc/modules.autoload.d/kernel-2.6 anpassen. Dort stehen alle module, die man beim Systemstart automatisch starten lassen will. Je nach Kartentyp dvb-ttpci und für später auch noch lirc_serial hinzufügen. Nun noch

modules-update

eingeben, damit die Änderungen übernommen werden. Mit nano noch die Datei /etc/conf.d/keymaps bearbeiten. Dort wird erstmal das Tastaturlayout auf de-latin1 eingestellt. Jetzt noch die Datei /etc/conf.d/clock mit nano editieren und dort je nach Zeit der rtc das richtige einstellen. Bei mir wars localtime. Eine interessante Änderung ist, dass man beim Herunterfahren des Rechners rtc nach der Systemzeit stellen kann. Also diese Option mit yes aktivieren.

Befehle bis hier:
nano -w /etc/modules.autoload.d/kernel-2.6
modules-update
nano -w /etc/conf.d/keymaps
de-latin1
speichern
nano -w /etc/conf.d/clock
localtime
Stellen der Systemzeit beim Shutdown mit yes aktivieren
speichern

Partitionstabelle anlegen

Mit

nano -w

die Datei /etc/fstab bearbeiten, so dass sie so aussieht(wenn mein Partitionsschema übernommen wurde):

Partition Mountpunkt Dateisystem Optionen Dump Pass
/dev/hda1 /boot xfs noatime,notail 1 1
/dev/hda2 none swap sw 0 0
/dev/hda3 / xfs noatime,notail 0 0
/dev/hda4 /video xfs noatime,notail 0 0
Befehle bis hier:
nano -w /etc/fstab

Grub Installieren und System für den ersten Bootvorgang vorbereiten

Mit emerge grub, wird grub installiert. Nun kann man mit Hilfe von nano die Datei /boot/grub/grub.conf erstellen und bearbeiten. Danach sollte die Datei in etwa so aussehen:

default 0
timeout 3
splashimage=(hd0,0)/grub/splash.xpm.gz
title=Gentoo
root (hd0,0)
kernel (hd0,0)/kernel-2.6.18-genkernel-gentoo-r6 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3
initrd (hd0,0)/initramfs-2.6.18-genkernel-gentoo-r6

Jetzt muss nur noch Grub im MBR installiert werden. Dies geschieht durch Eingabe von grub-install --no-floppy /dev/hda.

Befehle bis hier:
emerge grub
nano -w /boot/grub/grub.conf
grub-install --no-floppy /dev/hda
quit

Netzwerk einrichten

Gentoo Netzwerkeinstellungen

Zusätzliche Programme und Tools (ohne Erklärung, nur Befehle)

emerge metalog
rc-update add metalog default
emerge vixie-cron
rc-update add vixie-cron default
emerge slocate
emerge xfsprogs
emerge dhcpcd
emerge app-misc/sudo
emerge jpeg
emerge module-init-tools
passwd

Passwort eingeben Passwort wiederholt eingeben

Jetzt erstmal das System neu starten und nicht vergessen die CD zu entfernen.

Wenn alles geklappt hat befinden wir uns in der Shell

VDR installieren

Lirc installieren

Am besten befolgt man folgende Anleitung: Lirc unter Gentoo einrichten
Vorbereitung: Deutscher Gentoo Mirror
nach der Vorbereitung kopiert man das Verzeichnis lirc-cvs samt Inhalt nach /usr/portage/app-misc/

Nun sind alle Vorbereitungen erfüllt

Jetzt wird folgendes eingegeben um lirc zu emergen:

cd /usr/portage/app-misc/lirc-cvs
LIRC_OPTS=”--with-driver=serial --without-soft-carrier --with-transmitter --with-irq=4 --with-port=0x3F8”emerge lirc-0.0.1.ebuild

Jetzt legt man als nächstes das Verzeichnis /dev/lirc an.
Nun bearbeitet man die Datei /etc/conf.d/lircd. Danach sollte die eine Zeile in etwa so aussehen:**

LIRCD_OPTS="-d /dev/lirc/0"

Jetzt wird die Datei /etc/modules.d/lirc mit folgendem Inhalt erstellt:*

alias char-major-61 lirc_serial
alias /dev/lirc* lirc_serial
options lirc_serial irq=4 io=0x3F8

jetzt nur noch

update-modules

Zum Schluss noch

rc-update add lircd default

eingeben und lirc startet bei jedem Systemstart automatisch.

Befehle bis hier:
cd /usr/portage/app-misc/lirc-cvs 
LIRC_OPTS="--with-driver=serial --without-soft-carrier --with-transmitter --with-irq=4 --with-port=0x3F8" emerge lirc-0.0.1.ebuild
mkdir /dev/lirc
nano -w /etc/conf.d/lircd
...Zeile anpassen siehe **
nano -w /etc/modules.d/lirc
...Codeblock* eingeben

VDR runterladen und entpacken

Wegen der Bequemlichkeit erst einmal emerge mc. Dies installiert den Midnight Commander ein Norton Commander Clone. Mit mc wird das Programm gestartet. Nun drückt man die Taste F9 und wählt dann im Menü aus (entweder rechts oder links) ftp… dort gibt man dann ein ftp.tvdr.de Jetzt kann man auf dem ftp Server navigieren, als wäre man auf der eigenen Festplatte. Wir folgen dem Pfad vdr/Developer und laden dort vdr-1.4.4 runter. Dies geschieht mit dem Anwählen der Datei und dann drücken von F5. An der Stelle an der der ftp Server ist, wechseln wir in das Verzeichnis /usr/local/src. Jetzt in das andere Fenster wechseln und das archiv vdr-1.4.4.tar.gz mit einem druck auf die Entertaste öffnen. Das Verzeichnis mit F5 kopieren. Nun wird noch ein symbolischer Link VDR zum Verzeichnis vdr-1.3.37 erstellt

Befehle bis hier:
emerge mc
mc
F9
ftp.tvdr.de
...in das Verzeichnis vdr/Developer wechseln
vdr-1.4.4 anwählen
F5
cd /usr/local/src
vdr-1.4.4 mit Enter "öffnen"
...das enthaltene Verzeichnis mit F5 kopieren
ln -s vdr-1.4.4 VDR


Patches für VDR einspielen.

Je nach belieben kann man jetzt vdr patchen und/oder mit Plugins erweitern.

VDR kompilieren

Vor dem kompilieren noch jpeg und libcap emergen.

Befehle:
emerge jpeg
emerge libcap


Verzeichnis /usr/include/linux/dvb anlegen, dann die Dateien /usr/local/src/dvb-kernel/linux/include/linux(?)/dvb/* nach /usr/include/linux/dvb kopieren. Als nächstes wird das Verzeichnis nach /usr/local/src/VDR gewechselt. Hier muss man die Datei Make.conf (oder Makefile (bin mir nimmer sicher welche Datei)) bearbeiten. In der Datei wird als erstes der Pfad zu den DVB Treibern angepasst. Die DVB Treiber liegen unter /usr/include/linux/dvb. Des Weiteren muss man auch den Pfad der man pages anpassen. Einfach das local zwischen /usr/local/man entfernen. Datei speichern und Editor beenden.
Jetzt sind alle vorarbeiten geleistet.
Als nächstes tippt man ein make REMOTE=LIRC ein. Ist das kompilieren fertig, gibt man make plugins ein und danach noch ein make install. Nun ist vdr fertig installiert.

Befehle bis hier:
mkdir /usr/include/linux/dvb
cp /usr/local/src/dvb-kernel/linux/include/linux(?)/dvb/* /usr/include/linux/dvb
cd /usr/local/src/VDR
nano -w Make.conf Datei anpassen:
Mittlerweile überflüssig
CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual       ändern in: (macht Änderungen in der video.h und osd.h Datei überflüssig)
CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual -D__user= 

ggf. DVB dir anpassen

/usr/include/linux/dvb
/usr/man
Strg + X
y
make REMOTE=LIRC
make plugins
make install

Feintuning (Scripte von co-pro.de)

Jetzt wird noch eine Datei dvb angelegt, welche die DVB Treibe lädt. Mit

nano -w /etc/init.d/dvb

wird die Datei mit Folgendem Inhalt erstellt:*

#!/sbin/runscript

start() {
ebegin "Starting DVB_Modules for Rev. 1.3 and NOVA"
modprobe saa7146
modprobe dvb-ttpci
modprobe ves1x93
sleep 1
modprobe budget_ci
modprobe stv0299

eend $? "Error Problems with DVB-Startscript"
}

stop() {
ebegin "Stopping DVB_Modules..."
rmmod dvb-ttpci
rmmod ves1x93
rmmod saa7146_vv
rmmod video_buf
rmmod budget_ci
rmmod budget-core
rmmod saa7146
rmmod stv0299
rmmod ttpci_eeprom

eend $? "Error Problems with stopscript"
}

Die Datei dann noch speichern und mit

chmod 755

ausführbar gemacht. Die runvdr im Verzeichnis /usr/local/bin wird nun komplett umgeschrieben und sieht danach so aus:**

VDRPRG="./vdr"
VDRCMD="$VDRPRG -w 60 -t /dev/tty8 -L /usr/local/src/VDR/PLUGINS/lib -c /etc/vdr $* -s /home/vdr/vdrshutdown"

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

# Load driver if it hasn't been loaded already:

if [ $LSMOD -eq 0 ] ; then
    /etc/init.d/dvb start
fi

while (true) do
su - $VDRUSR -c "$VDRCMD"
if test $? -eq 0 -o $? -eq 2; then exit; fi
date
echo "restarting VDR"
$KILL $VDRPRG
sleep 10
/etc/init.d/dvb stop
/etc/init.d/dvb zap
sleep 2
/etc/init.d/dvb start
date
done

Jetzt werden noch die *.conf Dateien aus dem Verzeichnis /usr/local/src/VDR nach /video kopiert. Des weiteren wird noch eine Datei vdrshutdown.sh im Verzeichnis /usr/local/bin mit folgendem Inhalt angelegt:***

sudo /sbin/halt -p

Des Weiteren wird im Verzeichnis /etc/init.d noch eine Datei vdr angelegt, die den folgenden Inhalt haben sollte:****

#!/sbin/runscript

start() {
ebegin "Starting vdr"
chmod 777 /dev/vc/2
chmod 777 /dev/vc/8
chown -R vdr:video /dev/cdroms
/usr/sbin/lirc //workaround für die momentanen Probleme mit lirc
/usr/local/src/VDR/runvdr &
eend $? "Error Problems with startscript"
}

stop() {
ebegin "Stopping vdr"
killall runvdr
killall vdr
killall -9 vdr
killall vdradmind.pl
eend $? "Error Problems with stopscript"
}

Diese Datei speichern und mit

chmod 755

ausführbar machen. Jetzt nur noch mit

rc-update add vdr default

eintragen und vdr startet beim nächsten Systemstart automatisch mit.

Befehle bis hier:
nano -w /etc/init.d/dvb
Inhalt *
chmod 755 /etc/init.d/dvb
nano -w /usr/local/bin/runvdr
Inhalt **
cp /usr/local/src/VDR/*.conf /video
nano -w /usr/local/bin/vdrshutdown
Inhalt ***
chmod 755 /usr/local/bin/vdrshutdown
nano -w /etc/init.d/vdr
Inhalt ****
chmod 755 /etc/init.d/vdr
rc-update add vdr default
reboot