对 USB 进行分区并制作单独的可启动驱动器

对 USB 进行分区并制作单独的可启动驱动器

我正在尝试使用以下方法在 8 GB(当然每个 4 GB)的 USB 驱动器上创建两个分区:分区并创建可启动驱动器Ubuntu 16.04 LTS在第一次驾驶中Linux Mint 18在第二个驱动器中。我成功创建了分区,但在使用启动磁盘创建者。它显示为单个 USB 驱动器。因此,我决定弹出或卸载一个驱动器,在另一个驱动器中创建可启动驱动器,然后再在另一个驱动器中创建可启动驱动器。但两个分区显示为父驱动器,无法单独弹出。有人有解决方案吗?

编辑:我正在尝试使用 USB 分区制作可启动磁盘,以便将操作系统安装到计算机上,而不是从 USB 驱动器分区启动操作系统。

答案1

启动盘创建器仅将 ISO9660 安装到单个分区驱动器。

Yumi Multiboot USB 将在同一分区上进行多个持久安装,但它只能在 Windows 上运行。

MultiBootUSB 还将在同一分区上进行多个持久安装,并且有一个 Linux 版本。

您可以将 GTP 驱动器划分为多个分区,然后使用“其他东西”将操作系统完整安装到每个分区。Grub 应该会自动完成安装。

编辑:

我最喜欢的多引导程序之一是使用 mkusb 制作驱动器,使用默认值,用 FAT32 分区覆盖 ISO9660 分区和 casper-rw 分区作为持久文件夹,向每个唯一命名的持久文件夹添加 casper-rw 文件和 home-rw 文件,并在 NTFS 分区上为 ISO 创建标记为“iso”的文件夹,然后添加一些 ISO。编辑 usbboot/boot/grub.cfg 以循环安装 ISO 文件。包括:persistent persistent-path=/<persistent-folder-name>如果您想要持久性。每个 casper-rw 文件的持久性限制为 4GB,home-rw 文件的持久性限制为 4GB。此方法有几种变体。

以上所有内容对于我来说都适用于 BIOS 和 UEFI。

编辑 2:Linux 安装程序驱动器

使用 UNetbootin 实现多重启动。使用 GParted 创建一个 msdos 闪存驱动器,其 FAT32 分区数量与操作系统一样多(每个约 2GB),分区大小可以增加以满足持久性要求。将第一个分区 (sdb1) 标记为启动。使用 UNetbootin (655) 在每个分区上安装操作系统并根据需要添加持久性,将 chain.c32 从 syslinux 4.07 包复制到第一个分区的根目录。打开第一个分区并复制 syslinux.cfg 并将其另存为 syslinux2.cfg。按如下方式编辑原始 syslinux.cfg:

default menu.c32

label boot_hd0_1
menu label linuxmint 18.2
config syslinux2.cfg

label boot_hd0_2
menu label Ubuntu 16.04.3
com32 chain.c32
append hd0 x

其中 x 是 syslinux 分区号。可能需要针对 UEFI 进行修改。将添加此方法的图形摘要作为单独的答案。

答案2

Sudodus 多重引导驱动器的 mkusb 破解方法。

mkusb 默认值 mkusb 默认值

mkusb 再次使用默认值 mkusb 使用持久性默认值

DUS 控制台 DUS 控制台

GParted 之前 GParted 之前

之后 之后

持久性分区 持久性分区

持久文件夹 持久文件夹

ISO 文件夹 ISO 文件夹

ISO 文件夹内容 ISO 文件夹内容

GRUB 位置 GRUB 位置

grub配置文件 grub配置文件

sudo parted-ls /dev/sdb sudo parted-ls /dev/sdb

sudo lsblk -f /dev/sdb sudo lsblk -f /dev/sdb

答案3

使用 UNetbootin 进行多重引导

UNetbootin 可以快速轻松地安装到多个分区。

分区 将闪存驱动器划分为每个操作系统的一个分区,并为清晰起见对分区进行标记。

UNetbootin 1 使用 UNetbootin 655 将操作系统安装到可用分区。

UNetbootin 2 最后安装到第一个分区,或者手动为第一个分区设置启动标志。

Syslinux 软件包 将 Chain.c32 从 Syslinux-4.07 包复制到第一个分区的根目录。4.03 chain.c32 不起作用。

Ubuntu 分区 将 syslinux.cfg 复制为 syslinux2.cfg

编辑原始 Syslinux.cfg 按照所示替换原始 syslinux.cfg 的内容,为每个操作系统添加一个 chainload 条目。

sudo parted-ls /dev/sdb sudo parted-ls /dev/sdb

sudo lsblk -f /dev/sdb sudo lsblk -f /dev/sdb

配置似乎无法在 UNetbootin 655 的 Linux 版本中工作,如果您不想使用 Windows 版本,这里有一个解决方法。

编辑 syslinux.cfg 以包含链式加载命令 忘记 syslinux2.cfg 并只需编辑原始 syslinux.cfg 以包含其他操作系统的链式加载命令。

当我弄清楚如何使链式加载与 UEFI 一起工作时,我会更新帖子。

相关内容