{music id="1448421768" color="#6a267d" autoplay="autoplay"/}

电脑上安装了window和manjaro系统,当初想着linux系统不用分配太多存储,就随手分配了55G安装了manjaro i3wm :@(内伤) ,我想,当初应该是脑子不正常勒,idea、vscode等各种软件还有git项目,现在50G用剩2.7G :@(抠鼻) 。想着从window C盘再分点出来,嗯,就有现在你看到的这篇随笔 :@(无奈)
图示

一、window系统中分配50G空闲分区

直接进入window存储管理右键创建空闲分区,或者下载个分区助手操作。(略过)

二、产生grub引导错误原因

创建分区后进行ext4格式化,导致新建分区对应挂载点(或者叫盘符?)替换了原来manjaro系统的挂载点。下图示:
lsblk

原本挂载点nvme0n1p4是指向manjaro系统得,现在指向了新创建的分区(50G那个);nvme0n1p5指向原来的manjaro系统(55.3G那个)。(从C盘切下来的空闲分区是紧挨C盘后面得er,想了想,盘符错乱好像也挺正常 :@(看不见) )

盘符错乱就导致了使用manjaro做开机引导的grub程序在原来的挂载点中找不到系统引导入口,所以开机后直接进入grub rescue救援模式,需要宁手动选择系统所在分区。来吧 ヾ(´・ ・`。)ノ

三、grub引导修复

1.确定系统启动挂载点/分区

进入grub模式后输入ls显示所有分区,ls 分区显示指定分区内容:

grub rescue>ls
...(hd0,nvme0n1p4) (hd0,nvme0n1p5)...
grub rescue>ls (hd0,nvme0n1p4)/
...unknown filesystem...
grub rescue>ls (hd0,nvme0n1p5)/
home etc usr ...

如果显示系统根目录内容,就说这个分区就是你原来的系统分区。这里的系统分区是(hd0,nvme0n1p5)

2.normal启动

grub rescue>set root=(hd0,nvme0n1p5)
grub rescue>set prefix=(hd0,nvme0n1p5)/boot/grub
grub rescue>insmod normal
grub rescue>normal

ok,此时你就进入原系统的开机引导界面了,选择manjaro进入系统,进行grub的引导修复

3.修复

# 打开终端
sudo update-grub
sudo grub-install /dev/nvme0n1p5

ok,搞定

标签: grub修复

添加新评论