Booteintrag nicht im EFI-Menü/NVRAM
Bei der Hardware wird als Motherboard ein Asus Z170 Deluxe und als Festplatte eine Samsung MZ-V5P512BW 512 GB, Solid State Drive(M.2, 950 Pro) verwendet.
Zuerst wurde Windows 10 – Version 1511 – erfolgreich installiert. Danach sollte Debian Stretch aufgesetzt werden. Die Installation lief erfolgreich durch bis auf die Installation des Bootloaders GRUB2. Die Installation des Bootloaders GRUB2 schlug also fehl. Es war also ein funktionsfähig installiertes Stretch vorhanden ohne Bootloader.
Die Samsung NVME war dann wie folgt belegt: root@kubuntu:/# blkid
/dev/nvme0n1: PTUUID="1d3c31f8-5d4a-4d8e-9c24-5f1a92c28adb" PTTYPE="gpt"
/dev/nvme0n1p1: LABEL="Wiederherstellung" UUID="0A5C2AA95C2A8F8D" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="ecfd2227-0bb3-49fc-831c-13804da675e1"
/dev/nvme0n1p2: UUID="A82B-4B92" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="9083a297-2af9-43f9-be83-9d2af9d5c642"
/dev/nvme0n1p3: PARTLABEL="Microsoft reserved partition" PARTUUID="f0b2f063-31de-49dc-924c-3efef007d3cf"
/dev/nvme0n1p4: UUID="80C63676C6366C92" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="60a1ca5b-7f89-4577-b2d0-f3eedb97d162" # Windows 10 Partition
/dev/nvme0n1p5: UUID="23583f5b-dce9-49c5-89ce-0132af0fe53b" TYPE="ext4" PARTLABEL="debian" PARTUUID="ae7abb86-6b9a-48b1-bf66-8c3bf613ed8a" # Linux Root Partition
/dev/nvme0n1p6: UUID="ec296632-d6e3-4e0e-840f-14264f5d55be" TYPE="swap" PARTLABEL="swap" PARTUUID="5e5d6ec0-a51b-4384-9a00-752623a893cf"
/dev/nvme0n1p7: UUID="fad7fbbd-2a1d-4771-96a7-3adab17d2db4" TYPE="ext4" PARTLABEL="home" PARTUUID="0c570afa-a661-4ff7-9717-edcf4d57abb5"
Der Start der Installations-CD im Rettungsmodus lieferte die Fehlermeldung: „Es konnten vom Installer keine Partitionen gefunden werden. Sie werden nicht in der Lage sein ein Root-Dateisystem einzubinden. Gründe dafür können sein, dass der Kernel Ihre Festplatten nicht erkannt hat, die Partitionstabelle nicht lesen konnte ...“.
Folglich wurde eine Live-DVD „Jessie“ gebootet. Dies ist allerdings nur im Bios-Modus möglich, da die original heruntergeladene live DVD anscheinend keinen EFI-Modus unterstützt.
Im Terminal:
# sudo mount /dev/nvme0n1p5 /mnt
# sodu mount /dev/nvme0n1p2 /mnt/boot/efi
# sudo for i in dev dev/pts proc sys sys/firmware; do mount --bind /$i /mnt/$i; done
# sudo chroot /mnt
Jetzt den GRUB2 installieren:
sudo apt-get install grub-efi-amd64
sudo apt-get install grub-efi-amd64-bin
sudo apt-get install grub2-common
sudo update-grub
sudo grub-install schlägt fehl weil die Jessie DVD nicht im EFI-Modus gebootet war bzw. nicht im EFI-Modus zu booten ist.
Deshalb wurde nun das LiveSystem Ubuntu 15.10 Wily Werewolf im EFI-Modus gebootet.
- Mounten der Partitionen und chroot-Umgebung:
kubuntu@kubuntu:~$ sudo -s
root@kubuntu:~# mount /dev/nvme0n1p5 /mnt
root@kubuntu:~# mount /dev/nvme0n1p2 /mnt/boot/efi
root@kubuntu:~# for i in dev dev/pts proc sys sys/firmware; do mount --bind /$i /mnt/$i; done
root@kubuntu:~# chroot /mnt
- Installieren der grub.cfg und der grubx64.efi in EFI\debian\:
root@kubuntu:~# update-grub
root@kubuntu:~# grub-install
Normalerweise wird in das NVRAM des Mainboards der Booteintrag automatisch eingetragen. Nach einem Neustart war allerdings kein Booteintrag für Stretch vorhanden. Somit war Stretch nach wie vor nur mit Super Grub2 Disk bootbar.
Deshalb wurde nun das LiveSystem Ubuntu 15.10 Wily Werewolf nochmals im EFI-Modus gebootet.
- Mounten der Partitionen und chroot-Umgebung:
kubuntu@kubuntu:~$ sudo -s
root@kubuntu:~# mount /dev/nvme0n1p5 /mnt
root@kubuntu:~# mount /dev/nvme0n1p2 /mnt/boot/efi
root@kubuntu:~# for i in dev dev/pts proc sys sys/firmware; do mount --bind /$i /mnt/$i; done
- Installieren des efibootmgr:
root@kubuntu:~# apt-get install efibootmgr
- Eintrag im NVRAM erstellen:
sudo efibootmgr -c --bootnum 0009 -d /dev/nvme0n1 -p 2 -L "GRUB2" -l \\EFI\\debian\\grubx64.efi
- Ausgabe bestätigt, dass Eintrag im NVRAM vorhanden ist:
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0009,0005,0000,0002,0003,0001,0006
Boot0000* Windows Boot Manager
Boot0001* Hard Drive
Boot0002* CD/DVD Drive
Boot0003* Generic STORAGE DEVICE 0903
Boot0005* UEFI: OCZ ATV 1100, Partition 1
Boot0006* OCZ ATV 1100
Boot0009* GRUB2
- Eintrag im NVRAM kontrollieren:
efibootmgr -v
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0009, 0005,0000,0002,0003,0001,0006
Boot0000* Windows Boot Manager HD(2,GPT,9083a297-2af9-43f9-be83-9d2af9d5c642,0xe1800,0x31800)/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.}....................
…..
Boot0009* GRUB2 HD(2,0,00000000000000000000000000000000,0x0,0x0)/File(\EFI\debian\grubx64.efi)
Es fällt auf, dass beim Windows Booteintrag GPT und die UUID noch angegeben sind, was beim GRUB Booteintrag mit 0en ersetzt ist.
Nach einem Neustrart ist der Booteintrag „GRUB2“ wieder aus dem NVRAM verschwunden und Debian Stretch lässt sich wieder nicht mehr booten.
Recherche im Internet ergab bei: „https://wiki.ubuntuusers.de/efibootmgr“:
„Bekannte Probleme
In der Praxis kann es im Einzelfall Systeme geben, bei denen das Setzen der Einträge zunächst korrekt zu funktionieren scheint. Die Einträge werden so lange das System noch läuft mittels efibootmgr gelistet. Bei einem Neustart erscheinen sie dann aber nicht im EFI-Boot-Menü und auch efibootmgr listet sie dann nicht mehr.“
„Es darf bei einigen Rechnern in der Firmware (Setup) das secure-boot nicht aktiviert sein - ansonsten werden keine Einträge in das NVRAM übernommen! „
Meine Einstellungen beim Asus Z170 Deluxe:
Boot – Sicheres Bootmenü:
Sucure Boot Status: aktiviert (lässt sich nicht ändern)
Art des Betriebssystems: Anderes Betriebssystems
Es wurde also von „Windows-UEFI-Modust“ auf „Anderes Betriebssystem“ umgestellt.
Handbuch Asus Z170 Deluxe:
„Secure Boot
Hier können Sie die Secure Boot-Einstellungen konfigurieren und seine Tasten verwalten, um das System vor unbefugtem Zugriff und Malware während des POST zu schützen.
OS Type [Windows UEFI mode] :
[Windows UEFI Modus]
Mit diesem Element können Sie Ihr installiertes Betriebssystem auswählen. Führt die Microsoft Secure Boot Check aus. Wählen Sie diese Option nur beim Booten im Windows UEFI-Modus oder anderen Microsoft Secure Boot kompatiblen BS.
[Other OS]
Holen Sie sich die optimierte Funktion beim Booten unter Windows Non-UEFI-Modus. Microsoft Secure Boot unterstützt nur Windows UEFI-Modus“
Aussschalten des Secure-Bootmenüs
Nun wurde das Secure-Boot unter Windows deaktiviert. Ein Video bei Youtube zeigt wie man in Windows 10 die UEFI Einstellungen ändert: https://www.youtube.com/watch?v=l7VN8UBCdRo. Nach diesem Schritt wurden alle Schlüssel für Windows 10 im UEFI gelöscht. Damit war Secure-Boot deaktiviert.
Booten des Live-Systems und erstellen des Eintrages im NVRAM
Nun wurde wieder das LiveSystem Ubuntu 15.10 Wily Werewolf im EFI-Modus gebootet und der Eintrag fürs NVRAM nach den entsprechenden Befehlen erstellt.
sudo efibootmgr -c --bootnum 0009 -d /dev/nvme0n1 -p 2 -L "GRUB2" -l \\EFI\\debian\\grubx64.efi
Wieder war der Eintrag wie oben bereits dargestellt fürs NVRAM vorhanden. Nach einem Reboot war der Eintrag wieder verschwunden.
Lösung des Problems mit EasyUEFI
Da es bei dem System um ein Dualbootsystem mit Windows 10 handelt, wurde nun Windows 10 gebootet und EasyUEFI installiert. Mit EasyUEFI wurde ein Booteintrag beim Pfad mit durchsuchen mit Create erstellt. Das System wurde neu gebootet und der Booteintrag für Debian Stretch war dauerhaft vorhanden. Das System bootet seitdem einwandfrei. EasyUEFI ist wirklich ein einfach zu bedienendes grafisches Tool unter Windows zur Erstellung von Booteinträgen im NVRAM.
Zum Vergleich nochmals die Booteinträge:
Booteintrag erstellt mit EasyUEFI mit Windows 10 (funktioniert):
Boot0001* GRUB2 HD(2,GPT,9083a297-2af9-43f9-be83-9d2af9d5c642,0xe1800,0x31800)/File(\EFI\DEBIAN\GRUBX64.EFI)
Booteintrag erstellt mit Linux evibootmgr (funktioniert nicht):
Boot0009* GRUB2 HD(2,0,00000000000000000000000000000000,0x0,0x0)/File(\EFI\debian\grubx64.efi)
Sieht man oben nach, so ist auch der Windows-Booteintrag ähnlich wie der funktionierende Booteintrag von Debian Stretch erstellt.
Interssant ist noch, dass eine zwischendurch versuchte Neuinstallation von Ubuntu 15.10 Wily Werewolf ordnungsgemäß durchlief, aber bei dem Booteintrag im NVRAM das gleiche Problem wie Debian Stretch hatte. Es waren im Booteintrag für das NVRAM die vielen 0en eingetragen und nach einem Reboot war der Booteintrag auch hier verschwunden.
Booteintrag nicht im EFI-Menü/NVRAM
- habakug
- Moderator
- Beiträge: 4314
- Registriert: 23.10.2004 13:08:41
- Lizenz eigener Beiträge: MIT Lizenz
Re: Booteintrag nicht im EFI-Menü/NVRAM
Hallo!
Der Fehler liegt hier:
Mit -d /dev/device wird die Platte (Disk) angegeben, die den Loader enthält. Ist per default "/dev/sda". Dann wird auch die richtige ID vergeben und nicht nur Nullen. Die Partition wird mit dem -p 2 angegeben.
Gruss, habakug
man efibootmgr:
-d | --disk DISK
The disk containing the loader (defaults to /dev/sda)
Der Fehler liegt hier:
Code: Alles auswählen
- Eintrag im NVRAM erstellen:
sudo efibootmgr -c --bootnum 0009 -d /dev/nvme0n1 -p 2 -L "GRUB2" -l \\EFI\\debian\\grubx64.efi
Gruss, habakug
man efibootmgr:
-d | --disk DISK
The disk containing the loader (defaults to /dev/sda)
Re: Booteintrag nicht im EFI-Menü/NVRAM
Hallo,
macht dann das Installationsprogram von Ubuntu 15.10 Wily Werewolf den selben Fehler weil kein Eintrag im NVRAM erstellt wird, obwohl die Installation vollständig und anscheinend fehlerfrei durchläuft? Kommt das Installationsprogramm auch mit der Festplatte von Samsung MZ-V5P512BW 512 GB, Solid State Drive(M.2, 950 Pro) (/dev/nvme0n1) nicht zurecht?
Übrigens gparted erkennt die 1000GB Crucial MX200 2.5 SSD und HDD-Festplatte. Gparted erkennt aber nicht die Samsung MZ-V5P512BW 512 GB, Solid State Drive(M.2, 950 Pro). Zu dieser Festplatte ist überhaupt kein Eintrag vorhanden.
Nur um Missverständnisse vorzubeugen, die Crucial SSD und HDD waren bei der Installation nicht angeschlossen.
schöne Grüße
Roland
macht dann das Installationsprogram von Ubuntu 15.10 Wily Werewolf den selben Fehler weil kein Eintrag im NVRAM erstellt wird, obwohl die Installation vollständig und anscheinend fehlerfrei durchläuft? Kommt das Installationsprogramm auch mit der Festplatte von Samsung MZ-V5P512BW 512 GB, Solid State Drive(M.2, 950 Pro) (/dev/nvme0n1) nicht zurecht?
Übrigens gparted erkennt die 1000GB Crucial MX200 2.5 SSD und HDD-Festplatte. Gparted erkennt aber nicht die Samsung MZ-V5P512BW 512 GB, Solid State Drive(M.2, 950 Pro). Zu dieser Festplatte ist überhaupt kein Eintrag vorhanden.
Nur um Missverständnisse vorzubeugen, die Crucial SSD und HDD waren bei der Installation nicht angeschlossen.
schöne Grüße
Roland
Re: Booteintrag nicht im EFI-Menü/NVRAM
Man braucht mindestens einen Kernel 3.3, ältere Kernel haben noch keine Treiberuinterstützung für M2-Speicher.rose hat geschrieben:Gparted erkennt aber nicht die Samsung MZ-V5P512BW 512 GB, Solid State Drive(M.2, 950 Pro).
Re: Booteintrag nicht im EFI-Menü/NVRAM
Hallo,
Grüße
Der beim System installierte Kernel ist zur Zeit bei Stretch 4.2.MSfree hat geschrieben:Man braucht mindestens einen Kernel 3.3, ältere Kernel haben noch keine Treiberuinterstützung für M2-Speicher.
Grüße
- habakug
- Moderator
- Beiträge: 4314
- Registriert: 23.10.2004 13:08:41
- Lizenz eigener Beiträge: MIT Lizenz
Re: Booteintrag nicht im EFI-Menü/NVRAM
Hallo!
Gparted kann mit den Dingern erst ab Version "gparted-0.23.0" [1], Da ist Sid mit "gparted-0.19.0-3" [2] noch Meilen entfernt.
Intel definiert das so [3]:
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1258891
[2] https://packages.debian.org/sid/gparted
[3] http://manuals.ts.fujitsu.com/file/1217 ... -ig-en.pdf
[4] https://github.com/linux-nvme/nvme-cli/ ... format.txt
Gparted kann mit den Dingern erst ab Version "gparted-0.23.0" [1], Da ist Sid mit "gparted-0.19.0-3" [2] noch Meilen entfernt.
Intel definiert das so [3]:
Es gibt ein Tool zum Formatieren [4].Two handles will be provided; one for the controller and one for the namespace:
/dev/nvme0n1 (namespace)
/dev/nvme0 (controller)
Gruss, habakugThe <device> parameter is mandatory and may be either the NVMe character
device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1258891
[2] https://packages.debian.org/sid/gparted
[3] http://manuals.ts.fujitsu.com/file/1217 ... -ig-en.pdf
[4] https://github.com/linux-nvme/nvme-cli/ ... format.txt