staging.inyokaproject.org

grub2 /etc/default/grub keine Auswirkung auf Vorauswahl des Kernels

Status: Gelöst | Ubuntu-Version: Ubuntu 11.04 (Natty Narwhal)
Antworten |

MartinRuthenberg

Avatar von MartinRuthenberg

Anmeldungsdatum:
26. Dezember 2007

Beiträge: Zähle...

Habe ein Dual-Boot-System mit Ubuntu 10.04 und nun 11.04. Nach dem Upgrade von 10.10. auf 11.04 war der Kernel von 11.04 im Auswahlmenü voreingestellt. Habe dann zunächst mit dem Startupmanager versucht die Auswahl zu verändern. Doch das Programm scheint mir ziemlich buggy zu sein. Deshalb habe ich es gleich wieder deinstalliert. Dann habe ich die /etc/default/grub editiert und anschließend "sudo update-grub" ausgeführt. Ich kann mich auf den Kopf stellen, aber die Vorauswahl bleibt falsch.

Hier die /etc/default/grub:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT="Ubuntu, mit Linux 2.6.32-33-generic (on /dev/sda6)" 
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=" vga=795"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_LINUX_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Der Eintrag unter GRUB_DEFAULT= ist korrekt.

Und hier meine /boot/grub/grub.cfg:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="Ubuntu, mit Linux 2.6.32-33-generic (on /dev/sda6)"
if [ ${prev_saved_entry} ]; then
  set saved_entry=${prev_saved_entry}
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z ${boot_once} ]; then
    saved_entry=${chosen}
    save_env saved_entry
  fi
}

function recordfail {
  set recordfail=1
  if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 0f61bfac-e14e-4a43-936f-bfeaeb781592
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
set locale_dir=($root)/grub/locale
set lang=de
insmod gettext
if [ ${recordfail} = 1 ]; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, mit Linux 2.6.32-33-generic' --class ubuntu --class gnu-linux --class gnu --class os {
	recordfail
	insmod ext2
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
	linux	/vmlinuz-2.6.32-33-generic root=UUID=0f61bfac-e14e-4a43-936f-bfeaeb781592 ro  vga=795  quiet splash
	initrd	/initrd.img-2.6.32-33-generic
}
menuentry 'Ubuntu, mit Linux 2.6.32-33-generic (Wiederherstellungsmodus)' --class ubuntu --class gnu-linux --class gnu --class os {
	recordfail
	insmod ext2
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
	echo	'Linux 2.6.32-33-generic wird geladen …'
	linux	/vmlinuz-2.6.32-33-generic root=UUID=0f61bfac-e14e-4a43-936f-bfeaeb781592 ro single  vga=795
	echo	'Initiale Ramdisk wird geladen …'
	initrd	/initrd.img-2.6.32-33-generic
}
menuentry 'Ubuntu, mit Linux 2.6.32-32-generic' --class ubuntu --class gnu-linux --class gnu --class os {
	recordfail
	insmod ext2
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
	linux	/vmlinuz-2.6.32-32-generic root=UUID=0f61bfac-e14e-4a43-936f-bfeaeb781592 ro  vga=795  quiet splash
	initrd	/initrd.img-2.6.32-32-generic
}
menuentry 'Ubuntu, mit Linux 2.6.32-32-generic (Wiederherstellungsmodus)' --class ubuntu --class gnu-linux --class gnu --class os {
	recordfail
	insmod ext2
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
	echo	'Linux 2.6.32-32-generic wird geladen …'
	linux	/vmlinuz-2.6.32-32-generic root=UUID=0f61bfac-e14e-4a43-936f-bfeaeb781592 ro single  vga=795
	echo	'Initiale Ramdisk wird geladen …'
	initrd	/initrd.img-2.6.32-32-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
	insmod ext2
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
	linux16	/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
	insmod ext2
	set root='(hd0,1)'
	search --no-floppy --fs-uuid --set a65b9ddb-2014-4bf7-84ca-a841780643c7
	linux16	/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Ubuntu, mit Linux 2.6.38-11-generic (on /dev/sda7)" {
	insmod ext2
	set root='(hd0,7)'
	search --no-floppy --fs-uuid --set 32eb1175-b219-498c-8a97-17fce8e3a866
	linux /boot/vmlinuz-2.6.38-11-generic root=UUID=32eb1175-b219-498c-8a97-17fce8e3a866 ro quiet splash vt.handoff=7
	initrd /boot/initrd.img-2.6.38-11-generic
}
menuentry "Ubuntu, mit Linux 2.6.38-11-generic (Wiederherstellungsmodus) (on /dev/sda7)" {
	insmod ext2
	set root='(hd0,7)'
	search --no-floppy --fs-uuid --set 32eb1175-b219-498c-8a97-17fce8e3a866
	linux /boot/vmlinuz-2.6.38-11-generic root=UUID=32eb1175-b219-498c-8a97-17fce8e3a866 ro single
	initrd /boot/initrd.img-2.6.38-11-generic
}
menuentry "Ubuntu, mit Linux 2.6.35-22-generic (on /dev/sda7)" {
	insmod ext2
	set root='(hd0,7)'
	search --no-floppy --fs-uuid --set 32eb1175-b219-498c-8a97-17fce8e3a866
	linux /boot/vmlinuz-2.6.35-22-generic root=UUID=32eb1175-b219-498c-8a97-17fce8e3a866 ro quiet splash vt.handoff=7
	initrd /boot/initrd.img-2.6.35-22-generic
}
menuentry "Ubuntu, mit Linux 2.6.35-22-generic (Wiederherstellungsmodus) (on /dev/sda7)" {
	insmod ext2
	set root='(hd0,7)'
	search --no-floppy --fs-uuid --set 32eb1175-b219-498c-8a97-17fce8e3a866
	linux /boot/vmlinuz-2.6.35-22-generic root=UUID=32eb1175-b219-498c-8a97-17fce8e3a866 ro single
	initrd /boot/initrd.img-2.6.35-22-generic
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# 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.
### END /etc/grub.d/40_custom ###

Freue mich über Tipps.

Martin

Lasall

Ehemalige
Avatar von Lasall

Anmeldungsdatum:
30. März 2010

Beiträge: 7723

Hi Martin,

der Eintrag in der /etc/default/grub muss wirklich exakt mit dem Eintrag in der /boot/grub/grub.cfg im Abschnitt "menuentry 'DAS_HIER_IST_GLEICH' " uebereinstimmen.

Gruss Lasall

syscon-hh

Anmeldungsdatum:
8. Oktober 2005

Beiträge: 10220

Noch präziser:

  • Vorgabe: (GRUB_DEFAULT=)

    • Ubuntu, mit Linux 2.6.32-33-generic (on /dev/sda6)
  • Eintrag: (grub.cfg)

    • Ubuntu, mit Linux 2.6.32-33-generic

Also einfach das Obere anpassen!

MartinRuthenberg

(Themenstarter)
Avatar von MartinRuthenberg

Anmeldungsdatum:
26. Dezember 2007

Beiträge: 215

Danke. Aber es läuft immer noch nicht (sudo update-grub hab ich gemacht). Die /etc/default/grub sieht jetzt so aus:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT="Ubuntu, mit Linux 2.6.32-33-generic" 
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=" vga=795"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_LINUX_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

syscon-hh

Anmeldungsdatum:
8. Oktober 2005

Beiträge: 10220

Schmeiß bitte noch das hier aus der /etc/default/grub raus:

  • GRUB_CMDLINE_LINUX=" vga=795"

Das gehört nach

  • GRUB_GFXMODE=640x480

mit den relevanten Werten aus vbeinfoGRUB 2/Thema (Abschnitt „VBE-Modi-ermitteln“)

Was möglicherweise auch noch ausbremst, ist ein falscher Eintrag in der /boot/grub/grubenv - bitte mal dort den Inhalt prüfen - aber nicht löschen, sondern Terminal einsetzen. Aber man kann sich das im "Grub-Bootmenü" über C und mit dem set-Befehl ansehen, es wird der eingestellte (übernommene) Defaultwert (saved_entry=...) angezeigt.

MartinRuthenberg

(Themenstarter)
Avatar von MartinRuthenberg

Anmeldungsdatum:
26. Dezember 2007

Beiträge: 215

Danke. Das ist ja vielleicht ein Gefrickel. (Ich werde nie verstehen, warum Canocical auf diesen unausgereiften Bootloader umgestiegen ist.) Garnicht so einfach zu entscheiden, welche der Angaben unter vbeinfo die richtige ist. Meine /etc/default/grub sieht jetzt so aus:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT="Ubuntu, mit Linux 2.6.32-33-generic" 
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
#GRUB_CMDLINE_LINUX=

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=1280x1024x16

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_LINUX_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Außerdem habe ich im Boot-Menü mit c und set nachgesehen: Den Eintrag "saved-entry=" oder etwas ähnliches gibt es bei mir nicht.

Nichts für ungut, aber die Sache beginnt, mich gehörig zu nerven, und frage mich, was jetzt am schnellsten zu einer Lösung führt: weiter frickeln, eine Neuinstallation von GRUB2 oder zurückkehren zum alten GRUB?

syscon-hh

Anmeldungsdatum:
8. Oktober 2005

Beiträge: 10220

Was heißt das???

... eine Neuinstallation von GRUB2 oder zurückkehren zum alten GRUB?

War da ggf. noch mal ein Grub-Legacy zwischenzeitlich im Spiel??? Das rührt sicherlich noch vom Experiment mit dem Startupmanager her. Also bitte am Ubuntu-Desktop erst einmal klare Verhältnisse schaffen!! Es darf nur eine Grubvariante geben!!

#GRUB_GFXMODE=1280x1024x16

Da muss vorne noch die Raute raus, so ist die Variable auskommentiert!

MartinRuthenberg

(Themenstarter)
Avatar von MartinRuthenberg

Anmeldungsdatum:
26. Dezember 2007

Beiträge: 215

Verflixt, die Raute hatte ich übersehen. Aber daran lag's auch nicht. Im übrigen habe ich Grub-Legacy niemals benutzt, mich nur etwas unglücklich ausgedrückt. Ich wollte sagen, dass ich mir das "alte" Grub installieren werde, wenn ich mit Grub2 nicht langsam zu Potte komme. Diese Loader hat mir bis jetzt immer nur einen Haufen Ärger beschert, wenn ich ein System neu installiert oder upgegradet habe. Kommt halt davon, wenn sich Entwickler auf äußeren Schnickschnack konzentrieren anstatt auf die inneren Werte. 😉 Habt Ihr noch einen Tipp, wie ich Grub2 vielleicht doch noch dazu bringen könnten, das zu tun, was ich will?

Lasall

Ehemalige
Avatar von Lasall

Anmeldungsdatum:
30. März 2010

Beiträge: 7723

Hi MartinRuthenberg,

poste bitte umfassende Informationen nach GRUB 2/Problembehebung (Abschnitt „Anfrage-zu-einem-Problem-im-Forum“) (BootInfoSkript).

Gruss Lasall

MartinRuthenberg

(Themenstarter)
Avatar von MartinRuthenberg

Anmeldungsdatum:
26. Dezember 2007

Beiträge: 215

Hallo Lasall,

hier die Results.txt

Martin

RESULTS.txt (31.2 KiB)
Download RESULTS.txt

Lasall

Ehemalige
Avatar von Lasall

Anmeldungsdatum:
30. März 2010

Beiträge: 7723

Hi MartinRuthenberg,

boote deinen Narwal und installiere Grub dort in den PBR:

sudo grub-install --force /dev/sda7

Danach boote den Luchs und installiere in den MBR:

sudo grub-install /dev/sda
sudo update-grub

Bei Fehlern, Befehlsein- und Ausgabe plus ein neues Bootinfoskript posten.

Gruss Lasall

bowman

Avatar von bowman

Anmeldungsdatum:
17. Februar 2010

Beiträge: 7506

Du solltest dir darüber im Klaren sein, dass du zwei Ubuntu mit zweit /boot/grub/grub.cfg´s hast, von denen aber nur eine auf die Einstellungen des Bootloaders wirkt. Genau so ist es mit den beiden /etc/default/grub. wenn du also die ganze Zeit an der falsch /etc/default/grub herum geschraubt hast, dann bewirken Änderungen nichts an der der Steuernden leading grub.cfg.

Wenn du Lucid als Grub leading System verwendest, bist du besser bedient als mit Natty. Denn da macht Grub2 öfters Problme.

Deshalb würde ich Lucid booten und aus dem System heraus Grub nach sda installieren bzw in den MBR der ersten Platte in der Bootreihenfolge. Da ist die grub.cfg und die /etc/default/grub von Lucid massgeblich für das Grub-Menü.

Eigentlich sollte der osprober dann auch die Natty-Kernel finden und im Grub-Menü aufführen.

Wenn du ein Kernel-update im Natty bekommen solltest, dann musst du danach Lucid booten und ein sudo update-grub ausführen, damit der neue Natty-Kernel vom osprober in die leading grub.cfg aufgenommen wird. Die Steuerung des Grubmenü läuft dann also über die /etc/default/grub und die /boot/grub/grub.cfg von Lucid.

MartinRuthenberg

(Themenstarter)
Avatar von MartinRuthenberg

Anmeldungsdatum:
26. Dezember 2007

Beiträge: 215

Lasall,

danke, das war's. Jetzt läuft's wieder.

bowman,

im Prinzip, war mir das Klar. Mein Fehler dürfte jedoch gewesen sein, dass ich nach dem Upgrade des zweiten OS auf Natty anschließend unter Lucid kein "sudo update-grub" gemacht habe. Daher Danke für diese Aufklärung.

Martin

Antworten |