EFI Aufräumen

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

EFI Aufräumen

Beitrag von Ozelot » 01.05.2021 18:52:11

Auf meinem Lenovo Carbon X1 habe ich vier verschiedene Debiansysteme laufen, allerdings arge Probleme mit EFI, das momentan sich ca 10 Minuten Zeit läßt bevor es den Bootloader startet.

Das liegt vielleicht teilweise daran, daß die osprober der verschiedenen Systeme beim jeweiligen Grub update irgendwelches Chaos auf der EFI angerichtet haben (zumindest wurde mir dieser Tip hier im df mal gegeben). Grub update ich daher nur noch von einem System aus.

In jedem Fall muß ich irgendwie das EFI aufräumen, weiß aber nicht wie. Hier ein paar Daten:

- In /boot/efi/EFI befindet sich nur ein boot-Verzeichnis und ein einziges Debianverzeichnis.

- efibootmgr zeigt allerlei Einträge, die ich nicht verstehe, teilweise auch nicht mehr existierende Systeme

Code: Alles auswählen

BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000,0002,0019,0001,0017,0018,001A,001B,001C,001D,001E,0023
Boot0000* debian
Boot0001* siduction_17.1.0
Boot0002* Windows Boot Manager
Boot0010  Setup
Boot0011  Boot Menu
Boot0012  Diagnostic Splash Screen
Boot0013  Lenovo Diagnostics
Boot0014  Startup Interrupt Menu
Boot0015  Rescue and Recovery
Boot0016  MEBx Hot Key
Boot0017* USB CD
Boot0018* USB FDD
Boot0019* NVMe0
Boot001A* ATA HDD0
Boot001B* USB HDD
Boot001C* PCI LAN
Boot001D  Other CD
Boot001E  Other HDD
Boot001F* IDER BOOT CDROM
Boot0020* IDER BOOT Floppy
Boot0021* ATA HDD
Boot0022* ATAPI CD
Boot0023* PCI LAN
Was kann ich da sicher löschen? (Siduction & Windows gibt es nicht mehr auf der Platte)

- grub.cfg sieht so aus:

Code: Alles auswählen

search.fs_uuid [meine root-Partition] root 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

rhHeini
Beiträge: 2260
Registriert: 20.04.2006 20:44:10

Re: EFI Aufräumen

Beitrag von rhHeini » 02.05.2021 12:56:24

Seltsame Konfiguration. Alle 4 Debiansysteme mit einem Eintrag starten, also der gleiche Kernel, dasselbe /boot-Verzeichnis? Willst Du das so haben?

Ich mach mal hier ein paar Vorschläge. Gute Lektüre zum efibootmgr gibts im Ubuntu-Wiki https://wiki.ubuntuusers.de/efibootmgr. Syntax ist nämlich gewöhnungsbedürftig.

Alles gilt für ein System ohne Secure Boot, sonst geht das nicht. Ich de-installiere dazu auch immer grub-efi-amd64-signed.

Die unnötigen Einträge löschen:

Code: Alles auswählen

# efibootmgr -b 0001 -B
löscht z.B. den Siduction-Eintrag. Ich vermute mal die ab Boot0010 sind vom efi-Bios erstellte Einträge. Die würd ich lassen.

Du hast nur einen Eintrag für Debian welches Release auch immer. Per Default schreibt der Installer genau das ins efi-Bios und in die efi-Bootpartition. Wenn Du getrennte Einträge willst, musst du händisch einen speziellen Eintrag erstellen, z.B.:

Code: Alles auswählen

# grub-install --bootloader-id=buster --no-uefi-secure-boot
Dazu solltest Du getrennte /boot-Partitionen für die verschiedenen Releases haben.

Ich hab hier ein Stable und ein Testing voll getrennt laufen.

Gruß, Rolf

Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

Re: EFI Aufräumen

Beitrag von Ozelot » 09.05.2021 09:08:40

Tausend Dank, endlich komme ich hier mal weiter.

Nein, hast recht. So will ich das nicht haben. Das ist, wie sich die Systeme automatisch eingerichtet haben.

Aber ich verstehe die Grundlagen noch nicht. Es gibt ja nur eine EFI partition, die dann wohl in allen Systemen als /boot fungiert. Mehrere solche Partitionen würden keinen Sinn machen, oder? <
Darin gibts auch nur ein debian-Verzeichnis mit einer Hand voll kleiner Dateien. In /boot liegen tatsächlich drei Kernel, ein aktueller und zwei etwas ältere, das könnte der jeweilige Updatestand der Systeme sein.

Wenn ich meinen Grub repariert bekomme (viewtopic.php?f=12&t=181012), mache ich mich mal daran, das händisch zu entzerren. Danke.

Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

Re: EFI Aufräumen

Beitrag von Ozelot » 09.05.2021 10:46:41

Nein, das was ich oben geschrieben habe, muß Unsinn sein. Wo liegen denn die Kernel letztendlich? Offensichtlich hat doch nochmal jede Partition ihr /boot, wo dann auch grub die Kernel findet. Nur im laufenden /boot/efi, was ja die gemountete efi-Partition ist, gibt es ein einziges debian Verzeichnis. In dem liegen aber keine Kernel, sondern nur Konfigurationsdateien.
Zuletzt geändert von Ozelot am 09.05.2021 11:08:15, insgesamt 1-mal geändert.

rhHeini
Beiträge: 2260
Registriert: 20.04.2006 20:44:10

Re: EFI Aufräumen

Beitrag von rhHeini » 09.05.2021 11:06:05

Ozelot hat geschrieben: ↑ zum Beitrag ↑
09.05.2021 09:08:40
Nein, hast recht. So will ich das nicht haben. Das ist, wie sich die Systeme automatisch eingerichtet haben.

Aber ich verstehe die Grundlagen noch nicht. Es gibt ja nur eine EFI partition, die dann wohl in allen Systemen als /boot fungiert. Mehrere solche Partitionen würden keinen Sinn machen, oder? <
Darin gibts auch nur ein debian-Verzeichnis mit einer Hand voll kleiner Dateien. In /boot liegen tatsächlich drei Kernel, ein aktueller und zwei etwas ältere, das könnte der jeweilige Updatestand der Systeme sein.
Ich muss ein wenig aufpassen, ich selber hab Arch, Stable und Testing parallel laufen, aber alle 3 verschlüsselt. Damit benötige ich unverschlüsselte /boot für Stable und Testing. Meine Partitionierung sieht so aus:
P1: efi System Partition, FAT32
P2: ARCH, komplett verschlüsselt
P3: /boot für Stable, nicht verschlüsselt
P4: Verschlüsseltes Stable
P5: /boot für Testing, nicht verschlüsselt
P6: Verschlüsseltes Testing

Die efi-Systempartition wird jeweils unter /boot/efi eingehängt, das ist nicht die /boot! Siehe fstab, wirst Du da so finden. Du kannst da vielleicht mal im Ubuntu-Wiki zum Thema UEFI nachlesen, die Erklärungen sind sehr gut.

Wenn Du 4 mal Buster ohne Verschlüsselung in einer Partition laufen hast und die trennen willst, dann hast Du auch schon 4 integrierte separate /boot-Directories, mehr brauchst Du nicht.

Handlungsvorschlag: Im Bios Fastboot und Secure Boot ausschalten. Dann im Hauptsystem (die ID, hier buster1 als Beispiel, legst Du selber fest, wird dann im efibootmgr sichtbar):

Code: Alles auswählen

# apt remove grub-efi-amd64-signed
# grub-install --bootloader-id=buster1 --no-uefi-secure-boot
Für die anderen ein chroot in die Nummern 2, 3 und 4 und das gleiche Spielchen. Wenn Du durch bist hast Du im efibootmgr 4 getrennte Einträge, die Du dann per Boot Override aus dem Bios heraus starten kannst. Der os-prober sieht die anderen Einträge nicht (bei mir jedenfalls nicht).

Rolf

Antworten