Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
28.09.2020, 14:30:48

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
Statistiken
  • Beiträge insgesamt: 685195
  • Themen insgesamt: 55454
  • Heute online: 668
  • Am meisten online: 2287
  • (22.01.2020, 19:20:24)
Benutzer Online

Autor Thema: [erledigt] Grub-Update / Betriebssysteme nicht mehr gefunden  (Gelesen 988 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

[erledigt] Grub-Update / Betriebssysteme nicht mehr gefunden
« am: 03.08.2020, 18:47:02 »
Hallo,

ich bin nach einem automatischen Grub-Update momentan mit meinem Latein ziemlich am Ende, da einige der installierten Linux-Betriebssysteme nicht mehr gefunden werden.

Alte Situation: Auf Platte /sda waren Linux Mint sowie testweise MX Linux, Manjaro und Open_SUSE installiert.  Auf Platte /sdc daneben noch ein Windows10-System.  Der Bootloader auf /sda wurde zunächst von Linux Mint aus geschrieben und durch das dortige grub.cfg gesteuert.  Nach der Installation der anderen Linux-Systeme wurde deren Bootloader automatisch darüber geschrieben, zuletzt der von Open_SUSE.  Der Bootloader wird dann auch von der Open_SUSE-Partition und dem dortigen grub.cfg gesteuert.  So weit, so gut.  Es lies sich auch alles einwandfrei starten.

Ich nutze für den Betrieb hauptsächlich Linux Mint.  Nun gab es laut Protokoll am 30.07. und dann nochmals am 01.08. ein Update von Grub (2.02-2ubuntu 8.15 > 8.16 und dann gleich 8.16 > 8.17).  Dabei scheint auch der Bootloader auf /sda von Linux Mint aus neu geschrieben worden zu sein.

Nun läuft beim Booten dieser Bootloader mit dem alten grub.cfg von der Linux Mint-Partition.  Sehe ich auch an der alten graphischen Darstellung des Bootmenüs.  Zumindest Manjaro und Open_SUSE sind dort noch nicht installiert, sind folglich nicht als Startoptionen sichtbar und lassen sich also nicht mehr starten.

Ich versuchte dann, mittels $ sudo update-grub von Linux Mint aus die neuen Betriebssysteme zu suchen und in den grub.cfg zu bekommen.

Nun werden die zwar anscheinend auch beim Suchlauf gefunden
Manjaro Linux (20.0.3) auf /dev/sda2 gefunden
MX 19.2 patito feo (19.2 ) auf /dev/sda7 gefunden
openSUSE Tumbleweed auf /dev/sda8 gefunden
aber aus unerfindlichen Gründen nicht in den grub.cfg geschrieben und tauchen also nicht als Startoption auf.  Keine Ahnung, warum und weshalb.

Auch das Neuschreiben des Bootsektors von Linux Mint aus mittels $ sudo grub-install /dev/sda bringt nichts.

Eigentlich müßte ich jetzt das zuletzt installierte Open_SUSE-System starten und von dort aus den Bootloader nochmals neu schreiben.  Die ganzen Daten einschließlich dem dortigen grub.cfg, welche vorher funktioniert haben, sollten ja noch da sein.  Nur: wie komme ich in das Open_SUSE-System rein?

Habe ich mittels der Super_Grub-Disk versucht.  Aber komischerweise wird das Open_SUSE-System dort nicht gefunden und als Startoption aufgeführt.

Was nun?  Danke für Hinweise.

« Letzte Änderung: 07.08.2020, 07:27:24 von felix92 »

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #1 am: 03.08.2020, 19:22:27 »
Hallo,

kannst du mal bitte ein:sudo parted --list zeigen. Danke

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #2 am: 03.08.2020, 19:29:09 »
Gerne.  Anmerkungen von mir in eckigen Klammern teilweise dazugesetzt:

Modell: ATA ADATA SP550 (scsi)
Festplatte  /dev/sda:  240GB
Sektorgröße (logisch/physisch): 512B/4096B
Partitionstabelle: msdos
Disk-Flags:

Nummer  Anfang  Ende    Größe   Typ       Dateisystem     Flags
 2      1049kB  73,4GB  73,4GB  primary   ext4  [Manjaro]
 1      73,4GB  240GB   167GB   extended                  boot, LBA
 5      73,4GB  157GB   84,0GB  logical   ext4   [Linux Mint]
 7      157GB   183GB   25,5GB  logical   ext4   [MX Linux]
 8      183GB   230GB   47,2GB  logical   btrfs   [Open_SUSE]
 6      230GB   240GB   9943MB  logical   linux-swap(v1)


Modell: ATA TOSHIBA HDWD110 (scsi)   [hier nur Daten]
Festplatte  /dev/sdb:  1000GB
Sektorgröße (logisch/physisch): 512B/4096B
Partitionstabelle: msdos
Disk-Flags:

Nummer  Anfang  Ende    Größe  Typ      Dateisystem  Flags
 1      1049kB  526GB   526GB  primary  ntfs
 3      526GB   790GB   264GB  primary  ext4
 2      790GB   1000GB  210GB  primary  ext4


Modell: ATA MKNSSDCR120GB-7 (scsi)
Festplatte  /dev/sdc:  120GB
Sektorgröße (logisch/physisch): 512B/512B
Partitionstabelle: msdos
Disk-Flags:

Nummer  Anfang  Ende   Größe  Typ      Dateisystem  Flags
 1      1049kB  608MB  607MB  primary  ntfs         boot
 2      608MB   119GB  119GB  primary  ntfs   [Windows 10]
 3      119GB   120GB  552MB  primary  ntfs         diag


Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #3 am: 03.08.2020, 19:37:37 »
Ich vermute mal, das da der Hase begraben ist:

btrfs   [Open_SUSE]

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #4 am: 03.08.2020, 19:43:50 »
Wieso vermutest du das? Hat GRUB beim Aktualisieren bekanntermaßen Probleme mit btrfs-Partitionen?

LG, Athlan

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #5 am: 03.08.2020, 20:12:42 »
@felix92, ich würde dir empfehlen, die sdb sowie sdc zu trennen, dann Manjaro mittels super grub disk starten (müsste irgend etwas mit hd0,msdos2 sein) und von jener Distri aus den grub neu installieren.
Warum? Weil sie in keiner erweiterten Partition gammelt. Einfach testen, dann kan man weiter sehen... Btrfs Probleme, hmm keine Ahnung.

Damit kannste im Terminal abfragen, wo sich im alten bios Mode der (Haupt)grub derzeit befindet (nur copy&paste des Befehls!):
sudo bash -c "for d in \$(fdisk -l|grep -o \"/dev/[^ :]*\");do case \$(hexdump -v -s 0x80 -n 2 -e '2/1 \"%x\" \"\n\"' \$d) in 'aa75'|'5272') echo \$d: Grub Legacy;;'48b4'|'7c3c'|'020') echo \$d: Grub 2;;*) echo \$d;;esac;done"Ich würde außerdem in allen anderen Nebendistris einen zusätzlichen Eintrag in der /etc/defaut/grub einbringen, und zwar:
GRUB_DISABLE_OS_PROBER=trueGefolgt von obligatorischen sudo update-grub Das hält die Grub Einträge sauber und kurz. Vor allem nach Kernel Updates.
Läuft es dann, kannste die beiden anderen Platten wieder anschließen, Manjaro starten und sudo update grub ausführen.

Soll erstmal reichen, vielleicht hilfts.

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #6 am: 04.08.2020, 18:29:36 »
Vielen Dank für die Ratschläge.  Aktueller Stand meiner Reparaturarbeiten ist folgender:

1) Abklemmen der anderen Platten ist bei Verwendung von Super_Grub-Disk anscheinend nicht sinnvoll.  Das Programm sucht dann nach den Platten und läuft in eine Endlosschleife.  Also wieder angeklemmt, stört auch nicht weiter.

2) Manjaro (hd0,msdos2) läßt sich mittels Super_Grub-Disk starten.  Ich habe dann ausgeführt:
$ sudo update-grub
$ sudo grub-install /dev/sda
und damit den Bootloader neu geschrieben, der jetzt von der Manjaro-Installation aus gesteuert wird.

3) Manjaro, Linux Mint und MX Linux sind damit im Bootmenü enthalten.  Allerdings ist openSUSE weiterhin spurlos verschwunden und läßt sich nicht wiederherstellen oder starten.  Ich denke mal, ehe ich lange weiter experimentiere, werde ich das einfach neu installieren, war ohnehin nur eine Testinstallation ohne wichtige Daten.

4) Den Ratschlag mit GRUB_DISABLE_OS_PROBER=true werde ich befolgen.

5) Anscheinend bin ich nicht der erste, welcher dieses Problem hat.  Im Manjaro-Forum (ich hoffe, man darf hier ein anderes Forum erwähnen) scheinen genau dieselben Probleme aufgetaucht zu sein, wobei dort "Debian" wohl im wesentlichen mit "Linux Mint" und "MX Linux" als Debian-basierte Systeme gleichzusetzen ist.
https://forum.manjaro.org/t/installation-und-konfiguration-btrfs-grub-multiboot-bios-mbr-linux-debian-opensuse-manjaro-und-windows-10/123724/7

Leider scheinen manche Linux-Systeme untereinander grundsätzliche "Verständigungs-Schwierigkeiten" zu haben.  ::)


Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #7 am: 04.08.2020, 18:49:45 »
Ich kann nur dazu sagen, dass grub2 von Manjaro auch hochgepatcht ist und nicht dem Original entspricht. Das ist ein Manjaro-grub, dass sich durchaus etwas anders verhält, als es sein sollte.

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #8 am: 04.08.2020, 20:39:53 »

2) Manjaro (hd0,msdos2) läßt sich mittels Super_Grub-Disk starten.  Ich habe dann ausgeführt:
$ sudo update-grub
$ sudo grub-install /dev/sda
und damit den Bootloader neu geschrieben, der jetzt von der Manjaro-Installation aus gesteuert wird.
Ich hoffe du hast die Befehle in umgekehrter Reihenfolge ins Terminal eingegeben? Also erst grub installiert und später noch mal ein update-grub, als alles wieder angeschlossen war?
Was Manjaro anbelangt, hatte ich jenes über 15 Monate im Zusammenspiel mit zwei anderen Tuxen + Win10. Auch war da mal ein anderer grub, als der von Manjaro der "Häuptling". Probleme hatte ich damit nicht. Allerdings habe ich gpt und damit uefi, ohne Secure Boot.
Nur gab es damals nicht solche häufigen Updates wie in letzter Zeit, grub betreffend. Und das zwei oder drei Mal/Distri.
Heute habe ich "nur" noch zwei Tuxe auf Rechner, meine Hauptdistri Debian und Nebendistri Mint.
Probleme hatte ich aber mit grub Updates zuletzt nicht. Auch nicht auf externer Platte mit Kubuntu, dessen grub eine Mischung aus grub-pc sowie grub-efi-amd64 ist. In der efi Partition der ext. Platte sind gpt Startdateien, während der grub selbst grub-pc und nicht grub-efi-amd64 ist. Und trotz dieses Mischmasch gab keine Probleme beim grub Update. Ich dachte selbst "das fliegt mir um die Ohren", als ich von manchen Problemen las... War aber nicht so. So kanns auch gehen...

Und Windows startet bei dir auch wieder mit Eintrag im grub Menü? Wenn ja, hast du ja zum Glück das wesentlichste überstanden.
Ich würde aber mal den jetzigen mbr der sda sichern (mit Part. Tabelle), mittels dd.
sudo dd if=/dev/sda of=MBR-sda bs=512 count=1Anschließend liegt eine Datei (gehört root) in ~/MBR-sda

Rücksichern geht dann so (der Terminal-Prompt muss im Verzeichnis der Datei MBR-sda sein, falls zwischenzeitlich woanders hin kopiert):
sudo dd of=/dev/sda if=MBR-sda conv=notrunc

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #9 am: 05.08.2020, 14:42:58 »
Ja, die Reihenfolge war umgekehrt, beziehungsweise nochmal "update-grub" dahinter.

Oh Schreck, Windows 10 war auf einmal nicht mehr sichtbar.  Lag aber nur daran, daß das Stromkabel zur Platte nicht richtig eingesteckt war... ;)

Ich glaube nach weiterer Beschäftigung mit der Sache, daß die Benutzung des btrfs-Dateisystems ein Problem für sich ist.  Anscheinend werden dort sogenannte "Subvolumes" für die Datenspeicherung eingerichtet, und da findet sich Grub nicht unbedingt mehr zurecht.  Ich hatte auch versucht, Grub direkt aus der Grub-Kommandozeile zu starten, aber /boot/vmlinuz und /boot/initrd konnte ich nicht in der Open_SUSE-Partition finden.

https://wiki.ubuntuusers.de/Installieren_auf_Btrfs-Dateisystem/

Offenbar verwendet Open_SUSE immer btrfs und läßt sich nicht auf ext4 umstellen.  Na ja.  Ich muß mal sehen, was ich damit noch mache.

Gleich noch eine Frage zur Sicherung des Bootloaders und des MBR.  Beschrieben ist die Sicherung von Sektor 0 (MBR) mit Bytes 0-511 mittels dd.  Nun stehen dahinter vor den eigentlichen Partitionen aber noch irgendwelche Daten, und zwar in den Sektoren 1-2047 ("hidden sectors").  Bei mir sind dort Daten in den Sektoren 1-224 mittels eines Hex-Editors sichtbar, im Rest stehen digitale Nullen. 

Wie ich gelesen habe, soll in Sektor 0 nur "Stage 1" des Bootloader stehen, und da passt in die ersten 446 Bytes (Rest Partitionstabelle) auch nicht allzuviel an Bootcode rein.  Daneben soll noch "Stage 1.5" abgespeichert sein, und "Stage 2" dann in der eigentlichen Partition.  Ist das, was in den Sektoren 1-224 (theoretisch Platz bis Sektor 2047) steht, der erwähnte "Stage 1.5" des Bootloaders?  Muß das nicht auch gesichert werden, weil das ein Teil des Bootloaders ist?

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #10 am: 05.08.2020, 16:28:55 »
Auch nicht auf externer Platte mit Kubuntu, dessen grub eine Mischung aus grub-pc sowie grub-efi-amd64 ist. In der efi Partition der ext. Platte sind gpt Startdateien, während der grub selbst grub-pc und nicht grub-efi-amd64 ist. Und trotz dieses Mischmasch gab keine Probleme beim grub Update.

Das ist ja auch ein normaler UEFI-grub. Erkennbar an grub-efi-amd64. grub-pc ist nicht maßgebend, das BIOS-Pendant bildet zwar grub-pc, aber immer zusammen mit grub-pc-bin. Letzteres Paket wirst du aber nicht installiert haben, weil es sich mit grub-efi-amd64 beißt. Es geht immer nur eine Variante. grub-pc ist auf den ISOs immer vorinstalliert, ich denke du wirst es nicht brauchen.

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #11 am: 05.08.2020, 17:01:38 »
@felix92, ich kann mir kaum vorstellen, dass Suse nur sich mit btrfs Dateisystem installieren lässt. Hast du das manuell installiert oder automatische Partitionierung gemacht? Kenne mich aber mit neuen Suse Installern nicht aus. Ist schon 10 Jahre her. Damals hatte ich die Suse in ext3 oder 4 installiert. Und der BS Loader war noch LiLo nicht grub.
Btrfs bin ich auch bisher konsequent aus dem Weg gegangen. Dazu kann ich nicht viel schreiben, das mit Subvolumes ist mir "schlerhaft im Hinterkopf", mehr nicht.
Mit MBR sichern meinte ich nur, weil du noch das alte Boot-und Partitionsschema msdos hast (alter Bios Boot), also kein gpt.
Und es deswegen passieren kann, dass durch Windowsupdate der MBR überschrieben wird. Bei gpt ist der nicht relevant.
Jener ist in der Tat nur 512 Bytes groß mit Partitionstabelle (die musst du schon mit sichern).
Wenn man jenes Backup hat, braucht man nur einen Einzeiler im Terminal absetzen. Dann funzt es wieder, wenn grub keine Macke hat und Win nur den MBR überschrieben hat.
Jedoch ein kompletter grub-Neuinstall macht das natürlich auch. Keine Frage.
Und klar, mit dd muss man vorsichtig sein.

@dphn, doch doch, ist so wie ich schrieb. Weicht aber vom normalen Install erheblich ab, da es sich um eine externe Platte handelt in gpt, mit eigener uefi Partition, deren Inhalt auch anders ist (die Ordner sowie deren Inhalt).

dpkg -l | grep grub
ii  grub-common                                   2.04-1ubuntu26.2                            amd64        GRand Unified Bootloader (common files)
ii  grub-gfxpayload-lists                         0.7                                         amd64        GRUB gfxpayload blacklist
ii  grub-pc                                       2.04-1ubuntu26.2                            amd64        GRand Unified Bootloader, version 2 (PC/BIOS version)
ii  grub-pc-bin                                   2.04-1ubuntu26.2                            amd64        GRand Unified Bootloader, version 2 (PC/BIOS modules)
ii  grub2-common                                  2.04-1ubuntu26.2                            amd64        GRand Unified Bootloader (common files for version 2)
kubuntu@HP-Pavilion-15:~$ sudo parted -l
[sudo] Passwort für kubuntu:
Modell: ATA CT1000MX500SSD1 (scsi)
Festplatte  /dev/sda:  1000GB
Sektorgröße (logisch/physisch): 512B/4096B
Partitionstabelle: gpt
Disk-Flags:

Nummer  Anfang  Ende    Größe   Dateisystem     Name                  Flags
 1      1049kB  949MB   948MB   fat32                                 boot, esp
 2      955MB   1089MB  134MB                   msftres               msftres
 3      1089MB  435GB   434GB   ntfs            Basic data partition  msftdata
 4      435GB   436GB   902MB   ntfs            WinRep                versteckt, diag
 5      436GB   484GB   48,3GB  ntfs            LinWin data           msftdata
 6      484GB   540GB   55,8GB  ext4            Mint
 7      540GB   596GB   55,8GB  ext4            Debian
 8      596GB   606GB   9664MB  linux-swap(v1)  swap                  swap
 9      606GB   1000GB  395GB   ext4            home


Modell: ATA ST1000LM014-1EJ1 (scsi)
Festplatte  /dev/sdb:  1000GB
Sektorgröße (logisch/physisch): 512B/4096B
Partitionstabelle: gpt
Disk-Flags:

Nummer  Anfang  Ende    Größe   Dateisystem  Name      Flags
 1      1049kB  1050MB  1049MB  fat32        boot      boot, esp
 2      1050MB  500GB   499GB   ntfs         windaten  msftdata
 3      500GB   944GB   444GB   ext4         lindaten
 4      944GB   1000GB  55,8GB  ext4         kubuntu

Die Ordner boot und efi auf der sdb1, haben eine andere Aufteilung sowie Inhalte als auf der efi Partition der sda1.
Es ist in der Tat ein Mischmasch zwischen grub-pc sowie grub-efi-amd64. Deswegen, damit bei grub Update kein Eintrag in den NVRAM erfolgt.
« Letzte Änderung: 05.08.2020, 17:09:13 von BR01 »

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #12 am: 05.08.2020, 17:55:01 »
Ich habe Open_SUSE Tumbleweed (also das neueste Produkt) installiert gehabt.  In der Installationsroutine habe ich keine Option vorgefunden, das Dateisystem von btrfs auf ext4 zu ändern.

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #13 am: 05.08.2020, 21:17:46 »
Danke für die nähere Erklärung BR01, sowas ist mir noch nicht untergekommen. :)

Re: Grub-Update / Betriebssysteme nicht mehr gefunden
« Antwort #14 am: 05.08.2020, 23:25:49 »
@felix92, ich kann dir da nicht widersprechen, weil ich es nicht kenne. Mag durchaus so sein, wie du schreibst. Dann wäre die Suse für mich absolut nicht geeignet, wenn jene nur btrfs als Dateisystem zulässt.
Probiere es doch mal mit einer anderen Distri auf der Partition.

@dphn, ach sag das nicht. Ist dort auch beschrieben.
Habe jenes nur für mich etwas angepasst - läuft.
Wollte darum auch keine Diskussion hier starten, war nur zu felix92 so geschrieben, als wie, bei meiner etwas fricklichen grub-Installation, hatten die letzten grub-Updates nicht geschadet. Obwohl ich Probleme erwartet hatte.