错误:符号'grub_calloc' not found on Ubuntu Boot [关闭]

deikduxw  于 2024-01-06  发布在  其他
关注(0)|答案(2)|浏览(325)

**已关闭。**此问题不符合Stack Overflow guidelines。目前不接受回答。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题相关,可以发表评论,说明在何处可以回答此问题。
三年前就关门了。
此帖子已于上月编辑并提交审阅,未能重新打开:
原始关闭原因未解决
Improve this question
我正在开发一个在Windows和Linux上运行的Java应用程序,而不是在虚拟机上运行,我需要使用双 Boot ,但是,在每周更新Ubuntu 20.04 LTS后,我尝试重新启动计算机,终端出现错误消息:

error: 'grub_calloc' symbol not found.
Entering recovery mode ...
grub rescue>

字符串
如何解决这个问题?

qqrboqgw

qqrboqgw1#

您需要将grub重新安装到您的 Boot 分区,可以按以下方式完成:

  • Boot 到Linux系统(例如Ubuntu Desktop)。
  • 假设您的实际 Boot 分区是/dev/sda 1,运行以下命令:
sudo apt-get update && apt-get install grub2
 sudo mount /dev/sda1  /mnt    
 sudo grub-install --root-directory=/mnt/  /dev/sda

字符串

  • 重新启动系统时,不要忘记删除实时图像。
ct3nt3jp

ct3nt3jp2#

实际上,没有必要重新安装grub。问题的根本原因是grub的第二阶段没有被安装(升级过程)正确更新。
我的系统是KDE neon (下面是Ubuntu 18.04 LTS),grub软件包升级过程是将一个名为grubx64.efi的文件复制到/ Boot /efi/neon中,grub正在寻找/ Boot /efi/BOOT/bootx64.efi。
当我把/ Boot /efi/ neon /grubx64.efi复制到/ Boot /efi/BOOT/bootx64.efi上时,我的系统再次启动,使用的是Ubuntu升级版(2.02-2ubuntu8.17)中的最新grub。为此,我不得不使用一个live发行版(我使用的是最新的Mint)进行 Boot 。这比重新安装以前版本的grub更快,更容易,更安全。
为什么会这样?我还不知道。如果我有更多的时间进行更深入的调查,我会更新这个答案。
我的系统似乎太复杂了,无法进行引导修复(双NVME磁盘,RAID 1,完全加密,LVM)。
我希望这对某人有帮助。

相关问题