grub - menu.lst

M

maverick7bm

Ich verwende zurzeit Debian Sarge mit einem 2.4er Kernel, weil dieser mir zu
alt schien und ich alsa haben wollte dachte ich mir "backe" ich mir doch einen
neuen Kernel. Da ich noch recht frisch in Linux bin war dies jetzt mein erstes
mal ;) Ich habe mich nach dieser Anleitung gehalten: http://www.gnulinux.de/modules.php?name=News&file=article&sid=294
Hat auch alles soweit geklappt nur muss ich jetzt mein Grub natürlich neu einstellen
nur fehlt mir irgendwie die initrd und er sagt die root Partition konnte auch nicht gemountet
werden. Meine menu.lst sieht momentan so aus:

## ## End Default Options ##

title Debian GNU/Linux, kernel 2.6.12.2
root (hd0,6)
kernel /boot/bzImage-2.6.12 root=/dev/hda7 ro
savedefault
boot

title Debian GNU/Linux, kernel 2.4.27-2-386
root (hd0,6)
kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/hda7 ro
initrd /boot/initrd.img-2.4.27-2-386
savedefault
boot

title Debian GNU/Linux, kernel 2.4.27-2-386 (recovery mode)
root (hd0,6)
kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/hda7 ro single
initrd /boot/initrd.img-2.4.27-2-386
savedefault
boot

### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
title Other operating systems:
root


# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/hda1
title Microsoft Windows XP Home Edition
root (hd0,0)
savedefault
makeactive
chainloader +1

Wisst ihr wie ich eine aktuelle initrd erstelle, weil aus dem Tutorial ging dies nicht heraus.

edit:sehe gerade das Prob ist gar nicht so debian spezifisch wenn nötig bitte verschieben
 
Hallo
Im Grunde genommen bauchst du keine initrd. (Wenn es nicht out of the Box sein soll)
Du musst nur darauf achten, dass du die essentiellen Dinge wie das Filesystem wo dein root ist usw. nicht als Modul, sondern fest in den Kernel einbaust. y statt m
Eine sehr gute Anleitung findest du auch hier für Debian und sogar in deutsch. ;)

Gruß Wolfgang
Edit:
Sorry vergessen: man initrd wenn du das wirklich willst.
 
Zuletzt bearbeitet:
erstmal danke für deine Antwort

Das heißt ich muss den Kernel nochmal löschen und ihn nocheinmal neu kompilieren
oder ? Reicht das wenn ich einfach alle 2.6 Kernel Dateien lösche und nochmal von vorne
anfange oder muss ich den speziell irgendwie wieder entfernen ?
 
Jop, eine initrd ist eigentlich dazu gut, dass die Distributionen einen möglichst generischen Kernel anbieten können.
Im eigentlichen Kernel ist dann nahezu alles als Modul ausgelegt.
So muss jeder nur die Module laden, die er auch wirklich braucht.
Das geht sogar so weit, dass z.B. keine Dateisystemtreiber mehr an Bord sind.
Diese sind dann mit allen andern unbedingt benötigten Modulen in der initrd damit der Kernel booten kann.

Geh in den Ordner und mach einfach "make clean".
 
Geh einfach in den Kernel Ordner, mach make menuconfig, stell die Dateisystemtreiber von Modul auf in Kernel eingebaut um und mach einfach nochmal make && make modules_install und kopier den Kernel an die richtige Stelle... löschen musst du garnichts.
 
ok nur wisst ihr zufällig wie das Dateisystem-Modul für ein ext3 formatiertes Dateisystem
heißt damit ich nicht nacher das falsche ankreuze und alles nochmal von vorne machen
muss ;)
 
Findest du ganz schnell unter Dateisysteme... Kannst du nicht viel falsch ankreuzen.
 
│ Symbol: EXT3_FS [=m] │
│ Prompt: Ext3 journalling file system support │
│ Defined at fs/Kconfig:71 │
│ Location: │
│ -> File systems


<M> Ext3 journalling file system support
 
danke ich habe es gefunden :D

nur geht es trotzdessen auch nicht, ich habe es menuconfig nocheinmal ausgewählt
und wie es Commodore-Freak beschrieben hat ausgeführt. Dann habe ich das bzImage
kopiert und mit dem existieren überschrieben aber es geht trotzdem nicht.
Es kommt diese Meldung:

Kernel panic-not syncing:vfs:unable to mount root fs on unknown-block(0,0)

Außerdem läuft mein Gnome komischerweise jetzt nur noch im abgesicherten Modus, ansonsten startet sich
das X-Window System mit der X-Shell, ka woher das jetzt kommt.
 
also dein x startet nicht weil dein kernel net funzt, darum nur im abgesicherten modus (anderer kernel).

was machst du wenn du den kernel neu komilierst?
1. cd /usr/src/linux
2. make menuconfig
3. einstellungen vornehmen (hoffe du hast da alles richtig)
4. menuconfig verlassen und einstellungen speichern
5. make && make modules_install
6. cp arch/i386/boot/bzImage /boot/vmlinuz-<Kernelversion> && cp arch/i386/boot/System.map /boot/System.map-<Kernelversion>

das dann im menu.list eintragen und neu booten. wenn deine kernel optionen dann richtig sind sollte mandrake richtig starten und dein x (bzw. gome) kommen.

greez style
 
StyleWarZ schrieb:
│ Symbol: EXT3_FS [=m] │
│ Prompt: Ext3 journalling file system support │
│ Defined at fs/Kconfig:71 │
│ Location: │
│ -> File systems


<M> Ext3 journalling file system support

<m> ist doch falsch!! einmal leertaste drücken und esc esc esc, speichern ? ja, make :).
 
das ist egal ob m oder nicht! wenn du m machst wird es nur geladen wenn es verwendet wird. mit * wird es immer geladen. das ist der unterschied. meine /boot is auch ne ext3 und kommt mit der kerneloption als m ganz gut klar.

"m" bedeutet Modul und wird vom Kernel _nicht_ automatisch geladen, er wird also ohne initrd einen Kernel-Panic bekommen, wenn er deiner Anleitung folgt.
Dass das bei dir mit "m" funktioniert, liegt wohl daran, dass du ein Initrd hast, dass dieses Modul läd :).

Wie auch immer: "<m>" ist für diesen Fall völlig falsch.
 
StyleWarZ schrieb:
6. cp arch/i386/boot/bzImage /boot/vmlinuz-<Kernelversion> && cp arch/i386/boot/System.map /boot/System.map-<Kernelversion>

das stimmt schon. hab da aber ne initrd eingebaut ;)
 
Hallo
Ich schrieb ja bereits, dass das Filesystem von root nicht als Modul geladen werden darf, wenn keine initrd erstellt werden soll.
Es muss fest in den Kernel eingebaut werden.
Der oben von mir genannte Link beschreibt darüberhinaus die genaue Vorgehensweise für Debian!
Der Vorteil dabei ist die Erstellung eines Paketes, was sich bei der Installation sogar in die menu.lst einträgt und das Kopieren des Kernel übernimmt.
Überprüfen sollte man es dann aber doch noch einmal.

Kernel panic-not syncing:vfs:unable to mount root fs on unknown-block(0,0)
Das deutet eindeutig auf ein fehlendes Filesystem im Kernelimage hin.

Ich verwende z.B. ext3 für /
$ zcat /proc/config.gz |grep -i "ext3"
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y

Somit brauche ich keine initrd.

Gruß Wolfgang
 
Wenn die Debian Pakete so komfortabel sind werde ich es mal so versuchen. Nur
was mir immer noch komisch vorkommt ist Gnome, ich habe ja an dem 2.4er Kernel
nichts verändert hoffe das Problem legt sich später wieder ;)
 
Hallo
StyleWarZ schrieb:
wenn deine kernel optionen dann richtig sind sollte mandrake richtig starten und dein x (bzw. gome) kommen.

greez style
Du hast wohl übersehen, dass es hier um Debian geht. ;)

@maverick7bm

Wenn du vorher eigene Grafikmodule (ati/Nvidia etc) hattest, dann musst du die für den neuen Kernel natürlich nochmal neu kompilieren und einbinden.

Am besten du kommentierst die erstmal in der /etc/X11/XF86Config-4 (bei Xfree) aus. Wenn der Kernel dann läuft kannst du dich wieder um den Rest kümmern.

Gruß Wolfgang
 
wenn ich soweit kommen würde wäre ich schon glücklich ^^

Ich habe es jetzt genau nach deiner Anleitung gemacht und die Debian-Quellen
genommen. Konfiguriert habe ich mit gconf und da waren das ext3 Filesystem
schon als Modul geladen. Nur kommt wieder die selber Fehlermeldung
Kernel panic - not syncing........

Entweder bin ich blind oder extrem dumm, also ich weiß nicht mehr weiter.
 

Ähnliche Themen

Keine grafische Oberfläche (Debian Installation)

grub-pc Probleme bei upgrade

OpenJDK8 unter Debian7.11/sparc64/kernel 3.16 kompilieren

[gelöst] 2.HDD unter Freebsd partitionieren

X startet nichtmehr

Zurück
Oben