Werner Ginzky wrote:
Meine meisten Fragen wurden beantwortet (fehlen tun mir so Kleinigkeiten wie: wie packt man das initrd aus und wie mountet man es als loop?)
$> gunzip -c /boot/initrd > /tmp/initrd $> mount -o loop /tmp/initrd /mnt $> ll /mnt/ total 20 drwxr-xr-x 8 root root 1024 Jul 25 14:06 . drwxr-xr-x 23 root root 4096 Nov 18 08:30 .. drwxr-xr-x 2 root root 1024 Jul 25 14:06 bin drwxr-xr-x 6 root root 9216 Jul 25 14:06 dev drwxr-xr-x 2 root root 1024 Jul 25 14:06 etc drwxr-xr-x 3 root root 1024 Jul 25 14:06 lib -rwxr-xr-x 1 root root 561 Jul 25 14:06 linuxrc drwxr-xr-x 2 root root 1024 Jul 25 14:06 mnt drwxr-xr-x 2 root root 1024 Jul 25 14:06 proc $> umount /mnt $> rm /tmp/initrd
Trotz Deiner Beschreibung bleiben für mich aber noch einige Dinge bezüglich dem SUSE-Vorgehen offen.
Warum heißt der installierte Kernel nicht wie die Quellen oder, warum wird im Handbuch nicht auf die Problematik hingewiesen, so daß man den Fehler umgehen kann?
Um ehrlich zu sein, ich verstehe Deine Problematik immer noch nicht ;-) Wie der Kernel heisst im Verzeichnis /boot spielt schlicht keine Rolle, Du kannst das Image auch /boot/I_like_debian-2.4.20-4GB-athlon nennen. Ueblicher- weise wird es eben /boot/vmlinuz-X genannt, wobei das X eben "uname -r" entspricht. Es sorgt dafuer, dass man ver- schiedene Kernel ohne Probleme parallel installieren kann. Was wirklich wichtig ist, ist das "uname -r" bzw. die Variable UTS_RELEASE in <source>/include/linux/version.h. Es ist insbesondere wichtig, dass version.h stimmt, wenn man externe Module (wie z.B. NVIDIA-Treiber) compilieren moechte. Sonst passen die Module dann nicht zum Kernel. Frueher (wie auch im Howto nachzulesen ist) bzw. heute auch noch beim Vanilla-Kernel musste man schlicht das Haupt- Makefile anpassen, um eine entsprechendes UTS_RELEASE zu bekommen - beim aktuellen SuSE-Kernel kann man das am Ende der Konfiguration (z.B. make xconfig) bei einem Punkt spe- zifizieren; ein Anpassen des Makefiles ist deswegen nicht mehr erforderlich. Ich werde das demnaechst mal ins Howto aufnehmen, mir fehlt momentan nur etwas die Zeit *seufz*... Die Quellen bei SuSE liegen normalerweise unter /usr/src/linux-2.4.X.SuSE, und /usr/src/linux ist ein Link auf dieses Verzeichnis. Das sind die Kernelquellen des SuSE Kernels 2.4.X. Das Verzeichnis kann auch /usr/src/SuSE-2.4.X heissen, es spielt schlicht keine Rolle. Es muss nicht ein- mal unter /usr/src liegen. Aus den Quellen wird dann je nach Konfiguration eben ein SuSE-Default-Kernel, ein SuSE-Athlon- Kernel, ein SuSE SMP-Kernel usw. All diese Kernel werden aus den gleichen Quellen gebaut.
Warum läßt sich beim SLD nicht aus den Quellen und der laufenden .config - Datei ein neuer Kernel bauen, ohne das man Nachfragen zu Konfigurationseinstellungen erhält.
Wenn Du die Quellen des laufenden Kernels installierst (und es muessen wirklich genau die passenden sein incl. evtl. Updates o.ae. per YOU), dann darf man bei einem "make cloneconfig" im Verzeichnis mit den Kernelquellen nichts gefragt werden. Ansonsten stimmt etwas nicht. Wenn man zu einer anderen Version wechselt, dann ist es logisch, dass man etwas gefragt wird, weil eben andere oder neuere Features dazu gekommen sind. Gruesse, Thomson