VMware中Ubuntu修复【Grub引导】(解决我痛苦的修复问题T_T)

2023-10-31


前言

启动Linux虚拟机时,出现了Grub引导界面!无论选择引导模式的哪一项都不能立马启动回到界面系统_(:з」∠)_;所以,本文将详细讲解如何解决该问题!


一、导致问题的原因及分析

原因:
昨日着急下班;为了关闭虚拟机,在Linux终端输入了“init 0”指令,但并没有等待它关闭完毕,就匆忙地将Windows7系统关机了 o(╥﹏╥)o,然后在今早启动Linux虚拟机时,出现如下图的情况:
在这里插入图片描述

分析:
根据昨日所为进行分析,Ubuntu关闭完毕前,系统内部正在做保存操作(保存什么、与什么有联系,需深入了解,推荐:《鸟哥的Linux私房菜》;关于Grub,在该本的第4章中略微提起,但重点在第20章3.4中详说,如下图【算是基础认识,对后续讲解方便明白】),而我没等它做完,急着让电脑关机,导致中断了Ubuntu,结果正如你所见到那样——Grub文件受到损坏(可以说是“grub找不到启动文件了”)!
所以会出现Grub引导界面,需要我们进行命令行修复!

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

请好好“食用”吧:
——链接:https://pan.baidu.com/s/1USt7q7ccg1iChIo6s4uwIg
——提取码:t9eu

PS:
除了这个原因,还可能是:硬盘分区出现变动、磁盘异常

GRUB启动命令详解grub命令详解Ubuntu下Grub配置详解

二、各种解决方法的尝试[可跳过]

1.尝试

我选了第一项“Ubuntu,Linux 3.2.0-707generic-pae”(如图所示grud-01),然后加载某配置某缓存(如图所示grud-02),
最后一直黑屏,无任何变化的黑,五彩斑斓的黑~~~:
grud-01

在这里插入图片描述

grud-02

在这里插入图片描述
然后,我不信,我又来尝试,不选择第一项了,而是选择第二项“Ubuntu,Linux 3.2.0-707generic-pae(恢复模式)”,接着跳转这个窗口:

在这里插入图片描述
我每项都回车了,不记得回车了哪项,出现了以下两个结果,当然,然并卵:

在这里插入图片描述
在这里插入图片描述

当回车grub项时,会出现Yes与No选项,我当然选择Yes啦!(如下图,好像有点用,但其实,这只是障眼法哈哈哈,回不到界面系统的方法都是障眼法,哼╭(╯^╰)╮哼)

在这里插入图片描述
PS:
了解Recovery Mode窗口的每一项,
推荐文章:在Ubuntu上使用恢复模式及Recovery Mode各选项的使用方法ubuntu(16.04) 电脑开机,鼠标键盘失灵,进入不了系统

2.尝试

根据该文章Ubuntu虚拟机进入GRUB如何解决,尝试了一下,
先在Grub界面按C键(在英文输入法时)进入命令行,
输入这些指令代码

ls        //找到系统启动盘
set root=(hd0,msdos1) //设置启动盘
linux (hd0,msdos1)/root/vmlinux-4.***(tab键补全内容) root=/dev/sda1
initrd /root/initrd.img-***(tab键补全内容)
boot

输入boot指令,我一回车,到了这个BusyBox界面(整个人懵了⊙▃⊙,作者没说咋搞呀):

在这里插入图片描述

3.解决“2.”的问题

看了看Ubuntu启动进入initramfs模式的解决办法,说输入“exit”指令,然后:
在这里插入图片描述

我的没法这样,exit退出那就真的退出!进入其他模式,不存在的!不存在的!ε=(´ο`*)))唉

在这里插入图片描述

接着我找该文章ubuntu开机进入initramfs的解决办法试试看:

在这里插入图片描述
可是对 我的 来说,然并卵!!!

4.决定简单了解下Grub

可以了解Grub模式,讲解在这:在Ubuntu上使用恢复模式及Recovery Mode各选项的使用方法ubuntu(16.04) 电脑开机,鼠标键盘失灵,进入不了系统!!!
你要是闲着,可以看看(我看的有点头晕哎,我觉得这是因人而异,所以我照样放在这儿了):GRUB整体分析 -很详细 (转)win7系统配置msconfig引导高级选项的说明

看下人家关于开机显示grub的原因文章,还有他接下来的那篇关于如何解决GRUB问题,我那毫不尴尬的微笑,出现了~~~没啥用

5.有个完整的步骤讲述,但…

翻着翻着,找到这篇安装完Ubuntu启动时自动进入grub命令行模式的解决办法,讲得很齐全,但其实漏了linux、initrd等指令,而且我的BusyBox界面,根本使用不了sudo指令。。。

在这里插入图片描述

6.蛮详细的,也许能成功…(我忘记我到底试了没哈哈,若跟 结果成功的文章 相比,指令差不了多少)

这篇Ubuntu开机出现grub指令,无法正常开机内容清晰,该讲的也有提到!
它比 结果成功的文章(讲的就是“三、”内容中提到的文章) 的指令代码 多了“insmod normal、normal”这两个指令!不知道会不会有影响。。。
我隔很长时间才写这篇文,忘记当时试了没,但文章链接我却留着,对自己有点迷~~~~哈哈哈

7.试着试着,遇到“Give root password for maintenace”问题

其实只要把Ubuntu修复了,就不会出现这个问题了!
PS:关于linux系统无法启动,提示Give root password for maintenace的解决办法linux系统Give root password for maintenance解决办法

8.有人说这篇成功解决了问题

没有尝试,这是后续补上的内容:
啦,我发出来了Linux救援模式(grub,/boot破坏修复)


三、尝试成功部分

经过我们多次参考与尝试,只有这篇1解决了我的当务之急【主要有效内容在“修复步骤的‘4、’ ”中!】:
1

首先在grub模式窗口,按c键进入命令行界面:

在这里插入图片描述
2

跳转至命令行界面:

在这里插入图片描述
【3至8的解释如下:(可忽略直接看“8、”的指令代码)】
3、然后,输入 “ls”,回车之后查看自己有什么分区设备,我的有“ (hd0) (hd0,msdos5) (hd0,msdos1)”这几个;
4、再然后,在“碰壁尝试”中,我发现只有(hd0,msdos1)这个分区设备可以使用,而在输入‘set root=(hd0,m’时,按Tab键,会弹出这些结果,这也证实了“只有(hd0,msdos1)可用”的事实:

在这里插入图片描述
接下来(如图success-01所示),输入“set root=(hd0,msdos1)”指令,设置使用的根分区;
5、再输入“set prefix=(hd0,msdos1)/boot/grub”指令,设置启动路径;
6、输入“linux /vmlinuz root=/dev/sdamsdos1”指令
(PS:vmlinuz、sdamsdos1名字我是不知道的,跟着文章写一半,剩下用Tab键加载完整的名字即可!文章作者的Linux加载的是这种形式的名字:vmlinuz-xxx-xxx、sda8,若你跟我的不同,也许跟那个作者的类似!);
7、接着,输入“initrd /initrd.img”,我电脑有两个initrd,跟着文章使用第一个——“initrd”指令,然后用Tab键加载完整的名字,它与那个作者的——“initrd.img-xxx-xxx”不同,若你跟我的不同,也许跟那个作者的类似!);
8、最后输入“boot”指令,Ubuntu突然黑屏,然后加载各种配置(如图success-02所示),,,成功了!!!

success-01

在这里插入图片描述

指令代码:
编号与上面讲解相对应,若哪里没看懂可以看看解释!
3、  ls
4、  set root=(hd0,msdos1)
5、  set prefix=(hd0,msdos1)/boot/grub
6、  linux /vmlinuz root=/dev/sdamsdos1
7、  initrd /initrd.img
8、  boot
success-02

在这里插入图片描述

回到界面:

在这里插入图片描述

输入账号与密码,每个文件都没有缺失!但是,别开心太早,重启一下或者先关机再启动,可能会弹出这个提示:

在这里插入图片描述
受另外一文章指点2,发现启动界面,

还存在CD/DVD(我根本就没有光盘镜像文件,可能配置Ubuntu的时候默认启动时是找光盘镜像文件,则必须出现这一项【如有说错,请评论区或私信告知,谢谢~】),这需要我们手动移除镜像,不让VMware找它:

在这里插入图片描述

解决(把CD/DVD项移除【蓝色箭头】):

在这里插入图片描述

回到启动界面,没有“CD/DVD”项,可以启动再次重启试试,
一定无阻碍了:

在这里插入图片描述

注意,linux-01图,右下角的磁盘图标的右下绿色圆点(如图linux-02),
会发生闪动,说明可以正常启动:
linux-01

在这里插入图片描述

linux-02

在这里插入图片描述

总结

以上就是今天要讲的内容,本文详细讲解了如何解决“从Grub模式回到界面系统”的步骤;希望能帮助到你~有什么问题,可以私信或者评论区留言,进行讨论!祝大家六六大顺,马到成功,前程似锦,未来可期,雷霆嘎巴  ~~^_^~~
在这里插入图片描述
(~ ̄▽ ̄)~ 第一次这么积极,只为挽留你!虽然很明显:为了你一个关注、一个赞,但还是真心的 希望能帮助到你!请关注我后续文章,带给你的惊吓,咳咳,是惊喜╰(°▽°)╯


  1. Ubuntu下修复grub引导 或者 Ubuntu开机进入GRUB手动引导 ↩︎

  2. 关于Linux虚拟机错误“客户机操作系统已禁用CPU。请关闭或重置虚拟机。”的一种解决办法 ↩︎

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VMware中Ubuntu修复【Grub引导】(解决我痛苦的修复问题T_T) 的相关文章

  • 即使 makefile 和源代码存在,为什么“Build Project”在 Eclipse Helios CDT 中显示为灰色?

    我无法构建我的项目 我在 Eclipse Helios 中创建了一个新的 CDT 项目 并告诉它使用现有的源代码和 makefile 这两者都正确显示在 Package 和 Project 视图中 然而 项目 菜单中的 构建全部 和 构建项
  • 在单个命令中使用前缀重命名文件夹中的所有文件

    重命名带有前缀的文件夹中的所有文件 Unix 假设一个文件夹有两个文件 a txt b pdf 那么它们都应该从一个命令重命名为 Unix a txt Unix b pdf 如果您的文件名包含没有空格并且你没有任何子目录 你可以使用一个简单
  • 有关 Linux 内存类型的问题

    关于Linux内存我有以下问题 我知道活动内存是最常访问的内存部分 但是有人可以解释一下 linux 如何考虑将内存位置用于活动内存或非活动内存 主动存储器由哪些部分组成 磁盘 文件缓存是否被视为活动内存的一部分 有什么区别Buffers
  • 如何删除树莓派的相机预览

    我在我的 raspberryPi 上安装了 SimpleCv 并安装了用于使用相机板的驱动程序 uv4l 驱动程序 现在我想使用它 当我在 simpleCV shell Camera 0 getImage save foo jpg 上键入时
  • 无法为 Python 3.4 创建工作虚拟环境

    I 安装Python 3 4 2 https docs python org 3 using unix html building python和我的 Linux Mint 17 1 中的 Virtualenv 12 0 5 然后我尝试创建
  • 对 sf:: 的未定义引用

    我想用 C 制作 GUI 应用程序 发现 SFML 是一个不错的选择 幸运的是 我使用的是 Linux 所以 SFML 2 4 已经安装在我的系统上 所以我开始搜索一些教程并找到了一个制作简单窗口的教程 但是当我运行代码时 出现错误 提示未
  • Docker DNS 设置

    我尝试使用自定义网络和 dos 设置创建 docker 容器 docker网络创建 driver bridge opt com docker network bridge enable ip masquerade true opt com
  • gnome-terminal 新选项卡,使用别名作为要执行的命令

    我已经创建了一个别名 bashrc文件如下 alias myproject cd Desktop myproject 当我重新启动终端时保存文件后 输入myproject带我到项目目录 但是当我尝试使用别名作为新的命令参数时gnome te
  • UDP 广播发送失败:在 Linux 2.6.30 上“网络无法访问”

    我用udp广播写了一个程序 代码段如下 struct sockaddr in broadcast addr socklen t sock len sizeof broadcast addr bzero broadcast addr sock
  • 如何仅将整个嵌套目录中的头文件复制到另一个目录,在复制到新文件夹后保持相同的层次结构

    我有一个目录 其中有很多头文件 h 和其他 o 和 c 文件以及其他文件 这个目录里面有很多嵌套的目录 我只想将头文件复制到一个单独的目录 并在新目录中保留相同的结构 cp rf oldDirectory newDirectory将复制所有
  • grails 上的同步块在 Windows 上有效,但在 Linux 上无效

    我有一个 grails 应用程序 它依赖于服务中的同步块 当我在 Windows 上运行它时 同步按预期工作 但当我在 ams linux 上运行时 会出现 StaleObjectStateException 该问题在以下示例中重现 cla
  • 使用脚本自动输入 SSH 密码

    我需要创建一个自动向 OpenSSH 输入密码的脚本ssh client 假设我需要通过 SSH 进入myname somehost用密码a1234b 我已经尝试过 bin myssh sh ssh myname somehost a123
  • Windows 与 Linux 文本文件读取

    问题是 我最近从 Windows 切换到 Ubuntu 我的一些用于分析数据文件的 python 脚本给了我错误 我不确定如何正确解决 我当前仪器的数据文件输出如下 Header 有关仪器等的各种信息 Data 状态 代码 温度 字段等 0
  • Gradle 1.3:build.gradle 不构建类

    这里有一个新问题 我有一个 build gradle 文件apply plugin java在其中 并与 java 项目 包关联 当我跑步时gradle build从命令行我得到 compileJava UP TO DATE process
  • 如何从 Linux 的 shell 中删除所有以 ._ 开头的文件?

    确实如标题所示 我已将许多文件从 Mac 复制到 Raspberry Pi 这导致了许多以前缀开头的多余文件 我想删除以以下开头的文件夹中的每个文件 我该怎么做 尝试类似的方法 cd path to directory rm rf 或者 如
  • 无关的库链接

    我有一个可能有点愚蠢的问题 因为我很确定我可能已经知道答案了 假设你有静态库A 动态共享库B和你的linux下的程序C 假设库 A 调用库 B 中的函数 并且您的程序调用库 A 中的函数 现在假设 C 在 A 中调用的所有函数都不使用 B
  • 如何从类似于 eclipse 的命令行创建可运行的 jar 文件

    我知道 eclipse 会生成一个可运行的 jar 文件 其中提取并包含在该 jar 文件中的所有库 jar 文件 从命令提示符手动创建 jar 文件时如何执行类似的操作 我需要将所有 lib jar 解压到类文件夹中吗 目前我正在使用 j
  • Linux 上的 Python 3.6 tkinter 窗口图标错误

    我正在从 Python GUI 编程手册 学习 Python GUI 某项任务要求我通过将以下代码添加到我的配方中来更改窗口图标 Change the main windows icon win iconbitmap r C Python3
  • python:numpy 运行脚本两次

    当我将 numpy 导入到 python 脚本中时 该脚本会执行两次 有人可以告诉我如何阻止这种情况 因为我的脚本中的所有内容都需要两倍的时间 这是一个例子 usr bin python2 from numpy import print t
  • 如何查明 Ubuntu 上安装了哪个版本的 GTK+?

    我需要确定 Ubuntu 上安装了哪个版本的 GTK 男人似乎不帮忙 这个建议 https stackoverflow com a 126145 会告诉您安装了哪个 2 0 的次要版本 不同的主要版本将具有不同的包名称 因为它们可以在系统上

随机推荐