• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] menu.lst wird angezeigt die es nicht gibt

framp

Moderator
Teammitglied
Duch Anregungen in diesem Forum bin ich dabei bei meinem Desktop ein RAID1 aufzusetzen. Sieht auch schon soweit ganz gut aus. Die Tests in einer VM waren erfolgreicht. Nun bin ich - vorsichtig - dabei mein aktives System umzustellen. Dabei hatte ich gewisse Probleme mit GRUB, die ich aber alle soweit lösen konnte.

Nun möchte ich die menu.lst so ändern, dass ich von meiner Systemkopie auf einem RAID boote. Dazu muss ich die menu.lst ändern - nur leider bekomme ich beim Booten immer ein Menu angezeigt was es auf meinen Platten nicht gibt :???: D.h. ich kann natürlich auch das menu nicht ändern.

Die Ausgabe von fdisk -l
Code:
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xf1c84590

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1      121601   976760001    f  W95 Ext'd (LBA)
/dev/sda5               1           9       72229+  fd  Linux raid autodetect
/dev/sda6              10         271     2104483+  fd  Linux raid autodetect
/dev/sda7             272        2882    20972826   fd  Linux raid autodetect
/dev/sda8            2883        5493    20972826   fd  Linux raid autodetect
/dev/sda9            5494      121599   932621413+  fd  Linux raid autodetect

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000a93a9

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1      121601   976760001    f  W95 Ext'd (LBA)
/dev/sdb5               1           9       72229+  83  Linux
/dev/sdb6              10         271     2104483+  82  Linux swap / Solaris
/dev/sdb7             272        2882    20972826   83  Linux
/dev/sdb8            2883        5493    20972826   83  Linux
/dev/sdb9            5494      121599   932621413+  83  Linux

Disk /dev/md5: 73 MB, 73859072 bytes
2 heads, 4 sectors/track, 18032 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000

    Device Boot      Start         End      Blocks   Id  System

Disk /dev/md6: 2154 MB, 2154889216 bytes
2 heads, 4 sectors/track, 526096 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md6 doesn't contain a valid partition table

Disk /dev/md7: 21.5 GB, 21476081664 bytes
2 heads, 4 sectors/track, 5243184 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md7 doesn't contain a valid partition table

Disk /dev/md8: 21.5 GB, 21476081664 bytes
2 heads, 4 sectors/track, 5243184 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md8 doesn't contain a valid partition table

Disk /dev/md9: 955.0 GB, 955004223488 bytes
2 heads, 4 sectors/track, 233155328 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md9 doesn't contain a valid partition table

find /boot/grub/menu.lst im grub
Code:
grub> find /boot/grub/menu.lst
 (hd1,4)
 (hd2,6)
Beim Aufruf von grub habe ich hd2,6 gebootet (die nicht RAID Platte sdb), an der unter /boot die Disk hd2,4 gemountet ist. Deshalb zeigt grub die menu.lst unter hd2,6 - sie liegt aber real auf hd2,4. D.h. es gibt mur diese 2 menm.lsts. Ihr Inhalt ist defintiv anders als der, der beim Booten angezeigt wird.

cat /boot/grub/device.map
Code:
(hd0)   /dev/disk/by-id/ata-WDC_WD2500JB-00GVC0_WD-WCAL76129579
(hd1)   /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90Z351168
(hd2)   /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90Z426352

hd0 ist eine Platte, die ein OS hat und als NotfallOS dient. Wenn es Probleme mit dem RAID bzw grub gibt kann ich immer von dort booten. Die Platte ist aber inaktiv wie aus dem fdisk zu sehen ist.

Nun frage ich mich wo die menu.lst steht, die mir beim Booten angezeigt wird :???:

Hat jemand eine Idee wo ich die orphaned menu.lst finden kann bzw wie ich sie suchen kann?
 
A

Anonymous

Gast
Scheinbar läd dein Bootloader irgend eine Grubkonfiguration, die du schon lange vergessen hast. Oder es ist ein alter Bootloader noch aktiv.

Beim starten des grub auf die Komandozeile von grub wechseln und dort mit
Code:
find /boot/grub/menu.lst
suchen auf welchen Partitionen er überall eine menu.list findet, irgend eine müsste er finden, die du scheinbar nicht kennst.

Dann in deinem Linux. in die du den Bootloader haben willst, nochmal die device.map neu erstellen lassen in dem du die alte device.map umbenennst und mal im Linux kurz die Grubshell mittels des Befehls "grub" öffnest. Danach einfach wieder verlassen, dabei wird eine device.map neu erstellt, wenn die alte nicht mehr da ist. Dann mal nachschauen ob sich da was geändert hat, eventuell hast du da Änderungen von Hand gemacht die nicht richtig waren.

Danach Grub in den MBR schreiben, dann sollte die alte Konfiguration weg sein.

robi
 
A

Anonymous

Gast
towo schrieb:
Beim starten des grub auf die Komandozeile von grub wechseln und dort mit
Naja, da reicht auch die Eingabe eines beherzten grub, dazu muß man ja nicht neu starten ;)

Ich habe irgendwie im Hinterkopf, von der Kommandozeile im laufenden Linux sucht er nicht in allen Partitionen. wahrscheinlich nur in denen die den selben Filesystemtype haben, wie das aktuelle Rootfilesystem. Biin mir aber nicht sicher, und kann mich auch irren.

robi
 
OP
framp

framp

Moderator
Teammitglied
robi schrieb:
Beim starten des grub auf die Komandozeile von grub wechseln und dort mit
Code:
find /boot/grub/menu.lst
suchen auf welchen Partitionen er überall eine menu.list findet, irgend eine müsste er finden, die du scheinbar nicht kennst.
Genau die Ausgabe habe ich oben gepostet ;-). Und da sehe ich menu.lst Inhalte, die nicht dem Menu beim Boot entsprechen.
Dann in deinem Linux. in die du den Bootloader haben willst, nochmal die device.map neu erstellen lassen in dem du die alte device.map umbenennst und mal im Linux kurz die Grubshell mittels des Befehls "grub" öffnest. Danach einfach wieder verlassen, dabei wird eine device.map neu erstellt, wenn die alte nicht mehr da ist. Dann mal nachschauen ob sich da was geändert hat, eventuell hast du da Änderungen von Hand gemacht die nicht richtig waren.
Jupp, da sind Unterschiede. Ich hatte auch irgendwann man die device.map per vi geändert. Sag mir nicht dass man das nicht machen darf :eek:0:
Code:
obelix:/boot/grub # cat device.map
(fd0)   /dev/fd0
(hd0)   /dev/sda
(hd1)   /dev/sdb
obelix:/boot/grub # cat device.map.old
(hd0)   /dev/disk/by-id/ata-WDC_WD2500JB-00GVC0_WD-WCAL76129579
(hd1)   /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90Z351168
(hd2)   /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90Z426352

Danach Grub in den MBR schreiben, dann sollte die alte Konfiguration weg sein.
Was meinst Du damit?
 

josef-wien

Ultimate Guru
Zuerst auch hier zum grundsätzlichen Verständnis: Die Datei device.map wird ausschließlich im laufenden System als "Übersetzungstabelle" zwischen GRUB- und Linux-Diktion verwendet. Beim Boot-Vorgang spielt diese Datei nicht mit, hier richtet sich GRUB nach der vom BIOS vorgegebenen Festplattenreihenfolge.

Mir sind einige Punkte nicht klar:
framp schrieb:
ind /boot/grub/menu.lst im grub
Code:
grub> find /boot/grub/menu.lst
    (hd1,4)
    (hd2,6)
Beim Aufruf von grub habe ich hd2,6 gebootet (die nicht RAID Platte sdb), an der unter /boot die Disk hd2,4 gemountet ist. Deshalb zeigt grub die menu.lst unter hd2,6 - sie liegt aber real auf hd2,4. D.h. es gibt mur diese 2 menm.lsts.
Da ist zuerst einmal von (hd1,4) und dann zweimal von hd2,4 die Rede. Verrätst Du bitte, welche Partitionen der beiden Platten wofür gedacht sind. Deine Aussage
framp schrieb:
Genau die Ausgabe habe ich oben gepostet
muß ich in Zweifel ziehen, die Ausgabe sieht aus, als ob sie aus dem laufenden System stammt. Wenn Du nur 2 Festplatten hast (die Aussage
framp schrieb:
Die Platte ist aber inaktiv wie aus dem fdisk zu sehen ist.
interpretiere ich so, daß diese Platte nicht angeschlossen ist), kann es beim Systemstart nur (hd0) und (hd1) geben (das geht ja auch aus der neuen device.map hervor). Durch
framp schrieb:
unter /boot die Disk hd2,4 gemountet
kann es durchaus zu einem "Verstecken" anderer Daten gekommen sein. Außerdem ist die Information interessant, von welcher der beiden Platten der PC gestartet wurde.

robi schrieb:
Danach Grub in den MBR schreiben, dann sollte die alte Konfiguration weg sein.
Ich stimme robi zu, daß im MBR der Platte noch eine alte GRUB-Eintragung vorhanden ist, bei der die "dubiose" menu.lst verwendet wird (was im Klartext bedeutet, daß Du GRUB hier noch nicht neu installiert hast).
 
OP
framp

framp

Moderator
Teammitglied
josef-wien schrieb:
Zuerst auch hier zum grundsätzlichen Verständnis: Die Datei device.map wird ausschließlich im laufenden System als "Übersetzungstabelle" zwischen GRUB- und Linux-Diktion verwendet. Beim Boot-Vorgang spielt diese Datei nicht mit, hier richtet sich GRUB nach der vom BIOS vorgegebenen Festplattenreihenfolge.
Das ist 8O
Meine menu.lst Definitionen gehen immer davon aus, dass die Einträge in der device.map zu den Einträgen in der menu.lst passen. Aber trotzdem frage ich mich auf welcher Platte/Partition die menu.lst, die ich beim Boot sehe - liegt.
josef-wien schrieb:
robi schrieb:
Danach Grub in den MBR schreiben, dann sollte die alte Konfiguration weg sein.
Ich stimme robi zu, daß im MBR der Platte noch eine alte GRUB-Eintragung vorhanden ist, bei der die "dubiose" menu.lst verwendet wird (was im Klartext bedeutet, daß Du GRUB hier noch nicht neu installiert hast).
Genau das kam mir merkwürdig vor und deshalb habe ich dem MBR neu erzeugt.
Trotzdem sehe ich immer ein Bootmenu was sich weder auf der ersten noch zweiten Platte beindet und auch per grub nicht exitstiert :???:

Woher kann das Bootmenu kommen, was ich nirgendwo auf den Platten finden kann?
 

josef-wien

Ultimate Guru
framp schrieb:
Aber trotzdem frage ich mich auf welcher Platte/Partition die menu.lst, die ich beim Boot sehe - liegt.
Wenn Du im Boot-Menü Esc und Enter drückst, kommst Du in den Textmodus, hier gibst Du c und dann den find-Befehl ein, dann muß doch diese Frage beantwortet werden. Es gibt keine Hexen in der Datenverarbeitung! Zurück zum Bootmenü kommst Du mit:
Code:
configfile /boot/grub/menu.lst
framp schrieb:
Genau das kam mir merkwürdig vor und deshalb habe ich dem MBR neu erzeugt.
Trotzdem sehe ich immer ein Bootmenu was sich weder auf der ersten noch zweiten Platte beindet und auch per grub nicht exitstiert
Vielleicht solltest Du GRUB direkt installieren (http://www.linux-club.de/viewtopic.php?f=4&t=100589&p=612947#p612947, die richtige Partition für die Zeile root wirst Du ja wohl erkennen), das geht nicht nur im Rettungssystem, sondern (ohne die Zeilen grub und quit) auch wie oben beschrieben.
 
A

Anonymous

Gast
framp schrieb:
Woher kann das Bootmenu kommen, was ich nirgendwo auf den Platten finden kann?

Deine Partitionen 5 sind das zufällig Partitionen für /boot ?
Dann mal /boot umounten und schauen ob dann deine menu.list zu finden ist, die du bootest.

robi
 
OP
framp

framp

Moderator
Teammitglied
josef-wien schrieb:
framp schrieb:
Aber trotzdem frage ich mich auf welcher Platte/Partition die menu.lst, die ich beim Boot sehe - liegt.
Wenn Du im Boot-Menü Esc und Enter drückst, kommst Du in den Textmodus, hier gibst Du c und dann den find-Befehl ein, dann muß doch diese Frage beantwortet werden.
Genau das habe ich gemacht und oben das Ergebnis gepostet. Denn genau so wie D dachte ich damit finde ich alle menu.lst .. nur ist die beim Boot angezeigt nicht dabei :(
josef-wien schrieb:
Vielleicht solltest Du GRUB direkt installieren (http://www.linux-club.de/viewtopic.php?f=4&t=100589&p=612947#p612947, die richtige Partition für die Zeile root wirst Du ja wohl erkennen), das geht nicht nur im Rettungssystem, sondern (ohne die Zeilen grub und quit) auch wie oben beschrieben.
Genau das habe ich gemacht.

Mit grub habe ich die letze Woche gute Bekanntschaft gemacht und laube ich mich mittlerweile ganz gut auzukennen - aber dass es ein grub BootMenu gibt, welches ich auf keiner meiner Platten finde ist mit bislang noch nicht untergekommen.

Irgendwo frage ich mich wo sich die menu.lst physikalisch befinden könnte. Gibt es keinen eleganteren find um alle menu.lsts zu finden? Ich traue dem Ergebnis von
Code:
grub find/boot/grub/menu.lst
 

josef-wien

Ultimate Guru
Dann muß sich die bewußte menu.lst auf jener Partition befinden, die Du bei der GRUB-Installation als root angegeben hast.

Wenn Du sie im laufenden System nicht siehst, ist sie - wie gestern erwähnt - durch einen Einhängepunkt "versteckt", und Du mußt sie gemäß robi's Beitrag "sichtbar" machen.

Auch auf die Gefahr hin, daß Du es ohnehin weißt, werde ich noch einmal grundsätzlich: GRUB kann mit Festplatten und mit Partitionen umgehen (und natürlich auch mit Disketten, USB-Sticks, ...). Für GRUB gibt es keine Beziehungen zwischen Festplatten oder Partitionen. GRUB weiß nichts davon, wie die einzelnen Partitionen im jeweiligen Betriebssystem verwendet werden. Und GRUB weiß nichts von einem RAID-Verbund.
 
OP
framp

framp

Moderator
Teammitglied
josef-wien schrieb:
Dann muß sich die bewußte menu.lst auf jener Partition befinden, die Du bei der GRUB-Installation als root angegeben hast.

Wenn Du sie im laufenden System nicht siehst, ist sie - wie gestern erwähnt - durch einen Einhängepunkt "versteckt", und Du mußt sie gemäß robi's Beitrag "sichtbar" machen.
:thumbs: In der Tat existiert die angezeigte menu.lst in /boot/grub wenn ich /boot unmounte.
Auch auf die Gefahr hin, daß Du es ohnehin weißt, werde ich noch einmal grundsätzlich: GRUB kann mit Festplatten und mit Partitionen umgehen (und natürlich auch mit Disketten, USB-Sticks, ...). Für GRUB gibt es keine Beziehungen zwischen Festplatten oder Partitionen. GRUB weiß nichts davon, wie die einzelnen Partitionen im jeweiligen Betriebssystem verwendet werden. Und GRUB weiß nichts von einem RAID-Verbund.
Nein, das war mir bislang nicht so bewusst. Ist mir jetzt aber klar: Bei der grub Installation hatte ich die aktuelle Disk angegeben und er sieht dann beim Booten in der menu.lst auf der Platte nach. Dass dann beim Booten vom OS auf den /boot eine andere Partition gemapped wird - und die alte menu.lst versteckt - das ist ziemlich irritierend - aber im nachhinein durch Deinen Kommentar erklärbar.

Danke an alle für die Hinweise die zur Lösung geführt haben.
 
Oben