如何制作一个既支持uefi又支持老式bios启动的移动硬盘

启动讨论 grub/grub2/syslinux/grub4dos/Lilo
回复
头像
百草谷居士
帖子: 3910
注册时间: 2006-02-10 16:36
系统: Mint21.1/Deepin20.8

如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#1

帖子 百草谷居士 » 2018-09-03 13:58

想使用移动硬盘或者优盘制作一个便携式的ubuntu系统,希望能支持传统的bios启动,也能支持uefi启动。
debian 12 / 深度系统 20.9 / Mint 21.3

为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
头像
astolia
论坛版主
帖子: 6399
注册时间: 2008-09-18 13:11

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#2

帖子 astolia » 2018-09-03 15:13

这事我干过。弄了一个包含winpe和ubuntu18.04的u盘,两个都支持uefi和bios启动。另外还留了个分区当成一般的u盘空间用。

时间过去有点久了,只能说个大概流程,可能会有遗漏的地方

先是用wepe的制作工具 http://www.wepe.com.cn/download.html,把u盘弄成同时支持uefi和bios的winpe启动盘。我选的是双分区方案,自己再将非EFI分区再分成了两个
然后把efi分区下EFI/BOOT/bootx64.efi复制一份为bootx64_ms.efi
再在uefi模式下给u盘安装ubuntu。安装完后去sudo apt install grub-pc-bin,让grub支持bios启动
然后修改/etc/grub.d/40_custom,增加wepe的项目,里面1234-5678是efi分区的序列号,根据自己的情况改

代码: 全选

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

set timeout=10

menuentry "WePE" {
	insmod usbms
	insmod part_gpt
	insmod part_msdos
	insmod fat
	insmod search_fs_uuid
	insmod ntldr
	search --no-floppy --fs-uuid --set=root 1234-5678
	ntldr ($root)/WEPE/WEPE64
}

menuentry "WePE UEFI" {
	insmod usbms
	insmod part_gpt
	insmod part_msdos
	insmod fat
	insmod search_fs_uuid
	insmod chain
	search --no-floppy --fs-uuid --set=root 1234-5678
	chainloader ($root)/EFI/BOOT/bootx64_ms.efi
}
最后update-grub更新一下
头像
百草谷居士
帖子: 3910
注册时间: 2006-02-10 16:36
系统: Mint21.1/Deepin20.8

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#3

帖子 百草谷居士 » 2018-09-04 9:16

好,有时间我折腾下试试
debian 12 / 深度系统 20.9 / Mint 21.3

为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
头像
百草谷居士
帖子: 3910
注册时间: 2006-02-10 16:36
系统: Mint21.1/Deepin20.8

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#4

帖子 百草谷居士 » 2018-09-04 15:53

能不能在ubuntu下直接把移动硬盘搞成能支持传统的bios启动,也能支持uefi启动的?
debian 12 / 深度系统 20.9 / Mint 21.3

为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
头像
astolia
论坛版主
帖子: 6399
注册时间: 2008-09-18 13:11

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#5

帖子 astolia » 2018-09-04 16:25

关键在于用mbr分区格式,别用gpt。然后在uefi启动模式下按正常方法安装系统就是了。装好了再给grub增加bios模式支持。
如果不需要更新系统,直接dd if=xxx.iso of=/dev/sdx应该也行
头像
百草谷居士
帖子: 3910
注册时间: 2006-02-10 16:36
系统: Mint21.1/Deepin20.8

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#6

帖子 百草谷居士 » 2018-09-05 8:47

mbr分区格式能创建efi分区吗?
debian 12 / 深度系统 20.9 / Mint 21.3

为何热衷于搞发行版的多,搞应用程序开发的少?Linux最多余的就是各种发行版,最缺的就是应用程序,特别是行业应用程序。
头像
astolia
论坛版主
帖子: 6399
注册时间: 2008-09-18 13:11

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#7

帖子 astolia » 2018-09-05 10:24

efi分区就是一个带EFI标记的fat32分区而已,跟分区表格式没关系。uefi一般会有对mbr的兼容支持
头像
男菜鸟
帖子: 1351
注册时间: 2008-12-16 14:01
来自: 漂在江湖

Re: 如何制作一个既支持uefi又支持老式bios启动的移动硬盘

#8

帖子 男菜鸟 » 2018-10-01 23:10

mark
回复