Aktualisierung des Grub2-Menüs

Mr. Brooks

Lt. Commander
Registriert
Aug. 2011
Beiträge
1.441
Hallo,

ich hab hier auf meiner SSD 2 LInux, ich will aber das standardmäßig ausgewählte nicht booten sondern das zweite. Genauso sollen alle anderen OS des Rechners ins Menü aufgenommen werden (zum Zeitpunkt der Installation war nur diese eine SSD angeschlossen, daher nur die beiden Systeme im Menü). Wenn ich nun vom richtigen Linux aus

Code:
sudo update-grub

ausführe müsste er doch eigentlich das System nach anderen OS durchsuchen und das Grub-Menü anpassen. Normal war es immer so, dass das Linux von dem man aus grub-update ausgeführt hat, als erstes in der Bootreihenfolge stand. Hier ändert sich aber gar nichts. Es werden alle meine OS angezeigt, aber das Menü nicht geändert.

Ich hab auch versucht die /etc/default/grub zu ändern indem ich
Code:
GRUB_DEFAULT=0

in

Code:
GRUB_DEFAULT=5

geändert habe. Danach wieder sudo update-grub ausgeführt. Ich dachte da bleibt zwar das Menü wie vorher, es wird aber das richtige Linux als Standard ausgewählt. Wieder passiert nichts. Was mach ich hier falsch?

Mr. Brooks
 
Welches Linux ist es denn?
Welche anderen Linuxe sind installiert?

Bitte zeige doch mal die Ausgabe von sudo update-grub und auch von sudo fdisk -l.
 
Ich hab hier einiges drauf, da ich etwas experimentiere. Aktuell hab ich ein Xubuntu, die anderen siehst du hier:
Code:
sudo update-grub
[sudo] Passwort für ich: 
Grub-Konfigurationsdatei wird generiert …
Warnung: Werte ungleich 0 für »GRUB_TIMEOUT« werden, falls »GRUB_HIDDEN_TIMEOUT« aktiviert ist, nicht mehr unterstützt.
Linux-Abbild gefunden: /boot/vmlinuz-4.4.0-83-generic
initrd-Abbild gefunden: /boot/initrd.img-4.4.0-83-generic
Linux-Abbild gefunden: /boot/vmlinuz-4.4.0-79-generic
initrd-Abbild gefunden: /boot/initrd.img-4.4.0-79-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Ubuntu 16.04 LTS (16.04) auf /dev/sda1 gefunden
Windows 7 (loader) auf /dev/sdb2 gefunden
Ubuntu 16.04 LTS (16.04) auf /dev/sdc5 gefunden
Linux Mint 18 Sarah (18) auf /dev/sdd1 gefunden
erledigt

Hier wird halt blöderweise immer nur "Ubuntu" angegeben. Beides sind Xubuntus.

Code:
sudo fdisk -l
Medium /dev/sda: 931,5 GiB, 1000204886016 Bytes, 1953525168 Sektoren
Einheiten: sectors von 1 * 512 = 512 Bytes
Sektorengröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O Größe (minimal/optimal): 512 Bytes / 512 Bytes
Typ der Medienbezeichnung: dos
Medienkennung: 0x0000707c

Gerät      Boot     Start       Ende   Sektoren Größe Id Typ
/dev/sda1  *         2048   97656831   97654784  46,6G 83 Linux
/dev/sda2        97656832  105469951    7813120   3,7G 82 Linux Swap / Solaris
/dev/sda3       105469952 1953523711 1848053760 881,2G  7 HPFS/NTFS/exFAT


Medium /dev/sdb: 1,8 TiB, 2000398934016 Bytes, 3907029168 Sektoren
Einheiten: sectors von 1 * 512 = 512 Bytes
Sektorengröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O Größe (minimal/optimal): 512 Bytes / 512 Bytes
Typ der Medienbezeichnung: dos
Medienkennung: 0x2eb311b7

Gerät      Boot     Start       Ende   Sektoren Größe Id Typ
/dev/sdb1            2048     204799     202752   99M  7 HPFS/NTFS/exFAT
/dev/sdb2  *       206848  204802047  204595200 97,6G  7 HPFS/NTFS/exFAT
/dev/sdb3       204802048 3907028991 3702226944  1,7T 83 Linux


Medium /dev/sdc: 111,8 GiB, 120034123776 Bytes, 234441648 Sektoren
Einheiten: sectors von 1 * 512 = 512 Bytes
Sektorengröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O Größe (minimal/optimal): 512 Bytes / 512 Bytes
Typ der Medienbezeichnung: dos
Medienkennung: 0x2eb311b7

Gerät      Boot     Start      Ende  Sektoren Größe Id Typ
/dev/sdc1  *         2048 108566303 108564256 51,8G 83 Linux
/dev/sdc2       200896512 204802047   3905536  1,9G 82 Linux Swap / Solaris
/dev/sdc3       204802048 234436607  29634560 14,1G  7 HPFS/NTFS/exFAT
/dev/sdc4       108566526 200896511  92329986   44G  5 Erweiterte
/dev/sdc5       108566528 200896511  92329984   44G 83 Linux

Die Einträge der Partitionstabelle stimmen nicht mit der Reihenfolge der Medien überein.


Medium /dev/sdd: 111,8 GiB, 120034123776 Bytes, 234441648 Sektoren
Einheiten: sectors von 1 * 512 = 512 Bytes
Sektorengröße (logisch/physisch): 512 Bytes / 512 Bytes
I/O Größe (minimal/optimal): 512 Bytes / 512 Bytes
Typ der Medienbezeichnung: dos
Medienkennung: 0x25825870

Gerät      Boot     Start      Ende  Sektoren Größe Id Typ
/dev/sdd1  *         2048 127287295 127285248 60,7G 83 Linux
/dev/sdd2       127287296 132040703   4753408  2,3G 82 Linux Swap / Solaris
/dev/sdd3       132040704 234440703 102400000 48,8G 83 Linux
 
Du hast 3 Linux Distros, d.h. auch ggf. 3 grub Installationen. Jetzt ist die Frage welche Grub Installation auf sda in den MBR geschrieben wurde weil eben nur deren Konfig relevant ist. Meist ist es die letzte installierte Linux Distro: die hat die anderen eben überschrieben.
Wenn du mehr als eine Linux Distro willst und diese via kaskadiertem Grub Menu starten willst, dann installiere Grub bei den kaskadierten Distros in die Linux Partition, also grub-install /dev/sdb2 oder so was, nicht in den MBR mit /dev/sda.

Du kannst z.B. jetzt "sudo grub-install /dev/sda" schreiben damit deine derzeitige Konfiguration inkl. dem GRUB-DEFAULT genutzt wird. Ich würde die Linux Distro den Grub in den MBR schreiben lassen die du als "Hauptdistro" verwenden willst.
 
Das hatte ich aber schon immer so oder so ähnlich. Es waren immer je min. 1 Linux auf einem Datenträger, Windows auf einem anderen und ein zweites Linux auf einem dritten. Alle OS wurden "isoliert" installiert, d.h. zum Zeitpunkt der Installation war nur dieser eine Datenträger angeschlossen. Er als ich im nachhinein irgendwelche Updates gezogen hatte wurde Grub aktualisiert und es wurden alle gefundenen SO eingetragen. Die Frage ist wieso das jetzt nicht mehr gehen soll. Anders ist jetzt nur, dass 2 Xubuntu auf einem Datenträger liegen.

Die BL/Grub des Windows und der anderen Linux können nicht überschrieben worden sein, weil sie wie gesagt zum Zeitpunkt der Installation abgeklemmt waren.

Komisch, dass es jetzt anders ist.
 
Sie werden gefunden und eingetragen. Die Frage ist nur, welches von deinen 3 installierten Grubs wird genutzt?
Steht ja da "gefunden". Du kannst ja selber in /boot/grub/grub.cfg nachsehen was drinsteht.
 
Die Frage ist nur, welches von deinen 3 installierten Grubs wird genutzt?

Ja, sie werden gefunden, aber scheinbar nicht genutzt denn das Menü ändert sich nie.

In /boot/grub/grub.cfg steht genau das drin was von update-grub gefunden wurde, das wird aber scheinbar nicht ins Menü übertragen.
 
So sollte es sein das die Einträge aktualisiert werden.

sudo grub-mkconfig -o /boot/grub/grub.cfg
 
Wieder das gleiche. Er schreibt im Terminal die ganzen gefundenen OS rein und das Bootmenü beim Reboot sieht genauso aus wie vorher.
 
Na ja. Dann kann man nichts machen. Wahrscheinlich sind deine Systeme auch noch unterschiedlich installiert worden. Damit meine ich die MBR / GPT / UEFI Sache.
 
obz245 schrieb:
Wahrscheinlich sind deine Systeme auch noch unterschiedlich installiert worden. Damit meine ich die MBR / GPT / UEFI Sache.

Nee. Alles MBR und nur Bios. Ich kann ja kein EFI auf einem Mainboard ohne EFI installieren.
 
Offensichtlich wird deine Grub Konfig von einer anderen Disk geladen. Jetzt schau dir mal genau an, welche Disk im BIOS als Boot Disk eingetragen ist. Dann finde heraus, ob Linux die als sda, sdb, sdc oder sdd sieht. Und dann kannst du Grub mit der aktuellen Konfig auf den richtigen MBR schreiben.
 
Das hab ich schon ausgeschlossen, war auch mein Gedanke. Es wird definitiv von der Disk gebootet auf der auch die Systeme sind. Ich hab alle Datenträger abgezogen und es kam das Grub-Menü das auch sonst immer kommt. Grub liegt also eindeutig auf der betreffenden SSD.

Ich komm hier echt nicht weiter.
 
Zurück
Oben