在 Kali Linux VM 上找不到符号“grub_file_filters”

Ale*_*iaK 6 grub virtual-machine virtualbox kali-linux

apt-get 更新后;apt-get upgrade 在我的 Kali Linux VM 上成功,重新启动以完成一些安装并进入 grub 救援模式。

关于 grub 救援 >

ls,返回:

(hd0) (hd0,msdos1) (hd0,msdos5)
Run Code Online (Sandbox Code Playgroud)

设置,返回:

cmdpath=(hd0)
prefix=(hd0,msdos1)/boot/grub
root=hd0,msdos1
Run Code Online (Sandbox Code Playgroud)

我在 (hd0)/boot, (hd0,msdos1)/boot, (hd0,msdos5)/boot 上运行ls,并确认了仅在 (hd0,msdos1) 上可启动映像的结果

insmod linux,返回以下 grub 错误:

symbol 'grub_file_filters' not found 
Run Code Online (Sandbox Code Playgroud)

想看看 grub 在哪里,所以尝试了insmod kali返回:

/boot/grub/i386-pc/kali.mod not found
Run Code Online (Sandbox Code Playgroud)

因此,似乎在我收到错误之前找到了 linux 模块。

通过研究,发现此错误与文件系统/USB 设备有关,但由于这是一个虚拟映像(我在 VirtualBox 上),我不确定如何修复它。

从头开始重新安装没问题,但对这个错误及其所指/如何解决感到好奇。

感谢您的任何见解

附加说明: 这是从启动 VM 到执行上述某些 ls 命令后屏幕上的输出

error: symbol ‘grub_file_filters’ not found. 
Entering rescue mode... 
grub rescue> ls 
(hd0) (hd0,msdos5) (hd0,msdos1) 
grub rescue> ls (hd0) 
(hd0): Filesystem is unknown. 
grub rescue> ls (hd0,msdos5) 
(hd0,msdos5): Filesystem is unknown. 
grub rescue> ls (hd0,msdos1) 
(hd0,msdos1): Filesystem is ext2. 
grub rescue> ls (hd0)/boot
error: unknown filesystem
grub rescue> ls (hd0,msdos5)/boot
error: unknown filesystem
grub rescue> ls (hd0,msdos1)/boot
./ . ./ System.map-4.18.0-kali2-amd64 config-4.18.0-kali2-amd64 
initrd.img—4.18.0-kali2-amd64 vmlinuz-4.18.0-kali2-amd64 
grub/ config-4.19.0-kali5-amd64 vmlinuz-4.19.0-kali5-amd64 
System.map-4.19.0-kali5-amd64 initrd.img-4.19.0-kali5-amd64
grub rescue> 
Run Code Online (Sandbox Code Playgroud)

Ian*_*anD 3

在 OSX 上对我有用的是结合 Daniel Simon 的答案和 ddburrjr 的评论。

  1. 从 Kali Linux 的官方网页下载新的 .iso 映像。
  2. 启动 VirtualBox 并打开 Kali Linux 虚拟机的设置。将下载的iso镜像作为虚拟CD添加到“存储页面”中。如何?选择“控制器:IDE”并按右侧的 CD 按钮,“选择磁盘”,然后选择下载的 .iso 文件。
  3. 启动时按 F12,然后按“C”从 CD_ROM 启动
  4. 在启动菜单中选择“Live (amd64)”以从 .iso 文件运行 Kali Linux。
  5. 请按照以下说明进行操作https://www.youtube.com/watch?v=5spKO02G5v4
  6. 完毕!Kali Linux 从虚拟硬盘再次启动