请提供制作简单手工制作的持久 USB 的分步说明,该 USB 可启动 BIOS 和 UEFI。请不要使用 ISO9660 或 ISO 启动器,我希望能够轻松修改文件系统。
答案1
简单手工制作的持久 USB
制作使用持久分区的 Grub2 启动程序很容易。*
- 启动已安装的 Ubuntu 或 Live USB。
- 插入目标 USB。
- 启动 GParted。
- 在目标 USB 上创建 GPT 分区表。
- 在左侧创建一个1MB的BIOS启动分区,格式化为未格式化。
- 在其旁边添加一个 300MB FAT32 EFI 启动分区。
- 添加一个足够大的 ext4 根分区以容纳 Ubuntu ISO 的内容(20.04 约为 3GB)。
- 创建标记为 casper-rw 的 ext4 分区
- 如果需要,添加 NTFS 数据分区。
- 应用所有操作。
- 标志分区 1 bios_grub。
- 标记分区 2 启动,特别是
- 关闭 GParted。
- 以管理员身份打开 ISO 的文件夹,使用档案管理器打开 ISO。
- 将 ISO 的内容提取到目标的根分区。
- 将启动和 EFI 文件夹从存档管理器窗口拖放到 EFI 启动分区。
- 编辑 sdx2/boot/grub/grub.cfg,在第一行以 开头的行后添加 set root=(hd0,3)
menuentry
。 - 在---后添加一个空格和单词“persistent”。
安装 grub,如果处于 BIOS 模式或从 USB 驱动器启动,请运行:
sudo mount /dev/sdx2 /mnt sudo grub-install --boot-directory=/mnt/boot /dev/sdx
如果已安装系统处于 UEFI 模式,则启动到目标驱动器并运行上述程序。
*基于 sudodus 的 mkusb 进行引导
答案2
我尝试结合这些方法
- 由 CSCameron 和
- 由我于这个自己动手的链接
我在UEFI 模式运行该系统我创建了一个 USB 启动驱动器,首先创建分区表gparted
而不是从压缩图像文件克隆。
- MSDOS分区表
- 一个 FAT32 分区,用于提取 iso 文件的内容
- 用于持久化的 ext4 分区
创建开箱即用的 BIOS 引导加载程序不起作用
sudo mount /dev/sdx1 /mnt/sd1
sudo grub-install --boot-directory=/mnt/sd1/boot /dev/sdx
这就是我担心的 :-(
我可以安装程序包grub-pc
,但没有使用,相反系统抱怨它无法为 efi 系统安装。所以我删除了程序包grub-efi-amd64-bin
,然后
sudo grub-install --boot-directory=/mnt/sd1/boot /dev/sdx
工作了 :-)
我重新安装grub-efi-amd64-bin
到已安装的系统中,以使其“完成”UEFI 任务。
USB 闪存盘可在 BIOS 模式和 UEFI 模式下工作。我通过自定义菜单项测试了是否具有持久性。
这并不太难,但我不愿意让一个为没有太多经验的用户制作的工具删除并重新安装程序包,grub-efi-amd64-bin
因为它是启动系统的重要组成部分。换句话说,我将把压缩的映像文件保存在韓國并在说明中这个自己动手的链接。