staging.inyokaproject.org

GRUB unwirksam machen wie nach ubiquity -b

Status: Gelöst | Ubuntu-Version: Ubuntu 20.04 (Focal Fossa)
Antworten |

Newubunti

Anmeldungsdatum:
16. Februar 2008

Beiträge: 4768

Danke, für die Ausgaben!

Das stützt meine Vermutung, dass die Wirkung von ubiquity -b (auch) mit dem Vorhandensein bzw. nicht-Vorhandensein eines Installationsziels (-install-device) innerhalb von debconf zusammenhängt.

Ich hatte mir das auch schon mal flüchtig angeschaut und da viel mir auch auf, dass bei Nutzung von ubiquity -b am Ende das Installationsziel in debconf fehlt. Allerdings habe ich bisher noch nicht die Gegenprobe gemacht. D.h. ich habe bisher noch nicht überprüft, ob GRUB deinstalliert bleibt, wenn ich es manuell entferne - z.B. mittels efibootmgr und Löschen des Verzeichnisses auf der EFI-Systempartition, dann in debconf das Intallationsziel auf "leer" stelle und dann weiter beobachte.

Die Gegenprobe müsstest Du jetzt bei Dir auch noch machen.

Was ich auch noch nicht untersucht habe ist, in wieweit es eine Rolle spielt, dass die Plattformpakete grub-efi-amd64-signed und grub-efi-amd64-bin nicht installiert werden, die normalerweise auf einem UEFI-System immer installiert werden.

LG, Newubunti

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 2726

UlfZibis schrieb:

Folgendes passierte dann nach einem Kernel-Update auf 20.04 (Auffälliges und Unterschiede habe ich markiert):

Startmenüeintrag für UEFI-Firmware-Einstellungen wird hinzugefügt
abgeschlossen
$

Nachtrag: Das stand zwar da, ist aber nicht passiert, und würde ja auch keinen Sinn ergeben, wenn kein EFI-GRUB installiert ist.

Newubunti

Anmeldungsdatum:
16. Februar 2008

Beiträge: 4768

UlfZibis schrieb:

Nachtrag: Das stand zwar da, ist aber nicht passiert, und würde ja auch keinen Sinn ergeben, wenn kein EFI-GRUB installiert ist.

Ja, auf solche Ablauf-Meldungen alleine kannst Du Dich für Test in der Regel nicht verlassen. Ich überlege mir da vorher immer ein Testprotokoll, das ich dann penibel abzuarbeiten versuche.

LG, Newubunti

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 2726

Newubunti schrieb:

wenn ich es manuell entferne - z.B. mittels efibootmgr und Löschen des Verzeichnisses auf der EFI-Systempartition

Soweit ich mich richtig erinnere, nützt das nichts. Siehe Achtung-Box.

Die Gegenprobe müsstest Du jetzt bei Dir auch noch machen.

Hab' jetzt noch nicht wirklich verstanden, wie diese konkret aussehen soll.

Was ich auch noch nicht untersucht habe ist, in wieweit es eine Rolle spielt, dass die Plattformpakete grub-efi-amd64-signed und grub-efi-amd64-bin nicht installiert werden, die normalerweise auf einem UEFI-System immer installiert werden.

Die Pakete grub-efi* und grub-pc* stehen im Abhänigkeits-Konflikt, d.h. installiert man das eine manuell, wird das andere deinstalliert. Wenn beides fehlt, führt die Kernel-Aktualisierung dazu, das grub-pc* installiert wird, und das merkwürdigerweise auch auf einem EFI-System. Scheinbar wird nur dadurch blockiert, dass dann tatsächlich ein bootfähiges GRUB installiert wird, und so entsteht der "Nebeneffekt", dass das GRUB der Primärinstallation erhalten bleibt. Vielleicht ist deshalb ubiquity -b nicht offiziell dokumentiert.

Newubunti

Anmeldungsdatum:
16. Februar 2008

Beiträge: 4768

UlfZibis schrieb:

Newubunti schrieb:

wenn ich es manuell entferne - z.B. mittels efibootmgr und Löschen des Verzeichnisses auf der EFI-Systempartition

Soweit ich mich richtig erinnere, nützt das nichts. Siehe Achtung-Box.

Das hast Du falsch verstanden bzw. ich habe mich vielleicht auch nicht deutlich genug ausgedrückt. Wenn ich herausfinden möchte, was ubiquity -b genau bewirkt bzw. warum es bei dessen Nutzung nicht zu einer GRUB-Installation auf der EFI-Systempartition und im NVRAM kommt und die Hypothese verfolge, dass das eventuell am fehlenden -install-device unter debconf liegt, dann muss ich ja eine Situation schaffen, in der ich genau diese Hypothese veri- oder falsifizieren kann. Dabei liegt ja Dein Anwendungfall aus dem Eingangpost zugrunde, dass GRUB ganz normal auf dem System installiert wurde - weil Du ja ubiquity -b vergessen hattest auszuführen.

Um also die Hypothese zu überprüfen muss man - ausgehend von Deinem Szenario - IMO folgendes machen:

  1. GRUB aus den Installationszielen entfernen, ohne dabei den Weg über die Paketverwaltung zu gehen. Daher die manuelle Nutzung von efibootmgr und das manuelle Löschen von von /boot/efi/EFI/ubuntu.

  2. Prüfen, was passiert wenn grub-install automatisch ausgeführt wird.

Was ich auch noch nicht untersucht habe ist, in wieweit es eine Rolle spielt, dass die Plattformpakete grub-efi-amd64-signed und grub-efi-amd64-bin nicht installiert werden, die normalerweise auf einem UEFI-System immer installiert werden.

Die Pakete grub-efi* und grub-pc* stehen im Abhänigkeits-Konflikt, d.h. installiert man das eine manuell, wird das andere deinstalliert. Wenn beides fehlt, führt die Kernel-Aktualisierung dazu, das grub-pc* installiert wird, und das merkwürdigerweise auch auf einem EFI-System. Scheinbar wird nur dadurch blockiert, dass dann tatsächlich ein bootfähiges GRUB installiert wird, und so entsteht der "Nebeneffekt", dass das GRUB der Primärinstallation erhalten bleibt.

Wenn man sich den Installationsverlauf der GRUB-Installatin mittels grub-install -v anschaut, dann sieht man, dass gleich am Anfang eine Plattformprüfung durchlaufen wird. Es kann daher durchaus sein, dass man die Installation mit den "falschen" Plattformpaketen ins Leere laufen lässt. Eine 100% saubere Lösung ist das zwar nicht, auf der andern Seite ist es ja so, dass man bei einer grub-install unter UEFI kein Installationsziel angeben muss während das bei einer GRUB-PC-(BIOS)-Installation ja zwingend ist.

Ich könnte mir vorstellen, dass das deswegen auf diese Art und daher auf den ersten Blick etwas unlogisch umgesetzt ist.

LG, Newubunti

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 2726

UlfZibis schrieb:

Startmenüeintrag für UEFI-Firmware-Einstellungen wird hinzugefügt
abgeschlossen
$

Nachtrag: Das stand zwar da, ist aber nicht passiert, und würde ja auch keinen Sinn ergeben, wenn kein EFI-GRUB installiert ist.

Uups, ich glaube, ich (wir) habe(n) diese Meldung falsch interpretiert. Es geht da um einen zusätzlichen GRUB-Menü-Eintrag, der ins normale UEFI-BIOS des Rechners führt, und nicht um einen UEFI-Menü-Eintrag oder (ECM)/EFI/ubuntu/ und hat deshalb auch gar nichts mit der Installation von GRUB zu tun.

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 2726

Hier nun das Ergebnis auf dem Sekundärsystem 20.04, wo ich nachträglich versucht habe, das Ergebnis von ubiquity -b herzustellen. Ich hoffe, ich habe es so gemacht, wie Du meintest.

ich@Asus-X200MA:~$ sudo efibootmgr -v
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0005,0004,0000,0002,0001
Boot0000* Ubuntu GRUB 2.06 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\UBUNTU\GRUBX64.EFI)
Boot0001* Windows Boot Manager	VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* Windows Boot Manager	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0004* GRUB 2.04-u21 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\BOOT\BOOTX64.EFI)
Boot0005* GRUB 2.04-u21	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\BOOT\GRUB\X86_64-EFI\GRUB.EFI)
ich@Asus-X200MA:~$ sudo ls -l /boot/efi/EFI/
insgesamt 13
drwx------ 7 root root 1024 Aug 13  2018 ASUS
drwx------ 2 root root 1024 Feb 26 18:18 BOOT
drwx------ 2 root root 1024 Okt 16  2021 BOOT_18.04.4
drwx------ 2 root root 1024 Feb 25 01:02 BOOT_2.04_ohne_Shim
drwx------ 2 root root 1024 Feb 26 17:37 Boot_orig
drwx------ 2 root root 1024 Feb 26 18:18 Boot_orig_2
drwx------ 3 root root 1024 Jan 30  2016 Microsoft
drwx------ 3 root root 1024 Mai  5 13:36 Ubuntu
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_18.04
drwx------ 3 root root 1024 Aug 28  2021 Ubuntu-64_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_20.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_21.04
ich@Asus-X200MA:~$ sudo ls -l /boot/efi/EFI/Ubuntu
insgesamt 2539
drwx------ 2 root root    1024 Sep 20  2021 fw
-rwx------ 1 root root     127 Aug 27  2021 grub_13.cfg
-rwx------ 1 root root     126 Sep 22  2021 grub_7.cfg
-rwx------ 1 root root     126 Feb 24 16:23 grub_9.cfg
-rwx------ 1 root root      99 Feb 24 23:02 grub.cfg.bak
-rwx------ 1 root root 2594696 Feb 23 12:10 grubx64.efi
ich@Asus-X200MA:~$ sudo mv -T /boot/efi/EFI/Ubuntu /boot/efi/EFI/Ubuntu_bak
ich@Asus-X200MA:~$ sudo ls -l /boot/efi/EFI/
insgesamt 13
drwx------ 7 root root 1024 Aug 13  2018 ASUS
drwx------ 2 root root 1024 Feb 26 18:18 BOOT
drwx------ 2 root root 1024 Okt 16  2021 BOOT_18.04.4
drwx------ 2 root root 1024 Feb 25 01:02 BOOT_2.04_ohne_Shim
drwx------ 2 root root 1024 Feb 26 17:37 Boot_orig
drwx------ 2 root root 1024 Feb 26 18:18 Boot_orig_2
drwx------ 3 root root 1024 Jan 30  2016 Microsoft
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_18.04
drwx------ 3 root root 1024 Aug 28  2021 Ubuntu-64_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_20.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_21.04
drwx------ 3 root root 1024 Mai  5 13:36 Ubuntu_bak
ich@Asus-X200MA:~$ sudo efibootmgr -b 0 -B
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0005,0004,0002,0001
Boot0001* Windows Boot Manager
Boot0002* Windows Boot Manager
Boot0004* GRUB 2.04-u21 signed
Boot0005* GRUB 2.04-u21
ich@Asus-X200MA:~$ sudo debconf-show grub-pc
  grub-pc/partition_description:
  grub-pc/chainload_from_menu.lst: true
  grub2/no_efi_extra_removable: false
  grub2/unsigned_kernels:
  grub-pc/timeout: 0
  grub-pc/install_devices_disks_changed:
  grub-pc/install_devices_failed_upgrade: true
  grub2/unsigned_kernels_title:
  grub2/linux_cmdline_default: quiet splash
  grub-pc/install_devices_failed: false
  grub-pc/hidden_timeout: true
  grub2/kfreebsd_cmdline:
  grub-pc/kopt_extracted: false
* grub-efi/install_devices: /dev/disk/by-id/ata-HGST_HTS545050A7E680_TMA55C3J3G3YNM-part1
  grub-pc/install_devices_empty: false
  grub2/kfreebsd_cmdline_default: quiet splash
  grub-pc/postrm_purge_boot_grub: false
  grub-efi/install_devices_disks_changed:
  grub-efi/install_devices_failed: false
  grub-pc/install_devices:
  grub-efi/install_devices_empty: false
  grub2/update_nvram: true
  grub-pc/disk_description:
  grub-pc/mixed_legacy_and_grub2: true
  grub-efi/partition_description:
  grub2/linux_cmdline:
ich@Asus-X200MA:~$ sudo grub-install -v
grub-install: Info: executing modprobe efivars 2>/dev/null.
grub-install: Info: Looking for /sys/firmware/efi ...
grub-install: Info: ...found.
grub-install: Info: ... but x86_64-efi platform not available.
grub-install: Info: Looking for /proc/device-tree ...
grub-install: Info: ... not found.
i386-pc wird für Ihre Plattform installiert.
grub-install: Fehler: Kein Installationsgerät angegeben.
ich@Asus-X200MA:~$ sudo ls -l /boot/efi/EFI/
insgesamt 13
drwx------ 7 root root 1024 Aug 13  2018 ASUS
drwx------ 2 root root 1024 Feb 26 18:18 BOOT
drwx------ 2 root root 1024 Okt 16  2021 BOOT_18.04.4
drwx------ 2 root root 1024 Feb 25 01:02 BOOT_2.04_ohne_Shim
drwx------ 2 root root 1024 Feb 26 17:37 Boot_orig
drwx------ 2 root root 1024 Feb 26 18:18 Boot_orig_2
drwx------ 3 root root 1024 Jan 30  2016 Microsoft
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_18.04
drwx------ 3 root root 1024 Aug 28  2021 Ubuntu-64_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_20.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_21.04
drwx------ 3 root root 1024 Mai  5 13:36 Ubuntu_bak
ich@Asus-X200MA:~$ sudo efibootmgr -v
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0005,0004,0002,0001
Boot0001* Windows Boot Manager	VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* Windows Boot Manager	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0004* GRUB 2.04-u21 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\BOOT\BOOTX64.EFI)
Boot0005* GRUB 2.04-u21	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\BOOT\GRUB\X86_64-EFI\GRUB.EFI)
ich@Asus-X200MA:~$ sudo efibootmgr -b 0 -c -L "Ubuntu GRUB 2.06 signed" -l "\\EFI\\Ubuntu\\grubx64.efi" -o 5,4,0,2,1 -v
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0005,0004,0000,0002,0001
Boot0001* Windows Boot Manager	VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* Windows Boot Manager	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0004* GRUB 2.04-u21 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\BOOT\BOOTX64.EFI)
Boot0005* GRUB 2.04-u21	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\BOOT\GRUB\X86_64-EFI\GRUB.EFI)
Boot0000* Ubuntu GRUB 2.06 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\Ubuntu\grubx64.efi)
ich@Asus-X200MA:~$ sudo efibootmgr -v
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0005,0004,0000,0002,0001
Boot0000* Ubuntu GRUB 2.06 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\Ubuntu\grubx64.efi)
Boot0001* Windows Boot Manager	VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* Windows Boot Manager	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0004* GRUB 2.04-u21 signed	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\EFI\BOOT\BOOTX64.EFI)
Boot0005* GRUB 2.04-u21	HD(1,GPT,671281f8-513a-46b7-8cd7-ff6fed6d5eca,0x800,0x32000)/File(\BOOT\GRUB\X86_64-EFI\GRUB.EFI)
ich@Asus-X200MA:~$ sudo mv -T /boot/efi/EFI/Ubuntu_bak /boot/efi/EFI/Ubuntu
ich@Asus-X200MA:~$ sudo ls -l /boot/efi/EFI/
insgesamt 13
drwx------ 7 root root 1024 Aug 13  2018 ASUS
drwx------ 2 root root 1024 Feb 26 18:18 BOOT
drwx------ 2 root root 1024 Okt 16  2021 BOOT_18.04.4
drwx------ 2 root root 1024 Feb 25 01:02 BOOT_2.04_ohne_Shim
drwx------ 2 root root 1024 Feb 26 17:37 Boot_orig
drwx------ 2 root root 1024 Feb 26 18:18 Boot_orig_2
drwx------ 3 root root 1024 Jan 30  2016 Microsoft
drwx------ 3 root root 1024 Mai  5 13:36 Ubuntu
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu_18.04
drwx------ 3 root root 1024 Aug 28  2021 Ubuntu-64_16.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_20.04
drwx------ 2 root root 1024 Aug 27  2021 Ubuntu-64_21.04
ich@Asus-X200MA:~$ sudo ls -l /boot/efi/EFI/Ubuntu
insgesamt 2539
drwx------ 2 root root    1024 Sep 20  2021 fw
-rwx------ 1 root root     127 Aug 27  2021 grub_13.cfg
-rwx------ 1 root root     126 Sep 22  2021 grub_7.cfg
-rwx------ 1 root root     126 Feb 24 16:23 grub_9.cfg
-rwx------ 1 root root      99 Feb 24 23:02 grub.cfg.bak
-rwx------ 1 root root 2594696 Feb 23 12:10 grubx64.efi
ich@Asus-X200MA:~$ sudo debconf-show grub-pc
  grub2/kfreebsd_cmdline:
  grub-pc/disk_description:
  grub-pc/postrm_purge_boot_grub: false
  grub-pc/chainload_from_menu.lst: true
  grub-pc/partition_description:
  grub2/no_efi_extra_removable: false
  grub-efi/install_devices_disks_changed:
  grub-pc/timeout: 0
  grub-pc/kopt_extracted: false
  grub-pc/install_devices_empty: false
* grub-efi/install_devices: /dev/disk/by-id/ata-HGST_HTS545050A7E680_TMA55C3J3G3YNM-part1
  grub-efi/install_devices_failed: false
  grub-pc/mixed_legacy_and_grub2: true
  grub2/linux_cmdline:
  grub2/unsigned_kernels_title:
  grub-pc/hidden_timeout: true
  grub-pc/install_devices_disks_changed:
  grub-efi/partition_description:
  grub2/unsigned_kernels:
  grub-efi/install_devices_empty: false
  grub2/kfreebsd_cmdline_default: quiet splash
  grub2/update_nvram: true
  grub-pc/install_devices:
  grub-pc/install_devices_failed: false
  grub-pc/install_devices_failed_upgrade: true
  grub2/linux_cmdline_default: quiet splash
ich@Asus-X200MA:~$ 

UlfZibis

(Themenstarter)

Anmeldungsdatum:
13. Juli 2011

Beiträge: 2726

Newubunti schrieb:

... dass das eventuell am fehlenden -install-device unter debconf liegt

Soll ich diesen Zustand nun evtl. auch noch herstellen ?
Dann müsstest Du mir den Befehl dafür zeigen, denn ich kenne mich mit dem debconf-Gedöns nun mal überhaupt nicht aus.

Und dann wäre die Frage, ob dann die nächste Kernel-Aktualisierung da wieder den vorigen Zustand herstellt.

Antworten |