AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1474717
Accepted
Talaat Etman
Talaat Etman
Asked: 2023-06-26 08:03:19 +0800 CST2023-06-26 08:03:19 +0800 CST 2023-06-26 08:03:19 +0800 CST

创建包含多个 Ubuntu 版本、HBCD-PE-64 和多个 Windows 安装的 USB 驱动器

  • 772

创建包含多个 Ubuntu 版本、HBCD-PE-64 和多个 Windows 安装的 USB 驱动器

在本指南中,我们将了解如何使用 Ubuntu 制作多重启动 USB 驱动器,其中包含:

  1. 启动菜单中有多个 Ubuntu 版本。
  2. 从 ISO 文件或文件夹启动的能力。
  3. 从 USB 分区启动的能力(特别是对于 HBCD PE 或 Windows 安装)。
  4. 无需使用任何特殊的多重引导创建工具。
  5. 无需创建多个分区。
  6. USB 驱动器中的所有文件都将按读/写顺序排列。

    在此输入图像描述

boot
  • 2 2 个回答
  • 42 Views

2 个回答

  • Voted
  1. Best Answer
    Talaat Etman
    2023-06-26T08:03:19+08:002023-06-26T08:03:19+08:00

    本指南中创建 USB 驱动器的步骤包含多个 Ubuntu 版本、HBCD-PE-64 和多个 Windows 安装:
    1- 通过 Ubuntu 磁盘实用程序准备 USB 驱动器。
    2- 将grub2和引导文件安装到 USB 驱动器。
    3- 将 ISO 文件和其他文件夹复制到 USB 驱动器。
    4-编辑启动菜单。
    5- 从新的多重启动 USB 驱动器检查多个 Linux/Ubuntu。
    6-修复/安装 Windows 的简单方法(无需通过 Windows ISO 启动)。

    1- 通过磁盘实用程序准备 USB 驱动器:通过
    磁盘实用程序格式化 -16 GB- USB 磁盘,选择 (MRB/DOS),创建 NFTS 分区(这个非常有用的文件 > 4 GB),将分区标记为可启动。 2- 将 grub2 和引导菜单安装到 USB 驱动器: 通过终端或磁盘实用程序将 USB 驱动器安装到 /mnt 将 grub2 引导加载程序安装到 USB 驱动器:
    在此输入图像描述



    在此输入图像描述

    sudo -i
    grub-install --boot-directory=/mnt/sdx1/boot /dev/sdx #make sure to sellect the right litter to replace with x
    

    3&4- 将您的 iso 文件和其他文件夹复制到 USB 驱动器并编辑启动菜单:
    首先将一个 Ubuntu ISO 文件复制到 USB 驱动器根目录,打开文本编辑器并写入新文件boot/grub/grub.cfg或从任何 Ubuntu ISO 复制一个文件并编辑它制作新的启动菜单条目。作为一个例子,我通过Ubuntu budgie ISO 开始了我的工作,我的工作grub.cfg看起来像这样:

    set timeout=10
    set default=0
    
    menuentry "Run ubuntu-budgie-18.04.5-desktop-i386.iso" {
     loopback loop /ubuntu-budgie-18.04.5-desktop-i386.iso
     linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-budgie-18.04.5-desktop-i386.iso splash --
     initrd (loop)/casper/initrd
    }
    

    保存`grub.cfg`文件并通过USB驱动器重新启动以测试您的工作,您可以登录第一个ISO,继续复制第二个ISO并添加新的菜单项。
    特别是对于 **Ubuntu 23.04**,我们将在条目中添加新行,以便我们可以登录测试 Ubuntu 23.04 而不是安装它。我们的新条目将如下所示:
    menuentry "Try or Install ubuntu-23.04-desktop-amd64" {
         
    loopback loop /ubuntu-23.04-desktop-amd64.iso
    linux (loop)/casper/vmlinuz boot=casper layerfs-path=minimal.standard.live.squashfs iso-scan/filename=/ubuntu-23.04-desktop-amd64.iso quiet splash locale=en_US bootkbd=us console-setup/layoutcode=us noeject --
    initrd (loop)/casper/initrd
    }
    

    如果你删除`layerfs-path=minimal.standard.live.squashfs`,你将直接登录并安装ubuntu 23.04,这样你就可以为此添加其他菜单条目,它看起来像这样:
    menuentry "Try or Install ubuntu-23.04-desktop-amd64" {
         
    loopback loop /ubuntu-23.04-desktop-amd64.iso
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-23.04-desktop-amd64.iso quiet splash locale=en_US bootkbd=us console-setup/layoutcode=us noeject --
    initrd (loop)/casper/initrd
    }
    

    请随意尝试任何其他Ubuntu /Linux ISO 文件,并通过新的 ISO 文件名调整新的菜单项。
    现在我们将尝试将文件夹从Ubuntu 22.04 ISO 复制到 USB 驱动器根目录,并添加菜单项以从此文件夹启动,您将复制除启动文件夹之外的所有 ubuntu 22.04 文件夹。我们的新条目将如下所示;

    menuentry "Try or Install Ubuntu 22.04 backup" {
        set gfxpayload=keep
        linux   /casper/vmlinuz boot=casper file=/cdrom/preseed/ubuntu.seed maybe-ubiquity quiet splash --- 
        initrd  /casper/initrd.gz
    }
    

    我使用这种方式是因为我从 Ubuntu 分区备份到 filesystem.squashfs 文件,所以如果我制作新文件或向 Ubuntu 添加新内容,我将在此 (casper) 文件夹中替换它,并且无需替换 22.04 的所有 Ubuntu ISO版本。 注意:所有此菜单项都将直接启动以尝试或安装 ubuntu,但 23.04 调整后的条目将启动以安装 ubuntu。 您可以随意选择其他版本并通过 USB 驱动器重新启动来测试您的工作。 我们的最后一篇文章将是关于另一个操作系统

    在此输入图像描述




    就像基于 Windows 10 64 位构建的 Windows 或 HBCD PE 64 一样,这是一个非常有用的工具,用于修复和安装硬盘上的任何 Windows,通过此条目,您将需要任何 Windows ISO 中的一个文件,而无需通过 Windows ISO 启动文件来修复任何问题或进行新安装。

    将所有文件夹(启动文件夹除外,只需将其内部文件复制到启动文件夹)从 hbcd-pe-64.iso 复制到 USB 驱动器根目录并添加以下菜单项:

    menuentry "Windows Recovery Environment HBCD-PE-64" --class windows --class os {
        insmod part_msdos
        insmod ntfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  55DD0595418E5BFC
        else
          search --no-floppy --fs-uuid --set=root 55DD0595418E5BFC
        fi
        parttool ${root} hidden-
        drivemap -s (hd0) ${root}
        chainloader +1
    }
    

    替换55DD0595418E5BFC为可从磁盘实用程序中获知的 USB 驱动器 uuid。 如果您不需要 HBCD,您可以用任何 Windows 7/8/10/11 文件以相同的方式替换它,但只需更改菜单项名称,不要更改任何其他内容。通过这种方式,如果有的话,您可以通过其他分区启动,让我们说来自其他分区的另一个 Windows 版本文件。 请随意通过 USB 驱动器重新启动并测试您的最后一个条目。 注意:对于任何 Wndows pe 版本,您必须将其文件夹添加到 USB 根目录,任何 Windows 安装版本其文件夹都可以设置为根目录中的文件夹,但源文件夹必须位于根目录中。

    在此输入图像描述




    6- 如何从我们的新 USB 驱动器修复/安装 Windows(无需通过 win ISO 启动):从 Windows ISO
    提取到您的 USB 驱动器,如果您想要多个 Windows 版本,您将重命名任何新提取的,以便您会被告知是哪个要安装的文件。/sources/install.wiminstall.wim

    登录 HBCD 后,打开WINNTSETUP程序并选择适当的 install.wim、Windows 分区、安装设置。WINNTSETUP 完成后,您可以重新启动到新的 Windows。

    注意:安装 Windows 将从硬盘中删除 grub 引导加载程序,因此如果您安装了 ubuntu,则必须使用引导修复或 ubuntu live USB 来恢复 grub 引导加载程序并将 Windows 条目添加到 grub 菜单,因此无需再次使用 Windows 引导加载程序。

    要从HBCD修复 Windows ,您会发现许多工具,例如 EASYBCD 来编辑/创建 Windows 启动菜单项或将 Windows 启动加载程序安装到硬盘,但与 Windows 安装相同,这将删除 grub 启动加载程序。Hbcd 中还有许多其他工具,如备份/恢复、格式化/分区、测试/修复等等,您可以探索它们。

    最后,我希望本指南能够帮助您介绍如何自定义完全在 ubuntu 中创建的多重启动 USB。

    在此输入图像描述

    • 1
  2. C.S.Cameron
    2023-06-26T10:30:45+08:002023-06-26T10:30:45+08:00

    创建 USB 驱动器 Windows 和多重启动 Ubuntu

    • 使用 Rufus 制作Windows To Go USB。

    • 用于Windows Disk Management清理空间并为安装在 USB 上的每个 Linux(Ubuntu)创建分区。

    • 使用something else,将 Ubuntu 版本安装到每个 USB 分区,与创建 Windows-Ubuntu 双启动时相同。以与 Windows 安装相同的 BIOS-UEFI 模式安装 Ubuntu

    完成引导 Ubuntu 并运行后sudo update grub,将所有操作系统添加到 GRUB 引导加载程序。

    注意:此方法创建 Windows 和 Linux 到 USB 的完整安装,而不是实时安装。完整安装不能用于安装 Ubuntu 和 Windows。

    • 1

相关问题

  • grub 菜单中的“恢复”选项是什么?

  • 用户如何避免在启动时输入密码?[关闭]

  • 更改 Wubi 的启动顺序

  • 如何在 Ubuntu 启动时显示或隐藏启动消息?

  • 如何避免启动时出现“S to Skip”消息?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve