Ubuntu+Windows双系统修复引导+更改启动顺序

修改 GRUB 配置(推荐)

在 Ubuntu 中按 Ctrl + Alt + T 打开终端,执行以下命令编辑 GRUB 配置文件:

bash 复制代码
sudo nano /etc/default/grub

配置文件中关键参数说明:

conf 复制代码
GRUB_DEFAULT=0                # 默认启动项索引(从0开始)
GRUB_TIMEOUT=10               # 菜单显示等待时间(秒)
GRUB_TIMEOUT_STYLE=menu       # 显示样式(hidden/menu)

确定 Windows 启动项位置:

bash 复制代码
grep "menuentry" /boot/grub/grub.cfg

设置默认启动项(两种方式):

conf 复制代码
GRUB_DEFAULT=1                # 数字索引方式(示例为第2项)
GRUB_DEFAULT="Windows Boot Manager (on /dev/sda1)"  # 精确名称匹配
#如果是固态硬盘则设置如下:
GRUB_DEFAULT="Windows Boot Manager (on /dev/nvme0n1p1)"

调整超时时间(可选):

conf 复制代码
GRUB_TIMEOUT=5                # 建议保留3秒以上操作时间

保存修改并更新配置:

bash 复制代码
sudo update-grub
sudo reboot

使用 GRUB 自定义菜单(高级)

创建自定义配置文件:

bash 复制代码
sudo nano /etc/grub.d/40_custom

添加自定义启动项示例:

conf 复制代码
menuentry "Windows 10 (Custom)" {
    insmod part_gpt
    insmod chain
    set root='(hd0,gpt1)'
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}

更新配置后验证:

bash 复制代码
sudo update-grub
grub-mkconfig | grep "menuentry"  # 检查新条目

应急恢复方案

当配置错误导致无法启动时:

  1. 使用 Ubuntu 安装U盘启动
  2. 选择"Try Ubuntu"进入Live模式
  3. 挂载原系统分区并修复:
bash 复制代码
sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot/efi
sudo chroot /mnt
grub-install /dev/sda
update-grub

注意事项

  • 修改前建议备份原配置文件:
bash 复制代码
sudo cp /etc/default/grub /etc/default/grub.bak
  • 精确名称匹配时需注意:
    • 区分英文引号与中文引号
    • 保留原始条目中的特殊符号
    • EFI分区路径可能随硬件变化

验证配置

成功更新后,终端会显示:

复制代码
Generating grub configuration file ...
Found Windows Boot Manager on /dev/sda1
done
相关推荐
꯭自꯭闭꯭7 小时前
达梦事物特性及MVCC
linux·运维·数据库
YCOSA20258 小时前
Windows11_InsiderPreview_EnterpriseVL_x64_zh-cn_29680_1000.iso 官方直链
windows
羔羊++8 小时前
18_实验十七_其他命令与自定义启动变量
linux
怎么没有名字注册了啊9 小时前
Windows Server 2008 R2 如何开启Aero
windows
DYWorker00110 小时前
Linux驱动:RK3568 GMAC + YT8531C 千兆以太网全流程解剖
linux
lingchen190611 小时前
Windows CMD 的 `cd`(change directory,切换目录)命令
windows·命令模式
lisanmengmeng12 小时前
NRPE 添加命令(一)
linux·运维·服务器
ITHAOGE1512 小时前
下载 | Win11 26H2 正式版发布!(ISO映像、2026年度版本、26300.9457、Windows 11)
windows·科技·微软·电脑
树下水月13 小时前
Typora破解
linux·服务器·前端
沫璃染墨13 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理