Realtime für Kanotix Kernel 2.6.17
von Anfänger für Anfänger
Will man mit Linux Musik machen oder bearbeiten ,ist der Soundserver Jack die erste Wahl .Dieser benötigt zum korekten Arbeiten aber Echtzeitpriorität .Ein Kernel mit Realtimepreemption muss her .Und so kann mann es machen :
1).Kernelsource bereitstellen (kanotix-source.sh)
2).Kernel patchen (2 Patch´s)
3).Kernel configurieren und Compiliren (make xconfig)
4).Kernel im Bootloader eintragen (Grub)
5).Kernel booten und Realtimemodul ein oder ausschalten
1).Den Kernelsourcecode des Kanotixkernels kann man mit dem Script # kanotix-source.sh # erstellen .Dieses ist im Kernelpaket enthalten .Also Kernel runterladen ,entpacken und in den Orner # /usr/src/ # kopieren
2).Die Patch?s runterladen , und zwar den Patch # patch-2.6.17-
rt5? # von
http://people.redhat.com/mingo/realtime-preempt/∞
und den Patch # rt-lsm-kernel.patch.gz # von
http://sourceforge.net/project/showfiles.php?group_id=106645&package_id=191430∞
Den Patch # rt-lsm-kernel.patch.gz # entpacken und beide (patch-2.6.17-
rt5? ;rt-lsm-kernel.patch)in den Ordner # /usr/src/ # kopieren .Nun das Script # kanotix-source.sh # mit einem Texteditor öffnen ,vorsicht ein linksklick auf die Datei führt das Script direkt aus ,also rechtsklick , öffnen mit z.b. # K-edit # .Am besten das Script gleich unter einem anderen Namen (z.b. kanotix-source-rt.sh )speichern ,denn es soll ein wenig geändert werden .Zunachst ändert man die Versionsnummer um spätere verwechselungen auszuschließen .Dazu sucht mann im Script folgende Zeile :
VER="2.6.17-${NAME}${ARCH}${DEF_CPU}-1"
Die Zahl # -1 # ändert man z.b. in die # -2 # oder was du willst .
nun noch die patch´s in das Script (am Ende) einfügen dazu folgende Zeile suchen
# patch --silent -p1 <../cleanup-default-value-of-dvb_cinergyt2_enable_rc_input_device.patch || exit 37
darunter fügt man folgendes ein :
#
patch --silent -p1 <../patch-2.6.17-
rt5? || exit 38
#
patch --silent -p1 <../rt-lsm-0.8.6-kernel.patch || exit 39
Script speichern und Editor beenden .Um das Script auszuführen muß man mit einem Rechtsklick die Eigenschaften aufrufen und im Register Berechtigung AUSFÜHRBAR ankreuzen .Nun kann mann es mit Drag&Drop in die Konsole ziehen , einfügen wählen und Enter drücken .Das Script wird ausgeführt ,das dauert ein wenig .Wenn keine Fehlermeldung in der Konsole erscheint findet man in /usr/src/ einen neuen Ordner # linux-2.6.17-kanotix-2 # (oder was du wolltest) .Wenn eine Fehlermeldung in der Konsole erscheint ist meistens eine nicht erreichbare Webseite schuld ,in dem Fall die Meldung lesen und den fehlenden Patch über GOOGLE suchen ,downloaden und in den Ordner /usr/src/ kopieren .Dann das Script nochmal ausführen .
3).Dann in der konsole den Pfad zum Ordner eingeben
# cd / #
# cd /usr/src/linux-2.6.17-kanotix-2/ #
und eine Configuration erstellen (hier wird zunächst die alte übernommen )
# make oldconfig #
und die neuen Optionen (durch die Patch´s) abgefragt.
1)High Resolution Timer Suport (N,y) mit # y # antworten
2)High Resolution Timer resolution (nanoseconds) mit # 1000 # antworten
3)Preemptionmode (Complete Preemption (Real-Time)) antworten mit # 4 #
Die restlichen Fragen kann man zunächst mit den vorgegebenen Antworten bestätigen (das ist die großgeschriebene Auswahl in der Klammer hinter der Frage)
Nun qconf in der Konsole aufrufen um noch das Realtime modul einzurichten:
# make xconfig #
in der linken Spalte den Eintrag # Security options # wählen ,in der rechten Spalte sind nun die Securitymodule # Default Linux Capabilities # # Root Plug Support # #BSD Secure Levels # und (neu) # Realtime Capabilities # .Alle vier müssen als MODUL gekenzeichnet sein , das heisst ein PUNKT im Kästchen davor ,kein HÄKCHEN .Die Einstellungen werden mit einem einfachen Mausklick auf den Kasten geändert .
Die Kernelconfiguration ist ein Kapitel für sich ,gute hilfe gibts hier:
http://de.gentoo-wiki.com/Kernel_manuell_kompilieren#Umgang_mit_Modulen∞
oder hier
http://www.linuxforen.de/forums/showthread.php?t=161878&highlight=Software+modem∞
Der Kernel kann nun Compiliert werden ,in der Konsole eingeben :
# make all modules_install #
Der Kernel wird compiliert und die Module installiert .Das kann mehrere Stunden dauern ,je nach Rechner und Configuration des Kernels (Eine gut auf den Rechner abgestimmte .Config kann diese Zeit locker um ca. 80% verkürzen )
Ist alles fertig ,findet man im ordner(# linux-2.6.17-kanotix-2 # (oder was du wolltest)) die Datien # .config und system.map # im Unterordner # /arch/i386/boot # den Kernel # bzimage # ,diese müßen in den Basisordner # /root/ # kopiert werden . Zur beseren übersicht sollte mann die Dateien umbenenen :
# bzimage in vmlinuz-2.6.17-kanotix-2 #
# .config in config-2.6.17-kanotix-2 #
# system.map in system.map-2.6.17-kanotix-2 #
(Der Ordner system.map existiert bereits im Orner /boot/ und muß umbenannt werden .)Nun brauch der neue Kernel nur noch in den Bootloader eingetragen werden .
4).Im Ordner /boot/grub/ öffnet man mit einem Editor die Datei # menu.lst # und sucht folgenden Eintrag (so oder so ähnlich):
title Debian GNU/Linux, kernel 2.6.17-kanotix-1 Default
root (
hd0?,1)
kernel /boot/vmlinuz root=/dev/
hda2? ro ramdisk_size=100000 lang=de apm=power-off nomce nosmp noapic vga=0x317 splash=verbose
initrd /boot/initrd.img
boot
diesen kopieren und darüber einfügen , dann den eigenen Kernelnamen in der Reihe boot einsetzen und den title ändern. Beim nächsten neustart bootet der neue Kernel .
5).Das Realtimemodul kann man wie folgt laden und entladen mit der Konsole :
# rmmod capability # enlädt das Modul capability
# modprobe realtime # lädt das Modul realtime
diese beiden Module schließen sich gegenseitig aus . Man muß immer erst eins der beiden ENTLADEN bevor man das andere LADEN kann . Das Modul Realtime laßt sich mit parametern regeln ,eine kleine Einweisung befindet sich im Patch (kann man lesen mit einem Editor) .
So nu kann man Musik machen Der umgang und die Installation der coolsten Soundprogramme fur Linux wird sehr gut beschrieben bei :
http://kanotix.org/index.php?module=pnWikka&tag=SoundUndMidi∞
P.S.:Ich weiss nich ob das mit dem Kernelpatchen eine so saubere Sache ist ,eigentlich wollte ich nur Mucke machen ,aber ich hab jetzt einen High Resolution Timer ,ein regelbares Realtimemodule und der Kernel läuft sauber .
hermann
are you experience
ContentNL KernelUpdaten?
CategoryWiki