我刚刚安装了 Debian 10 (Buster)。它工作得很好,直到我重新启动。现在它无法启动。
我重新加载安装程序。当我尝试重新安装时grub
,它要求我重新分区磁盘(尽管这很好)。所以我进入手动分区,并像以前一样进行设置(与 Debian 8 相同)。它说我在第一个分区之前有 1MB 可用空间,它不允许我在任何分区上设置启动标志。
然后我被告知目标文件系统包含可能有问题的文件(是的我知道,我只想进入 grub 安装程序)。 debootstrap 失败(好)。再次选择 Grub-install,被告知这取决于之前的步骤,我选择返回。我现在处于 grub 安装程序中。
我给出了选项:Enter device manually
,我选择它。我接受 /dev/sda
我收到错误:“执行‘grub-install /dev/sda’失败。”这是一个致命错误。
我选择继续并重试/dev/sda1
我现在收到一个错误it seems that this computer is configured to boot via EFI, but …
在 BIOS 设置中,EFI 被禁用(以及尽可能接近禁用:启用“传统”,并在启动选项中选择“传统优先”)。 EFI 不起作用:它无法启动安装介质。它可能在安装过程中已启用,但从启动菜单中选择了 BIOS-boot。该系统之前安装了 Debian Jessie。它还一直在运行 Buster(一周后无法启动的)。上周它也无法启动(类似/相同的问题),但它消失了。一些它是如何启动的。
更新:发现问题,现在我需要找到解决方案
来自 gparted 直播。fdisk -l
节目
- 分区表类型(Disklabel类型):gpt
- 根分区类型:EFI系统
- 磁盘末尾有 3 或 4 个空闲块(用于 GPT 的第二个副本)
我让它工作了
看https://unix.stackexchange.com/a/535029/4778
然而,这有点拼凑:它警告说这是一个不可靠的解决方案。自从这样做以来,我注意到已grub-pc
安装,而不是grub-efi…
(这可能是因为我必须在 BIOS 模式下启动安装程序。我不知道为什么分区表转换为 GPT)。
2020-05-25更新:一直运行无故障。 (也许只有当我弄乱分区时它才不稳定。在下次更换操作系统之前我不需要弄乱分区。)
硬件:Lenovo Yoga 3-11(带有英特尔显卡的yoga3)
答案1
我在 Debian 9 上遇到了类似的问题,但将其安装在以前的版本旁边。
如果您还有 grub2 的现有安装,您应该能够使用它update-grub
来自动检测新安装,或者添加一个可以插入到其中之一的手动条目。4?_自定义下的文件/etc/grub.d/
。
另请检查启动和特别是已在包含引导加载程序的 FAT32 分区上设置了标志。
这就是我所知道的关于使用 UEFI/GPT 启动的全部内容。
答案2
如果您不使用 EFI,则 GPT 磁盘上必须有 1MB 的 grub 引导分区。 (这不是/boot
;它是保存 grub 引导代码。)
我已经达到了现在总是包含这样一个分区的程度,即使系统可能使用 UEFI 启动或者该磁盘不打算用作启动磁盘。这样比较容易记住。
答案3
我设法做到了:
- 我启动了 gparted live,
- 将我的根安装到
/mnt
- 绑定安装
/dev
并/proc
到/mnt/dev
和/mnt/proc
- 尝试过
grub-install
,它不起作用,它发出警告,表明它只能通过执行以下操作才能起作用灰心。 - 我给了它强制选项。有效。
我的猜测是,至少在我下次尝试编辑分区之前,这应该是稳定的。如果一切都好的话,我已经经历了很多更新,并且在进行操作系统更新时只编辑主硬盘的分区表(因为 virtual-box 和 docker 我不进行双引导)。