[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Grub2-UID Fehler



Am Mittwoch, 15. Juni 2011 schrieb Siegfrid Brandstätter:
> Hallo Debianer,

Hallo Siegfried,

> da ich feststellen mußte das in meiner grub.cfg mit welcher gebootet
> wird mehrere grobe Fehler sind, wollte ich diese ausbessern. Da dies ja
> nicht direkt geht wie früher "in den guten alten Zeiten", habe ich also
> zuvor die /etc/grub.d/40_custom editiert ohne die ersten Zeilen zu
> ändern oder zu löschen. Danach ein "chmod -x /etc/grub.d/30_os-prober"
> mit einem nachfolgendem "update-grub"

Welche Fehler denn? Wenn es denn gebootet hat, war der Zustand vorher 
offenbar besser als nach deinen Änderungen.

Bei 40_custom sind die Zeilen am Anfang sehr wichtig:

merkaba:/etc/grub.d> cat 40_custom
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type 
the
# menu entries you want to add after this comment.  Be careful not to 
change
# the 'exec tail' line above.

Also das exec tail ist ziemlich wichtig. Denn es sorgt dafür, dass alles 
was nach den drei Kommentarzeilen kommt, dann unverändert in der grub.cfg 
landet. D.h. nach den Kommentaren ist nichts mehr mit Shell-Programmieren, 
sondern nur die Konfigurationseinträge, wie sie auch in der grub.cfg dann 
stehen.

> Leider wird erstens nie die grub.cfg so geändert wie man es vorher
> wollte, zweitens erhielt ich von update-grub folgende Meldung:
> 
> 
> # update grub
> Generating grub.cfg,  Found linux image:/boot/vmlinuz-2.6.38-2-686
> Found initrd image:/boot/vmlinuz-2.6.38-2-686
> Found linux image:/boot/vmlinuz-2.6.32-5-686
> Found initrd image:/boot/vmlinuz-2.6.32-5-686
> Found memtest86: /boot/memtest86.bin
> Found memtest86 multiboot image: /boot/memtest86+_multiboot.bin
> error: out of memory
> error: syntax error
> error: Incorect command
> error: syntax error
> error: line no:243
> Syntax error are detected in generated GRUB config file. Ensure that
> there are no errors in /etc/default/grub and /etc/grub.d/* files or
> please file a bug report with /boot/grub/grub.cfg.new file attached.
> done

Also hier müsstest Du wohl am Anfang der Skripte ein set -x einfügen und 
evtl. noch ein echo "Ich bin Skript: $0" >&2 , um den Skriptnamen 
auszugeben.

Allerdings würd ich mir den Aufwand sparen, es sei denn, Du willst 
verstehen, was da wie kaputt ist... Eine etwas riskante Möglichkeit wäre:

- apt-get purge grub-pc
- rm -r /boot/grub
- rm -r /etc/grub.d
- apt-get install grub-pc

und zwar ohne dazwischen das System neuzustarten ;).

Ein Umstieg auf GRUB 0.9x ist natürlich auch möglich, aber GRUB 2 läuft 
nun schon seit langem out of the box. Daher frage ich mich, wie du deinen 
GRUB 2 so kaputt bekommen hast, dass er nicht mehr geht.

Ich würd da nur dran rumfummeln, wenn es einen konkreten Grund für gibt. 
Gerade, wenn ich den Eindruck hab, es ist kompliziert.

Und ja, GRUB 2 wirkt auch auf mich deutlich komplizierter als GRUB 0.9x. 
Zudem ist die Dokumentation zu GRUB 2 auch reichlich rudimentär.

 
> Warum ein "error: out of memory"?
> 
> 
> Auch den Fehler finde ich nirgends:
> error: line no:243
> 
> im ganzen /etc/default/grub and /etc/grub.d/* gibt es nur zwei files
> mit so vielen Zeilen.
> 
> in dem "00_header"
> in den Zeilen steht:
> 242  EOF
> 243  make_timeout "${GRUB_HIDDEN_TIMEOUT_BUTTON}"
> "${GRUB_TIMEOUT_BUTTON}"
> 244 echo else
> 
> 
> und dem 00_header.dpkg-dist
> 
> 241 }
> 242
> 243 if [ "x$GRUB_BUTTON_CMOS_ADDRESS" != "x" ]; then
> 244    cat <<EOF

Das wird Dir so wahrscheinlich niemand beantworten können, wenn er nicht 
den Inhalt von /etc/grub.d vorliegen hat. Und ganz ehrlich: Ich hätte 
nicht die Lust, mir das genau anzuschauen.


> Habe es auch schon mit einem "grub-install" versucht. Aber Grub bleibt
> dabei mir immer die Partitionen durcheinander zu würfeln, es werden die
> UID's von der ersten Partition die in der Liste stehen auch auf die
> andern Partitionen vergeben, nicht auf alle, aber auf viele. So startet
> dann ein Squeeze als Wheezy und kann natürlich nicht damit fertig
> werden.

Hier fängt es jetzt an, vollkommen *wirr* zu werden.

Siegfried, ein gut gemeinter Rat: Wenn Du ein Debian frisch installierst, 
lasse doch einfach die Komponenten in Ruhe, die einwandfrei funktionieren. 
Oder willst Du andeuten, dass der GRUB 2 direkt nach der Installation 
nicht richtig funktionierte? Dann hast Du aber ein sehr spezielles Setup. 
Denn ich habe Squeeze mittlerweile desöfteren installiert oder von Lenny 
auf Squeeze aktualisiert und das funktionierte einfach.

Wenn dir jemand damit helfen soll, wirst Du aber mit mehr Informationen 
antanzen müssen.

> Wie kann man das wirklich beheben. Ich möchte die Fehler ändern und das
> dies dann auch von Grub so übernommen wird.

*Welche* Fehler?

*Was* war denn überhaupt kaputt. Ich hab Deine Mail bis hierher gelesen 
und kapiere es nicht. Bitte bemühe dich um klare und sehr genaue 
Fehlerbeschreibungen.

Du änderst was an der GRUB-Konfiguration, weil Du denkst, da sind Fehler 
drin. Und danach ists kaputt. Nuja, vielleicht waren keine Fehler drin und 
du hast ein funktionierendes GRUB-Setup zerstört?

> Kann man im Notfall Grub2 loswerden und durch den alten Grub ersetzen,
> dort geht es ja ganz locker die grub.menu.list zu editieren. Dies
> musste ich leider unter dem alten Grub auch schon immer per Hand
> machen, den diesen Fehler, die Partitionen zu vertauschen hatte dieser
> ja  auch schon.

Bei mir hat GRUB noch nie Partitionen vertauscht.

Wichtig ist, dass /boot/grub/device.map stimmt.

> Aber möglicherweise weiß ja wer wie ich es einfacher und besser machen
> könnte, muß ja wohl gehen.

GRUB einfach so lassen, wie der Debian Installer ihn auf die Platte 
hievte, und es gut sein lassen?

Und wenn damit dann wirklich ein Fehler ist, was ja sein kann, dann 
erstmal *verstehen*, wo der Fehler liegt, und *dann* handeln.

Ciao,
-- 
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: