ubuntu开机错误
1.开机画面
1 | ubuntu error:unknown filesystem |
2.跳到答案
3.过程1
在学习 linux 系统操作时,使用 fdisk 工具修改了 /dev/sda5 分区的文件系统,将其从 Linux 修改为了 Linux LVM
具体操作:
1 | root@xbc:/# fdisk /dev/sda |
修改完后,当下并没有发生什么错误,后来也就没管。
因为是虚拟机,所以也没有关机过。后来系统更新,重启完后,就发现无法正常进入系统,进入开机引导:
1 | ... |
在此模式下,输入命令:
1 | grub rescue> ls |
以下是我一开始查询到的解决方案
4.方案1
因为是初次遇到,就去百度,多数回答都是 ls 以上三个序列,找到 Ubuntu 的安装分区:
1 | ls (hd0) |
其中一个有分区信息后,设置引导程序:
1 | set root=hd0,msdosX #X为安装的分区 |
然后输入:
1 | insmod normal |
选择 ubuntu,进入之后启动终端,更新 grub
1 | sudo update-grub |
然而以上方案,我在第一步时就卡住了,ls 三个序列,打印的信息都是 unknown filesystem!
查看他们发生此情况的原因,大多都是在windows上进行了磁盘碎片整理之类的操作,导致找不到引导程序,因此才需要 ls 寻找后重新指定启动位置。
5.过程2
而我的系统产生此错误的原因可能是错误地修改了分区的文件系统,导致分区的引导程序损坏。
通过百度,看到两种进一步处理此问题的方案:
- 在虚拟机上重新建立一个 ubuntu 系统,将原系统硬盘挂载到新系统中,然后进行修复
- 进入 BIOS,使用从光盘启动,进入试用系统后,进行修复
选择方法1感觉太麻烦,而我刚好保存了 ubuntu 的镜像文件,因此尝试方法2。
在开机进入 BIOS 时尝试了几次,都没成功,于是查到
vmware 虚拟机进入 BIOS 的方法,通过 虚拟机->电源->打开电源时进入固件,顺利进入 BIOS
在 BIOS 中将从光盘启动移动到硬盘上面,保存退出
如此顺利加载镜像文件后,进入安装界面,选择 试用 ubuntu
首先我先尝试
fsck -a /dev/sda5
命令修复,结果报错后
fdisk /dev/sda
,将上边修改为 Linux LVM 的文件系统改回 Linux检查超级块
mke2fs -n /dev/sda5
重建超级块e2fsck -b 32768 /dev/sda5
以上命令也报出了错误:
e2fsck:超级块中的幻数有错~~~~
没有头绪
6.方案2
继续查找,看到一条指令
1 | fsck -y /dev/sda5 #其中 -y 参数指定对于出现问题的处理默认动作 |
进行尝试,结果顺利进行了修复!
!!!这里我有点疑问,我一开时输入命令 fsck -a /dev/sda5
翻阅书籍,-a 与 -y 都是 如果检测到错误,自动修复文件系统,为什么前者不行,难道是翻译问题?(待查)
总之修复完后,重启系统,顺利进入!
进入登陆界面前,图形界面中间有一条信息 please remove the installation medium,then press enter
忽视后,进入登陆界面,顺利登陆
至此,以上问题解决。
7.结语
此问题花费了我大约2个小时,耽误了读书时间,不过在解决问题时,查看了很多博客资料,也有很多收获
2个小时,顺利解决一个问题,好于读60页书,不算浪费时间。