TranslateProject/published/202309/20230904 Boot From a USB Drive in VirtualBox in Linux.md
2023-10-02 11:01:21 +08:00

218 lines
8.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[#]: subject: "Boot From a USB Drive in VirtualBox in Linux"
[#]: via: "https://itsfoss.com/virtualbox-boot-from-usb/"
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
[#]: collector: "lujun9972/lctt-scripts-1693450080"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-16214-1.html"
在 Linux 的 VirtualBox 中从 USB 驱动器启动
======
![][0]
> 你可以在 VirtualBox 中的虚拟机上使用立付 Linux USB。这样可以省去重新启动主机的麻烦。
你有一个 <ruby>立付<rt>Live</rt></ruby> Linux USB 吗?在当前系统上测试它的常用方法是重新启动,并在系统重新启动时选择从立付 USB 启动。
但这很烦人,因为你需要停止计算机上的工作并重新启动它。
一种干扰较小的方法是使用虚拟机。
是的,你可以使用 VirtualBox 从虚拟机中的 USB 启动。这样,你不必为了尝试而在 VM 中安装发行版,而是改用立付会话。
在本教程中,我将展示在 Linux 系统使用 VirtualBox 从 USB 驱动器启动的步骤。这需要花费一些时间和精力,但可以让你免于重启系统。
### 在 Linux 的 VirtualBox 中从 USB 驱动器启动
由于这是针对高级用户的教程,因此我省略了你事先需要的几个步骤:
* 在 Linux 系统上 [安装 VirtualBox][1A]
* 创建立付 Linux USB最好 [使用 Ventoy][1]
本指南分为三个部分:
* 创建虚拟机磁盘文件
* 在 VM 中使用 USB 启动
* 删除虚拟机磁盘(可选)
那么让我们从第一个开始。
#### 步骤 1创建虚拟机磁盘文件VMDK
首先,你需要识别 USB 驱动器的磁盘名称,为此,你需要 [列出系统的驱动器][3]。
为此,我将使用 lsblk 命令:
```
lsblk
```
![][4]
> 🚧 确保使用不带任何数字的磁盘名称。就我而言Ventoy 以 sdb1 命名,但我仍然只能使用 sdb。
从上图中你可以看到Ventoy 列出了 `sdb11`,但你必须使用不带任何数字的名称。这意味着我必须只使用 `sdb`,否则,它会抛出错误。
找到驱动器名称后,使用以下命令中的 `VBoxManage` 命令来创建:
```
sudo VBoxManage createmedium disk --filename=/path/to/rawdisk.vmdk --variant=RawDisk --format=VMDK --property RawDrive=/dev/sda
```
在上面的命令中,将 `/path/to/rawdisk.vmdk` 替换为要保存文件的路径 ,将 `/dev/sda` 替换为目标驱动器。
就我而言,我想在我的主目录中创建一个名为 `IF.vmdk` 的文件,并且我的目标驱动器是 `/dev/sdb`,然后,我将使用以下命令:
> 📋 你需要提供绝对路径来创建 vmdk 文件!
```
sudo VBoxManage createmedium disk --filename=/home/sagar/IF.vmdk --variant=RawDisk --format=VMDK --property RawDrive=/dev/sdb
```
![][5]
最后,使用 `chmod` 命令更改权限:
```
sudo chmod 777 Filename.vmdk
```
![][6]
#### 步骤 2在 Linux 的 VirtualBox 中从 USB 启动
首先,从系统菜单中打开 VirtualBox然后单击 “<ruby>新建<rt>New</rt></ruby>” 按钮。
在那里,为你的虚拟机命名并选择操作系统类型及其版本:
![][7]
现在,单击 “<ruby>下一步<rt>Next</rt></ruby>” 按钮,它会要求你为虚拟机分配硬件资源:
![][8]
完成硬件资源分配后,单击“下一步”按钮。
在这里,你将找到创建或添加虚拟磁盘的选项。现在,请执行 3 个简单步骤:
* 选择第二个选项 “<ruby>使用现有虚拟硬盘文件<rt>Use an Existing Virtual Hard Disk File</rt></ruby>”。
* 点击“文件”图标。
* 点击“<ruby>添加<rt>Add</rt></ruby>”按钮并选择你最近创建的以 `.vmdk` 结尾的文件。
![][9]
选择文件后,它将显示文件的名称,选择它并点击 “<ruby>选择<rt>Choose</rt></ruby>” 选项:
![][10]
它将向你显示已选择从中启动的文件。单击下一步,它将显示你所做的选择的摘要。
点击 “<ruby>完成<rt>Finish</rt></ruby>” 按钮:
![][11]
就是这样! 虚拟机已创建。
要启动虚拟机,首先选择虚拟机并单击启动按钮:
![][12]
由于我的 USB 有 Ventoy你可以看到此处列出了多个发行版
![][13]
很酷。是么?
#### 步骤 3使用删除虚拟机及 vmdk 文件(可选)
当我在删除虚拟机后尝试删除 vmdk 文件时,当然,它被删除了,但每当我尝试创建具有相同名称的新文件时,它都会给我一个错误,说该文件已经存在!
因此,在这里,我将引导你了解如何删除虚拟机及 vmdk 文件。
首先,关闭虚拟机并将其删除。
![][14]
现在,如果你尝试 [使用 rm 命令][15] 并提升权限删除 vmdk 文件,你可以删除它(但这就是幻觉的开始)。
例如,在这里,我删除了 `IF.vmdk` 文件:
```
sudo rm IF.vmdk
```
![][16]
现在,如果我尝试创建一个具有相同名称的新 vmdk 文件,则会出现错误,指出该文件已存在:
![][17]
要删除 vmdk 文件,首先,你必须使用以下命令取消注册该文件:
```
sudo VBoxManage closemedium disk /path/to/MyDrive.vmdk
```
![][18]
完成后,你可以使用 `rm` 命令删除该文件,它将轻松删除:
```
sudo rm Filename.vmdk
```
然后,如果你尝试创建具有相同文件名的 vmdk 文件,你可以这样做:
![][19]
这就行了!
### 更多虚拟机技巧
如果你正在寻找最快的 VM可以使用 Qemu + KVM 的组合。我知道这听起来很复杂。
但为了更简单一些,我们制作了一份关于如何在 Ubuntu 上安装和使用 Qemu 的专门指南,包括启用共享文件夹、剪贴板和自动调整大小:
> **[如何在 Ubuntu 上安装和使用 Qemu][19A]**
我希望本指南对你有所帮助。
*题图MJ/f74a3b33-2bcf-445b-8868-1dfc420f5b9d*
--------------------------------------------------------------------------------
via: https://itsfoss.com/virtualbox-boot-from-usb/
作者:[Sagar Sharma][a]
选题:[lujun9972][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/sagar/
[b]: https://github.com/lujun9972
[1]: https://itsfoss.com/use-ventoy/
[1A]: https://itsfoss.com/install-virtualbox-ubuntu/
[2]: https://itsfoss.com/content/images/size/w256h256/2022/12/android-chrome-192x192.png
[3]: https://linuxhandbook.com/linux-list-disks/
[4]: https://itsfoss.com/content/images/2023/07/list-drives-in-Linux.png
[5]: https://itsfoss.com/content/images/2023/07/create-virtual-machine-disk-drive-for-virtualbox-to-boot-from-USB-drive-in-Linux.png
[6]: https://itsfoss.com/content/images/2023/07/use-chmod-command-to-change-the-permissions.png
[7]: https://itsfoss.com/content/images/2023/07/Create-VM-in-VirtualBox-to-boot-from-USB-in-Linux.png
[8]: https://itsfoss.com/content/images/2023/07/allocate-RAM-and-cores-to-Vm-to-boot-from-USB-in-VirtualBox-in-Linux.png
[9]: https://itsfoss.com/content/images/2023/07/add-virtual-machine-disk-drive-in-VirtualBox-to-boot-from-USB-in-Linux.png
[10]: https://itsfoss.com/content/images/2023/07/select-the-vmdk-file.png
[11]: https://itsfoss.com/content/images/2023/07/Finish-the-VM-creation-to-boot-from-USB-in-VirtualBox-in-Linux.png
[12]: https://itsfoss.com/content/images/2023/07/start-the-VM.png
[13]: https://itsfoss.com/content/images/2023/07/Boot-from-USB-in-VirtualBox-in-Linux.png
[14]: https://itsfoss.com/content/images/2023/07/Remove-VM-from-VirtualBox.png
[15]: https://linuxhandbook.com/remove-files-directories/
[16]: https://itsfoss.com/content/images/2023/07/use-rm-command-to-remove-vmdk-file.png
[17]: https://itsfoss.com/content/images/2023/07/unable-to-create-vmdk-file-in-Linux--file-already-exist.png
[18]: https://itsfoss.com/content/images/2023/07/unregister-vmdk-file-in-Linux-to-remove-it.png
[19]: https://itsfoss.com/content/images/2023/07/how-to-remove-the-vmdk-file-in-Linux.png
[19A]: https://itsfoss.com/qemu-ubuntu/
[0]: https://img.linux.net.cn/data/attachment/album/202309/22/101826lcduo6etry9ep2rb.jpg