|
HowTo /
Knoppix RemasternVor einigen Tagen habe ich mal eine Komplettanleitung für das Remastern zusammengeschrieben, mit dem Die Anleitung faßt Fuß auf den Artikel "Slimming Champion" vom englischen Linux-Magazine Teil 1 Zutaten für den Kochtopf
InitiumIch empfehle, Euere Platten alle ab zu stecken und nur die spezielle Festplatte als erste Platte an zu schließen. Nochmal der Hinweis: NATÜRLICH NUR, WENN DIE PLATTE FÜR DIESE AKTION ALLEINE IM RECHNER HÄNGT !!! Das dauert dann einige Zeit. Wenn fertig, Knoppix rebooten, CD aus'm Laufwerk nehmen und neu von der chmod -R 777 /var/tmp Dann Knoppix neu starten. So kann dann hier in das temp-Verzeichnis wieder geschrieben werden. Operation neues KnoppixJetzt müssen wir ein paar Dinge vorbereiten. Wir machen die Platten erstmal beschreibbar: Dann legen wir zwei neue Verzeichnisse an: mkdir custom mkdir custom/KNOPPIX_CD Jetzt müssen wir die Startdateien und die Verzeichnisstruktur umkopieren. Legt die Knoppix CD ein und gebt folgendes ein: cd /mnt/cdrom tar mcpf - . --exclude ./KNOPPIX/KNOPPIX | (cd /mnt/hda1/custom/KNOPPIX_CD; tar xpf -) Nun bastelt an Euerem Knoppix was das Zeug hält. Debian Pakete können mit einem apt-get -u remove paketname deinstalliert und mit einem apt-get -u install paketname installiert werden. RPM Pakete werden mit einem alien -i rpmpaketname eingespielt. rm -rf /etc/skel Danach wird Euer Homeverzeichnis kopiert: cp -r /home/knoppix /etc/skel Jetzt muss noch das Zugriffsrecht geändert werden: chown -R root:root /etc/skel Als nächstes startet in der Shell den Midnight Commander mit mc Ihr sucht nach folgender Datei: /etc/X11/Xsession.d/45xsession Mit F4 den Edit-Modus aufrufen und die Zeile 128 suchen: rsync -Ha --ignore-existing /etc/skel/{.kde*,Desktop} $HOME/ 2>/dev/null Dort entfernt Ihr das {.kde*,Desktop}, damit die Zeile dann so aussieht: rsync -Ha --ignore-existing /etc/skel/ $HOME/ 2>/dev/null Dann mit F2 abspeichern und über F10 alles schließen. Pack'mers wieder zam! Wenn Ihr Euch ausgiebig verlustiert habt, dann müssen wir das Knoppix wieder entsprechend einpacken. STARTET JETZT VON DER KNOPPIX CD! Macht zuerst beide Partitionen der Platte wieder lesbar und wie oben beschrieben auch beschreibbar. Damit später beim Booten keine Fehler auftauchen, löscht als Root unter mnt/hda2/etc/sysconfig alle Scriptdateien raus. Es dürfen nur die beiden Verzeichnisse network-scripts provider stehen bleiben. Als Root ( su!) gebt Ihr dann in der Shell folgendes ein: mkisofs -R -L /mnt/hda2 | create_compressed_fs - 65536 > /mnt/hda1/custom/KNOPPIX_CD/KNOPPIX/KNOPPIX Das kann eine kleine Weile dauern, je nachdem wie viel PS Ihr unter der Haube habt. Burn baby! Wechselt als Root nach /hda1/custom cd /mnt/hda1/custom und gebt folgendes ein: mkisofs -J -T -v -r -no-emul-boot -boot-load-size 4 -boot-info-table -c boot/isolinux/boot.cat -b boot/isolinux/isolinux.bin -o knoppix_custom.iso KNOPPIX_CD In diesem String unterscheiden sich viele Remastering-Anleitungen. Nachdem ich ein paar Dokumentationen gewälzt habe, bin ich mit obiger Version sicher zum Ziel gekommen. Das geht relativ flott. Nun findet Ihr das Iso-File unter /mnt/hda1/custom Jetzt startet Euer Knoppix- Linux und prüft nach, ob soweit alles funktionsfähig ist. Teil 2 Kernel Update und auf CD einpassen Zuerst müssen wir die aktuellen Kernel-Sourcen downloaden. Dazu als Root in der Konsole folgendes eingeben: apt-get install kernel-sources-2.6.x Für das "x" setzt Ihr natürlich die gewünschte Versionsnummer. Ihr seid Euch nicht sicher, welcher da installiert werden soll? Dann gebt nur apt-get install kernel-sources ein und es werden sämtlich zur Verfügung stehende Versionen angezeigt. Ich gehe in meiner Anleitung vom Kernel 2.6.10 aus. Nun wechselt als root in das Verzeichnis /usr/src Danach entpacken wir das bz2- File mit einem tar xvfj kernel-source-2.6.10.tar.bz2 Jetzt lösen wir das alte Kernel-Quellverzeichnis auf: rm -rf /usr/src/linux Wir befinden uns weiterhin im Verzeichnis /usr/src Hier setzen wir einen neuen Link auf die Kernel-Quellen: ln -s kernel-source-2.6.10 linux Ebenso müssen wir einen weiteren fehlenden Link anlegen: ln -sf /usr/src/linux/include/asm-i386 /usr/include/asm Nun wechseln wir in das Verzeichnis /usr/src/linux und konfigurieren den Kernel mit einem make oldconfig Hierbei werden neu hinzukommende Module abgefragt und die alte Konfiguration übernommen. Hinweis: Da der Kernel so modular wie möglich sein sollte, gebt bitte bei den neuen Modulen, bei denen ein modulares Laden möglich ist, auch als Auswahl das "m" an. In der Regel wird ein Y,M und N abgefragt. Wenn also ein M für Modul möglich ist, dann ist dies zu bevorzugen. Ansonsten übernehmt einfach die voreingestellten Werte. Zudem solltet Ihr auch einmal make menuconfig starten um nachzuprüfen, ob unter Device Drivers -> Block Devices der "Low Performance USB Block Driver" als Modul angewählt ist. Den benötigen wir später für unsere Ramdisk zum Booten. Jetzt können wir den Kernel mit einem make-kpkg kernel_image --revision KernelRebuild.01 übersetzen. Wobei der Zusatz "KernelRebuild.01" frei wählbar ist und für Euch den Überblick über die einzelnen Versionen erleichtern soll. Nun könnt Ihr Euch erstmal zurücklehnen, denn der Kompile dauert seine Zeit. Danach wechselt in das Verzeichnis /usr/src und installiert das dann mit dpkg -i kernel-image-2.6.10_KernelRebuild.01_i386.deb Als nächstes müssen wir dann noch eine neue Ramdisk erstellen. Als Root: mkinitrd -o /boot/initrd.img-2.6.10 2.6.10 In der Datei /etc/lilo.conf muss der Bootloader angepasst werden. Ergänzt nach den einzelnen Bootversionen folgenden Absatz: image=/boot/vmlinuz-2.6.10 label="Linux(2.6-10)" initrd=/boot/initrd.img-2.6.10 append="ramdisk_size=100000 init=/etc/init lang=de apm=power-off nomce" read-only Dann als Root lilo eingeben und Rechner neu starten. Die Maschine sollte nun sauber starten. Wir wollen es winzig! Als folgendes installieren wir das cloop- Module neu. Hierzu muss dieses neu gegen den Kernel 2.6.10 kompiliert werden. Als Root geben wir folgendes in der Konsole ein: apt-get install cloop-src Danach in /usr/src wechseln. Hier dann das frisch heruntergeladene Paket auspacken: tar zxvf cloop.tar.gz Danach wechseln wir weiter in das Kernel-Quellen-Verzeichnis /usr/src/linux .Mit einem
wird das Modul dann übersetzt. Mit einem ls -ltra .. seht ihr das darüber liegende Verzeichnis und könnt den Namen des zusamengebauten cloop-Paket sehen. Gebt dann zum Installieren folgendes ein (ACHTUNG! Euer Kernelmodul kann Durchaus anders heißen!): dpkg -i ../cloop-module-2.6.10_2.01.5-2+KernelRebuild.01_i386.deb Prüft nun nochmal nach, ob unter dem Verzeichnis /lib/modules/2.6.10/kernel/drivers/block das Modul cloop.ko befindet. Falls ja, dann ist soweit alles vorbereitet. Nun sichern wir folgendes in ein Sicherungsverzeichnis der ersten Partition (/mnt/hda1): aus /boot: config-2.6.10 initrd.img-2.6.10 System.map-2.6.10 vmlinuz-2.6.10 aus /etc: lilo.conf Das komplette Verzeichnis: /lib/modules/2.6.10 Das komplette Verzeichnis: /usr/src/kernel-source-2.6.10 Dort löscht Ihr dann wieder alle Ordner, bis auf das include- Verzeichnis und alle Scriptdateien direkt im Hauptverzeichnis der Kernelquellen. Jetzt wird aufgeräumt! Startet von Euerer letzten Knoppix Version, bevor Ihr den Kernel installiert habt. Installiert diese Version einfach wieder mit dem "knoppix-installer" neu. Dann startet Ihr das System neu und wir werden das System einwenig aufräumen. Löscht aus dem /boot- Verzeichnis, dem /lib/modules Verzeichnis alle Kerneldateien und Modulverzeichnisse, die Ihr nicht mehr benötigt. Ich schlage vor, den bereits mitgelieferten 2.4er und den neuen 2.6er Kernel zu behalten. Dann kopiert Ihr Euere Kernel 2.6.10er Sicherung an die entsprechenden Stellen wieder zurück. Die Kernelquellen werden mit einem ln -s /usr/src/kernel-source-2.6.10 linux neu verlinkt. Im /boot Verzeichnis räumen wir auch auf und löschen folgende Dateien mit: rm vmlinuz rm System.map rm initrd.img und legen neu dann folgende an: ln -s vmlinuz-2.6.10 vmlinuz ln -s System.map-2.6.10 System.map ln -s initrd.img-2.6.10 initrd.img Dann muss noch die /etc/lilo.config neu an Euere übrig gebliebenen Kernel angepasst werden. Die sieht dann im Mittelbau so aus: image=/boot/vmlinuz-2.4.27 label="Linux2.4.27" initrd=/boot/initrd.img-2.4.27 append="ramdisk_size=100000 init=/etc/init lang=de apm=power-off nomce" read-only image=/boot/vmlinuz-2.6.10 label="Linux2.6.10" initrd=/boot/initrd.img-2.6.10 append="ramdisk_size=100000 init=/etc/init lang=de apm=power-off nomce" read-only Der Rest bleibt innerhalb dieser Datei dann gleich. Wenn diese gespeichert ist, muss noch als Root in der Konsole der lilo ausgeführt werden.Danach startet Euer System wieder neu um zu testen, ob alles soweit ordentlich gestartet werden kann. Wenn dies dann der Fall ist, werden nun das Bootimage erstellen. Startet dazu den Rechner wieder von einer Knoppix-CD aus. Sichert nun das Verzeichnis /mnt/hda1/custom/KNOPPIX_CD/boot/isolinux und löscht die Datei linux26 . Dann kopiert Ihr die Datei /mnt/hda2/boot/vmlinuz-2.6.10 nach linux26 . Das ist dann Euer neuer Bootkernel. Das Mini-Linux Nun legt Ihr in dem Verzeichnis einen neuen Ornder an, den Ihr einfach nur "26" nennt. Dann packen wir das Boot-Image aus: gunzip minirt26.gz Danach mounten wir diese Datei auf das Verzeichnis 26: mount -o loop minirt26 26 Jetzt können wir den Ordner 26 aufmachen und sehen die geladene Datenstruktur des Boot-Files. In der linuxrc können dann entsprechende Startparameter eingestellt werden. Editiert diese aber bitte nur mit dem Midnight Commander (mcedit) !!! Denn wenn Ihr z.B. den Kwrite verwendet, gehen dabei einige Formatierungen verloren, die diese Datei nicht mehr lesbar machen! Wenn Ihr nun das Verzeichnis /modules anklickt, seht Ihr hier bereits eine Datei cloop.o . Dieses Modul ersetzt Ihr aus Euerem 2.6.10er Moduleverzeichnis mit der frisch übersetzten cloop.ko . Ihr müsst dabei die Endung *.ko immer in *.o umbenennen. Ein Verzeichnis weiter unten ( /scsi ) beinhaltet dann die restlichen Module, die Ihr für den Start benötigt. Auch hier sucht Ihr die neuen Module des 2.6.10er Kernels zusammen. Auch hier müsst Ihr die Endungen von *.ko auf *.o umbenennen. Wenn Ihr damit fertig seid (prüft bitte hier gewissenhaft nach, dass Ihr nichts vergessen habt) verlasst das "26"-Verzeichnis wieder und unmountet dieses mit umount 26 Dann packt Ihr die Datei wieder ein: gzip -9 minirt26 Jetzt löscht das Verzeichnis "26" einfach wieder raus und passt gegebenenfalls die isolinux.cfg soweit an, dass Euer neuer Kernel 2.6.10 als Default-kernel gestartet wird. Alles neu macht der Mai! Zusätzlich kann man Bootscreen auch sehr leicht ändern, um seinen Remaster ein etwas individuelleres Erscheinungsbild zu verpassen. Unter /mnt/hda1/custom/KNOPPIX_CD/boot/isolinux findet Ihr hierzu alles notwendige. In der Datei boot.msg könnt Ihr Euere eigene Boot-Message festlegen. Das ist der Satz, der unten im Bootscreen erscheint. Die Datei logo.16 ist dann das Bild, das hinterlegt wird. Dies muss zur Bearbeitung erstmal in ein lesbares Format gebracht werden. Das geht mit dem Befehl lss16toppm <logo.16 >logo16.ppm Dann könnt Ihr diese Datei im Gimp laden und bearbeiten. Leider speichert der Gimp nicht in das ppm-Format zurück. Also müsst Ihr das fertige Bild als bmp-Datei (hier z.B. logo16.bmp) abspeichern. Diese wandeln wir dann locker mit dem Befehl bmptoppm <logo16.bmp >logo16.ppm in das ppm zurück. Das dann noch schnell mit ppmtolss16 <logo16.ppm >logo.16 in das korrekte Format zurück gewandelt. Dieses Boot-Logo darf maximal nur 16 Farben haben! Wenn Ihr eine Fehlermeldung beim Konvertieren ignoriert, dann wird das Logo auch nur schwarz dargestellt. Also am Besten in einem Grafikprogramm entsprechend auf die 16 Farben abändern. Jetzt seid Ihr soweit, Euere Knoppix- Remaster CD wie bereits beschrieben mit neuen Kernel zu erstellen. VIEL SPASS! Tags |