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
相关推荐
我的golang之路果然有问题2 小时前
win键盘设置改为类似mac 配置
windows·笔记·macos·计算机外设·键盘
yiSty2 小时前
Windows 10/11下安装WSL Ubuntu
linux·windows·ubuntu
YJlio2 小时前
2025 我用 Sysinternals 打通 Windows 排障“证据链”:开机慢 / 安装失败 / 磁盘暴涨(三个真实案例复盘)
人工智能·windows·笔记
编程研究坊2 小时前
LabelStudio linux 系统下部署教程
linux·运维·服务器
取加若则_2 小时前
gcc/g++
linux·gcc/g++
ybdesire2 小时前
在CentOS 7安装配置CodeQL与运行QL扫描
linux·运维·centos
waves浪游2 小时前
进程控制(下)
linux·运维·服务器·开发语言·c++
Miketutu2 小时前
Dart基础学习
开发语言·windows
KYGALYX2 小时前
Win10/11系统下WSL2+Ubuntu的全流程安装
linux·运维·ubuntu