Ich hatte eine gut laufende Installation von Debian Jessie, aber dann lief ich apt-get update && apt-get upgrade && apt-get dist-upgrade
.
Nach dem Neustart wurde das BIOS direkt aufgerufen. Ich habe festgestellt, dass Grub fehlt, also habe ich eine Live-CD ausgeführt und eingegeben Rescue mode
, meine Root-Partition + die Boot-Partition gemountet und die folgenden Befehle ausgeführt:
Grub findet das Linux-Image:
root@debian:~# update-grub
Generating grub configuration file ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Found linux image: /boot/vmlinuz-4.9.0-3-amd64
Found initrd image: /boot/initrd.img-4.9.0-3-amd64
Found linux image: /boot/vmlinuz-4.9.0-0.bpo.3-amd64
Found initrd image: /boot/initrd.img-4.9.0-0.bpo.3-amd64
Found linux image: /boot/vmlinuz-3.16.0-4-amd64
Found initrd image: /boot/initrd.img-3.16.0-4-amd64
Found Ubuntu 16.10 (16.10) on /dev/sdb2
Adding boot menu entry for EFI firmware configuration
done
Und dann grub-install
:
root@debian:~# grub-install /dev/sda
Installing for x86_64-efi platform.
Could not prepare Boot variable: No such file or directory
grub-install: error: efibootmgr failed to register the boot entry: Input/output error.
lsblk
::
root@debian:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223.6G 0 disk
├─sda1 8:1 0 92.6G 0 part /
├─sda2 8:2 0 130.4G 0 part
└─sda3 8:3 0 573M 0 part /boot/efi
Habe ich etwas falsch gemacht? Ist auf meiner /boot/efi
Partition zu wenig Platz ?
root@debian:~# ls -l /boot/efi/EFI/debian/
total 120
-rwx------ 1 root root 121856 Jul 20 20:29 grubx64.efi
efibootmgr
zeigt keine Debian-Installation an:
root@debian:~# efibootmgr --verbose | grep debian
Bearbeiten:
Ich erhalte diesen Fehler jedes Mal, wenn ich versuche, einen Bootloader zu erstellen, indem ich efibootmgr
:
grub-install: info: executing efibootmgr -c -d /dev/sda -p 3 -w -L grub -l \EFI\grub\grubx64.efi.
Could not prepare Boot variable: No such file or directory
grub-install: error: efibootmgr failed to register the boot entry: Input/output error.
Antworten:
Die efibootmgr-Fehler wurden behoben, indem die Boot-Variablen für Folgendes bereitgestellt wurden
efibootmgr
:Und dann
efibootmgr
gab mir Fehler über den Raum:Behoben, dass durch Löschen von Dump-Dateien:
Und dann lief das übliche
und es lief erfolgreich!
quelle
rm /sys/firmware/efi/efivars/dump-*
und dem Ausführen auch einen Neustart durchführen musstegrub-install
.Ich hatte das gleiche Problem unter Ubuntu mit meinem Asus-Motherboard. Ich habe keine Dump-Dateien zum Löschen gefunden. Oder irgendetwas Großes, das sich sicher zu löschen anfühlte.
Ich konnte das Problem beheben, indem ich das System mit der
efi_no_storage_paranoia
Kernel-Befehlszeilenoption neu startete. Ich hatte bereits den Ubuntu UEFI-Starteintrag verloren. Glücklicherweise konnte ich immer noch von meiner Ubuntu-Partition booten, indem ich in den BIOS-Einstellungen zur Boot-Auswahl ging. Danach habe ich die "e" -Taste im Grub-Menü verwendet, um diese Option zur Kernel-Befehlszeile hinzuzufügen. Dann konnte ich mein zuvor fehlgeschlagenes System-Upgrade durch Ausführen beendenapt -f install
.Wenn sich das System im nicht bootfähigen Zustand befindet, besteht eine Möglichkeit darin, vom Ubuntu-USB-Stick zu booten und das Problem von dort aus zu beheben.
Wenn das Problem später erneut auftritt, werde ich erwägen, diese Kerneloption dauerhaft hinzuzufügen
/etc/default/grub
.Der Kernel ist sehr paranoid, wenn es darum geht, den variablen UEFI-Raum auszufüllen. Es wird gemeldet, dass es voll ist, auch wenn noch Platz vorhanden ist. Dies soll verhindern, dass der Platz auf einigen Motherboards dauerhaft ausgefüllt wird. Ich vermute, dass dies mit meinem Motherboard zu paranoid sein könnte. Möglicherweise startet das BIOS die Speicherbereinigung erst, wenn der Speicherplatz voller wird.
Zuvor konnte ich mich mithilfe des Headers "CMOS löschen" auf meinem Motherboard von derselben Situation erholen. Gut, eine Softwarelösung zu finden.
quelle
Versuchen Sie, die Festplatte anzugeben, die den Loader enthält, wenn Ihre Festplatte nicht / dev / sda ist:
quelle