使用 YUMI 制作多合一系统安装 U 盘

由于自己最近需要在数台电脑上安装不同的操作系统,也为了以后装系统方便,于是决定做一个多合一的操作系统。目前网上多数的系统都是 Mac + Windows 的组合,而我希望能够是 Ubuntu LiveCD + Ubuntu Installer + Windows Installer 的组合,因此研究了一下如何自定义一个多合一 U 盘。

准备工作

  1. 准备一个大小合适的 U 盘。一个 Windows 10 安装镜像需要 5G,我这里需要安装 2 个版本的 Windows 和 2 个版本的 Linux,因此选择了一个 16G 的 U 盘。(后来因为 U 盘是双十一买的,由于到货时间问题,这个 U 盘插在了路由器上,因此换成了 32G 的 U 盘)
  2. YUMI (Your Universal Multiboot Installer) 软件:注意需要 BIOS 版本的(因此在 UEFI 电脑上需要打开 CSM 模式),因为 UEFI 不支持 NTFS,只支持 FAT32 文件系统,而 Windows 安装镜像超过了 FAT32 的文件大小限制,导致了无法写入的问题。所以,要选用非 UEFI 的版本。官网连接

镜像下载

Windows 的镜像,我以前是从 MSDN Itellyou 上下载的,但是由于新的电脑没有下载 ED2K 协议的软件,百度网盘破解版也因为某些原因无法使用,因此选择了更加安全的方案——从微软官方下载。由于微软官方网页上获取 ISO 镜像链接比较麻烦,因此使用另一个 U 盘写入工具 Rufus(相信很多装机的朋友都用过,事实上如果只是制作一个装机 U 盘而非多合一 U 盘的话使用这个软件会更简单)来获取镜像。

打开 Rufus,选择镜像中的“下载”。

Rufus 中的“下载镜像”

随后选择 Windows 版本。最好使用浏览器下载,防止中途意外网络中断导致镜像不完整。

选择镜像版本

下载比较慢,无论是否使用代理都只有 600kb/s 左右,但是还是比较稳定的,我白天去上课前开始下载,中午回到宿舍,两个版本的镜像就下载完毕了。

Ubuntu 的镜像可以直接从官网下载,也可也从清华大学镜像下载,那个快用哪个。

U 盘安装

启动 YUMI,同意使用协议,然后选择你的 U 盘分区(这个软件可以指定在某个分区上安装),然后勾上“NTFS Format”。

YUMI 选择分区和格式化

第二步,首先安装 FreeDOS 镜像。YUMI 支持的是 Balder 版本。

选择 FreeDOS 镜像

然后点击右侧的下载链接,下载 FreeDOS 镜像文件。

下载 FreeDOS 镜像

接着点击“Create”即可。之后再启动软件,安装 Windows。

安装 Windows 需要注意的是:需要选择带“Mulitple”的,不然此 U 盘只能安装一个 Windows Installer。

选择 Windows 镜像

随后的操作同上。重复这个操作,即可安装多个 Windows。

最后安装 Ubuntu,类型选择“Ubuntu”即可。如果需要安装 Server 版,则需要点击右侧“Show All ISOs”。

Show All ISOs

修改 GRUB 配置文件

YUMI 自动创建的 GRUB 配置,需要进入二级菜单,比较麻烦,因此我修改一下 GRUB 的配置,将二级菜单内容移入一级菜单,同时也对系统名称进行修改以符合自己的习惯。

打开 U 盘的 multiboot\syslinux.cfg,可以看到有 APPEND --config-file=/multiboot/menu/<conf_file> 的配置项,找到对应的文件(在 multiboot/menu/ 下),将其中的内容复制到 syslinux.cfg 中(顺序可调整),并去掉原有项目。LABEL 的名称可以修改。这是我最终的配置文件(仅作参考):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
## Menu Entry Created by YUMI - (Your USB Multiboot Integrator)
UI vesamenu.c32
TIMEOUT 300
MENU TITLE Your Universal MultiBoot Integrator
MENU BACKGROUND yumi.png
MENU TABMSG https://www.pendrivelinux.com
MENU WIDTH 72
MENU MARGIN 10
MENU VSHIFT 3
MENU HSHIFT 6
MENU ROWS 15
MENU TABMSGROW 20
MENU TIMEOUTROW 22
menu color title 1;36;44 ##66A0FF ##00000000 none
menu color hotsel 30;47 ##C00000 ##DDDDDDDD
menu color sel 30;47 ##000000 ##FFFFFFFF
menu color border 30;44 ##D00000 ##00000000 std
menu color scrollbar 30;44 ##DDDDDDDD ##00000000 none

LABEL Boot from first Hard Drive
MENU LABEL Continue to Boot from ^First HD (default)
KERNEL chain.c32
APPEND hd1
MENU DEFAULT

LABEL FreeDOS (balder10)
MENU LABEL FreeDOS (balder10)
MENU INDENT 1
KERNEL /multiboot/memdisk
APPEND initrd=/multiboot/balder10/balder10.img

label Ubuntu 19.10 Desktop x64 Installer
menu label Ubuntu 19.10 Desktop x64 Installer
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/Ubuntu-19.10-Desktop-x64/ubuntu.lst

label Ubuntu 18.04 Server LTS x64 Installer
menu label Ubuntu 18.04 Server LTS x64 Installer
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/Ubuntu-18.04-Server-LTS-x64/ubuntu.lst

label Windows Installers
menu label Windows Installers ->
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/menu/win.lst

最后重启,用 U 盘引导,测试,一次成功。可以说,YUMI 是一个十分方便的软件,但是如果要深入使用,还是需要一定的 Linux 的使用经验,以及计算机从 BOIS 到进入系统的引导过程的相关只是。