PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HELP: grub-Konfiguration verschwunden



Thovan
05.08.05, 18:06
Hallo,

ich habe mir mit Windows XP ein neues logisches Laufwerk in meiner erweiterten Partition angelegt.
Nach 'nem Neustart präsentierte sich grub nur noch im Bash-Style.

Das Menü war komplett weg.

Also Knoppix gebootet und mal auf die Partition geschaut.
die /boot/grub/grub.conf wird im Konqueror mit einem Schloss angezeigt (Schreibschutz?) und wenn ich Sie öffne ist sie leer.

Wie kommt das?

Was muss ich eintragen um meinen Bootloader wieder zu konfigurieren??

Wie kriege ich Schreibrechte auf das Configfile?

munkmill
05.08.05, 18:24
Hallo,

ich habe mir mit Windows XP ein neues logisches Laufwerk in meiner erweiterten Partition angelegt.
Nach 'nem Neustart präsentierte sich grub nur noch im Bash-Style.

Das Menü war komplett weg.



In der Tat merkwürdig.



Also Knoppix gebootet und mal auf die Partition geschaut.
die /boot/grub/grub.conf wird im Konqueror mit einem Schloss angezeigt (Schreibschutz?) und wenn ich Sie öffne ist sie leer.

Wie kommt das?


Weil Du vielleicht keine Rechte hast, Die Datei zu lesen?

Was muss ich eintragen um meinen Bootloader wieder zu konfigurieren??



Wie kriege ich Schreibrechte auf das Configfile?
[/QUOTE]

Als root anmelden und editieren. Möglicherweise per chmod die Berechtigungen ändern.
Sorry, aber bei der Menge an Postings sollte Dir das doch bekannt sein!?

Jan

Thovan
05.08.05, 19:32
Hallo,
das "wie kommt das" bezog sich darauf, dass die Datei leer war!?

So...
habe mir nunmal eine Beispiel-Config von grub von den gentoo-seiten geholt.
Konsole geöffnet, su-et (zum Glück fiel mir ein, dass es bei Knoppix kein Root-pw gibt... wollt schon fast fragen!! :rolleyes: ) .

Naja, wenn ich nun als SU die grub.conf öffne, ist sie normal.
(Also doch nicht leer -> wohl auch keine Leserechte gehabt als nicht root!)

Warum kommt dann auf einmal grub im bash-Style?

Ergänzung:
laut diesem Thread (http://www.informatikboard.ch/archive/topic/3415-1.html) scheint es einen Zusammenhang zwischen der neuen Partition und dem grub-Problem zu geben. Nur leider wird sich nicht weiter drüber ausgelassen!
Naja, aber das Anlegen der neuen Partition dürfte auf die bestehenden keinen Einfluss gehabt haben, da die alle vor dem Bereich sind in dem die neue liegt und deshalb nicht verschoben/verändert wurden.
Nur die Partitionstabelle dürfte da relevant verändert worden sein.
Hat Windows da was für grub-wichtiges zerstört?

Michael Kofler empfiehlt auf Seite 964 (http://www.kofler.cc/pdf/linux7_kapitel26.pdf) Linux neuzuinstallieren! Es muss doch auch eine andere Möglichkeit geben!

munkmill
05.08.05, 21:52
Da die Konfig als root lesbar ist, teste es doch mal mit einer veränderten Dateiberechtigung. Also chmod 755 /boot/grub/grub.conf beispielsweise.

Das Problem liegt wohl eher nicht an Win, sondern an dem, was Du vorher unter Linux gemacht hast.

Jan

Thovan
05.08.05, 22:09
Da die Konfig als root lesbar ist, teste es doch mal mit einer veränderten Dateiberechtigung. Also chmod 755 /boot/grub/grub.conf beispielsweise.

Das Problem liegt wohl eher nicht an Win, sondern an dem, was Du vorher unter Linux gemacht hast.

Jan

Also an Linux dürfte es nicht liegen - habe nur "normale" Dinge getan: Mails gelesen, beantwortet, aber mehr auch nicht.

Nichts ungewöhnliches.
Könnte es sein, das Windows irgendwo die Partitionstabelle beim Anlegen des logischen Laufwerkes (für Grub) drastisch geändert hat!?


Ich habe mir mal die Einträge aus der /boot/grub/grub.conf abgeschrieben und versucht manuell einzugeben.
Das sah dann in etwa wie folgt aus:

grub> root (hd0,2)
Filesystem type unknown, partition type 0xf

grub> kernel /vm[TABULATOR]
Error 17: Cannot mount selected partition
An der Stelle wo [TABULATOR] steht wollte ich die Auto-Vervollständigen-Funktion nutzen.

Es scheint also, als ob Grub die Partition nicht lesen kann.
Ich habe mir nach etwas googeln mal die /boot/grub/device.map angeschaut, aber sie scheint zu stimmen.

Was kann das denn nur sein!?


Ach ja:
Noch was, wenn ich eine neue device.map anlegen will, meint er dass die Partition nur lesbar wäre, und das auch, wenn ich händisch mit dem Parameter -w mounte.
Habe jetzt mal in grub alle möglichen Partitionen mit root (hd0,x) durchprobiert: Er erkennt bei allen das Dateisystem ausser bei hda2!

Das dürfte dann wohl das Problem sein, nur wie biege ich das wieder hin?

WFlyer
05.08.05, 23:45
Poste mal deine /boot/grub/grub.conf

Unter knoppix mach mal en fdisk -l (als root ) und poste die .

Thovan
06.08.05, 07:33
Poste mal deine /boot/grub/grub.conf

Unter knoppix mach mal en fdisk -l (als root ) und poste die .

Guten Morgen,

hatte gestern nochwas rausgefunden.
In der grub.conf steht root (hd0,2) aber Grub beginnt ja bei 0 mit zählen!
/boot ist bei mir auf hda2.
Das heißt, er meckert wegen File system unknown, da grub auf hda3 zugreift, was meine erweiterte Partition ist und die hat logischerweise kein Filesystem.

Also mach ich root (hd0, 1) - prompt greift grub auch auf /boot zu (Autovervollständigen klappt!), aber ich bekomme eine Kernel -Panic

die Letzten Meldungen davor sind:

Creating root device
Mounting root filesystem
mount: error 6 mounting ext3
mount: error 2 mounting none
Switching to new root
switchroot: mount failed: 22
umount /initrd/dev failed: 2
Kernel panic - not syncing: Attempting to kill init!


Könnt Ihr damit schon was anfangen?
grub.conf und fdisk -l folgen

alterpinguin
06.08.05, 07:56
bei "unknown partition type 0xf" hättest Du gleich nachsehen sollen, das ist eine "W95 Erw. (LBA)" und wie Du richtig weißt ist eine erweiterte Partition nur dazu da um weitere "logische" Partitionen aufzunehmen. Auf Grund der historischen Entwicklung fängt dann die erste Logische Partition bei 5 an. (max. 4 "richtige" Partitionen, ist eine davon eine "erweiterte" beginnen die "logischen" und da zählt Computer nach der 4 bei 5 weiter). Mach mal z.B. ein "fdisk /dev/hda" (wenn es Deine erste Platte ist) und laß Dir die Partitionstabelle anzeigen. Und daß grub bei 0 anfängt zu zählen weißt Du auch schon. Also falls die erste logische Partition die grub boot Einstellungen enthält, muß grub in (hd0,4) nachschauen. 0,1,2,3 = maximale normale Partitionen, von denen eine eine erweiterte sein kann, -- 4,5,6, ... dann die logischen (da gib es auch eine Grenze der max. Anzahl). Weiter wird bestimmt die Angabe der root-Partition und des initrd nicht mehr stimmen, die Einträge mußt Du auch korrigieren. Wenn sonst nichts kaputt (verstellt) ist, sollte es dann gehen.

Thovan
06.08.05, 08:33
So, also hier erstmal

Platte /dev/hda: 160.0 GByte, 160041885696 Byte
255 Köpfe, 63 Sektoren/Spuren, 19457 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes

Gerät Boot Start End Blocks Id System
/dev/hda1 1 1275 10241406 17 Verst. HPFS/NTFS
/dev/hda2 * 1276 1288 104422+ 83 Linux
/dev/hda3 1289 19457 145942492+ f W95 Ext'd (LBA)
/dev/hda5 1289 2563 10241406 b W95 FAT32
/dev/hda6 2564 6629 32660113+ b W95 FAT32
/dev/hda7 6630 7934 10482381 83 Linux
/dev/hda8 7935 9239 10482381 83 Linux
/dev/hda9 9240 9892 5245191 83 Linux
/dev/hda10 9893 10545 5245191 83 Linux
/dev/hda11 10546 11198 5245191 83 Linux
/dev/hda12 11199 11590 3148708+ 82 Linux Swap
/dev/hda13 11591 15414 30716248+ b W95 FAT32


und



# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,2)
# kernel /vmlinuz-version ro root=/dev/hda8
# initrd /initrd-version.img
#boot=/dev/hda3
default=0
timeout=5
splashimage=(hd0,1)/grub/splash.xpm.gz
title Fedora Core (2.6.11-1.27_FC3)
root (hd0,1)
kernel /vmlinuz-2.6.11-1.27_FC3 vga=0x307 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.11-1.27_FC3.img
title Fedora Core 3 (2.6.9-1.667)
root (hd0,1)
kernel /vmlinuz-2.6.9-1.667 vga=0x307 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.9-1.667.img
title Windows XP Prof. (SP2)
rootnoverify (hd0,0)
chainloader +1


Die root (hd0, X) Angaben habe ich schon verändert, aber es kommt trotzdem noch der bash-grub.


Weiter wird bestimmt die Angabe der root-Partition und des initrd nicht mehr stimmen, die Einträge mußt Du auch korrigieren. Wenn sonst nichts kaputt (verstellt) ist, sollte es dann gehen.


Also:
Meine /boot/-Partition ist /dev/hda2, dass entspräche root (hd0, 1).
In meiner ursprünglichen (nachdem das erste mal das Problem auftauchte) grub.conf stand root (hd0,2).
Wie ich rausgefunden/ festgestellt hatte zeigte das auf /dev/hda3, also meine erweiterte Partition.

Was meinst Du mit "die Angabe des initrd wird nicht stimmen"?
So wie ich mir das oben anschaue, haut das IMHO hin.
Boote ich manuell mit diesen Einstellungen, dann kriege ich oben beschriebene Kernel-Panic.

Und welche Frage sich mir stellt, wie kam das ganze?
Was hat Windows (beim Anlegen der Partition) verändert?

Thovan
06.08.05, 12:28
Also booten kann ich jetzt wieder, aber nur händisch vom bash-Grub!
Jetzt ist die Frage, wie teile ich grub mit, dass es von (hd0,1) booten soll?

Ich vermute mal, dass aus irgendeinem Grund die Partitionsdaten so verändert wurden, dass aus hda3 hda2 wurde, für grub also aus (hd0,2) wie es in der grub.conf stand (hd0,1).

Ich versuch mal Grub neuzuinstallieren.

Gibt es sonst noch Möglichkeiten?

Edit:
Grub kann ich nicht installieren!
wenn ich aus Knoppix grub-install /dev/hda2 als SU aufrufe.
Kriege ich von mkdir eine Fehlermeldung, dass die Partition nur zum lesen gemountet sei.
Das stimmt schonmal nicht, da ich ja die grub.conf editieren kann :(

Thovan
06.08.05, 19:25
Ok, nachdem ich mein System erstmal händisch neu booten konnte, habe ich mich an
# grub-install versucht.
Der meckerte (auch mit dem Parameter --no-floppy!) immerwieder rum, dass es beim "probing" von fd0 Fehler gegeben hätte.

Also mit Strg+C abgebrochen.
Beim nächsten Neustart, war dann Grub total tot:
Es wurde nur noch
GRUB angezeigt.

Also mal hier nach "Grub neu installieren" gesucht und in einem der gefundenen Threads wurde auf die Gentoo Linux Documentation -- Konfiguration des Bootloaders (http://www.gentoo.org/doc/de/handbook/handbook-x86.xml?part=1&chap=10#grub-install-auto) verwiesen.
Also habe ich mich mal nach dieser Anleitung versucht:


Knoppix CD rein und davon gebootet
Konsole gestartet
su ausgeführt (Knoppix sollte kein root-Passwort verlangen)
grub gestartet (dauert ein bißchen, da Device-Probing)
Sobald die Grub-Shell erscheint mit
root (hd0,1) angegeben wo meine Bootpartition /boot ist ( hd0 => hda; 1 => 2. Partition; (hd0,1) => /dev/hda2 )
mit setup (hd0,1) angegeben wo der Grub-Bootmanager installiert werden soll (für den MBR der Platte lautet das Kommando setup (hd0))
und mit quit die Grub-Shell verlassen
Knoppix runterfahren und Rechner neustarten lassen


et voila, mein Grub war wieder da und lief prima.
Sogar die Original-Config wurde wieder übernommen (mit der Änderung auf (hd0,1)!).

Ich hoffe jemand mit diesem Problem hilft hier die Lösungsbeschreibung.
Bei Bedarf würde ich das auch mal als HowTo verewigen, wenn ich zeit dafür finde.