如何在GPT格式的USB驱动器上以Legacy模式完整安装Ubuntu Desktop系统?
如何在GPT格式的USB驱动器上以Legacy模式完整安装Ubuntu Desktop系统?
我完全懂你的困扰——既想拿捏GPT分区支持最多128个分区的优势,又要在Legacy BIOS模式下把Ubuntu完整装在GPT格式的USB盘上,之前几次尝试都被安装程序自动切到UEFI模式,确实挺闹心的。别慌,我来给你分享亲测有效的步骤:
核心前提:GPT盘Legacy启动的关键
Legacy BIOS本来是为MBR盘设计的,要让它识别GPT盘启动,必须给GPT盘加一个专门的BIOS Boot分区——这个分区不用格式化,大小1MB就够,用来存放GRUB的核心引导文件,没有它的话Legacy模式根本认不出GPT启动盘,这也是之前安装程序自动跳UEFI的主要原因。
步骤1:预先给目标GPT USB盘做好分区布局
用安装U盘启动进入试用模式(或者安装到分区步骤选“其他选项”),打开GParted或者安装程序里的分区工具:
- 确认目标USB盘已经是GPT格式(如果不是,先删除所有分区,然后把磁盘类型改成GPT)
- 创建一个1MB的空白分区(不要选任何文件系统),在分区工具里把它标记为
bios_grub(GParted里右键选“管理标志”,勾选bios_grub) - 接着创建你的根分区(/):选120GB空间,文件系统设为ext4,挂载点指定为
/ - 按需创建其他分区(比如/home、swap分区等),GPT支持最多128个,随便加就行
步骤2:强制安装程序以Legacy模式运行
- 先进入电脑BIOS设置,确保是从安装U盘以Legacy BIOS模式启动(把UEFI启动选项暂时禁用或者设为Legacy优先)
- 进入Ubuntu安装的GRUB菜单时,不要直接选“安装Ubuntu”,而是按
e键编辑启动参数 - 找到带有
quiet splash的那一行,在末尾加上noefi参数,然后按F10启动,这样就能强制安装程序在Legacy模式下工作,不会自动切换到UEFI
步骤3:手动完成安装,指定引导器位置
- 到安装类型那一步,一定要选**“其他选项”(手动分区)**,绝对不能选自动安装
- 找到你之前创建的根分区,确认挂载点是
/,然后在“安装启动引导器的设备”下拉框里,选择整个目标USB盘(比如/dev/sdb,不要选某个分区)——因为GRUB需要把引导信息写到GPT盘的特定区域,配合之前的bios_grub分区实现Legacy启动 - 剩下的安装步骤按正常流程走就行
步骤4:安装后验证
- 安装完成重启电脑,从目标USB盘以Legacy模式启动,确认Ubuntu能正常加载
- 可以打开终端,输入
[ -d /sys/firmware/efi ] && echo UEFI || echo Legacy,如果输出Legacy就说明是Legacy模式启动成功;再输入sudo parted -l,能看到目标盘是GPT格式,且有标记为bios_grub的1MB分区
备注:内容来源于stack exchange,提问作者Noah Domingues




