侧边栏壁纸
博主头像
望月砂博客博主等级

水至清则无鱼,人至贱则无敌

  • 累计撰写 44 篇文章
  • 累计创建 51 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

win11和ubuntu双系统,丢失win11启动项,修复启动菜单

望月砂
2024-02-29 / 0 评论 / 1 点赞 / 469 阅读 / 2246 字

为双系统 Ubuntu grub启动项中添加Windows启动项

文章标签: ubuntu

电脑先安装了win11,后安装了ubuntu22的双系统,两块固态硬盘,两个系统各自使用自己的硬盘分区,(选择的全盘安装在新硬盘,没有自定义分区,所以安装的时候也没有提示与当前windows系统共存)。当安装完ubuntu之后,发现启动项只有ubuntu,没有找到win11启动引导,查看grub配置文件也没有找到windows选项。

由于两块硬盘互不干扰,所以grub在扫描硬盘引导的时候(当前硬盘全新)是找不到另一块硬盘的引导文件的,所以我们要手动把另一块硬盘的启动引导加入进来。

sudo  /etc/default/grub

#默认启动哪个系统(后面加入win引导可以修改为对应序号)

GRUB_DEFAULT=0

#菜单显示

GRUB_TIMEOUT_STYLE=hidden

#隐藏改成菜单:

GRUB_TIMEOUT_STYLE=menu

#停留时间

GRUB_TIMEOUT=0

#0改成5,停留5秒,可以选择系统

GRUB_TIMEOUT=5

#保存,继续执行:

sudo update-grub

重启电脑,BIOS第一启动项改为Ubuntu,会发现启动菜单已经可以看到了。

终端依次执行下面命令

sudo grub-install /dev/sda

sudo chmod -x /etc/grub.d/30_os-prober

#编辑自定义菜单
sudo vim /etc/grub.d/40_custom

在打开的40_custom文件中输入如下一段内容:

menuentry 'Microsoft Windows 10' {

insmod part_gpt

insmod chain

insmod ntfs

set root='(hd1,gpt1)'

chainloader /EFI/Microsoft/Boot/bootmgfw.efi

}

终端继续执行 :

sudo update-grub

重启后,win11选项就出现在grub菜单中了。

但是。选择win11后,系统提示:error: disk 'hd0,gpt1' not found

这是hd0,gpt1这块硬盘不存在,所以需要知道我的win11到底装在哪块盘上,或者说盘的名字是什么?

进入Grub启动菜单后,键入c,进入Grub命令行界面

用ls命令,查看硬盘和分区信息,找到Windows系统的启动分区

grub> ls -l  

找到盘符为win11的硬盘是hd0,msdos1,按esc返回grub菜单,选择win11,键入e,进行编辑

set root='(hd1,msdos1)'

最后按F10启动,可以进入win11。但是再次启动还是硬盘不对,说明在grub下编辑是临时的,进入ubuntu,再次编辑40_custom文件,将硬盘改正sudo update-grub更新菜单。重启就可以进入win11了

设置win11为默认系统:

再次编辑/etc/default/grub文件,将GRUB_DEFAULT=0 改为3,因为我的win11在菜单里是第4条,0是1,3是4,这个梗只有程序员能懂。再次重启,进入默认win11

1

评论区