在 Linux 的 VirtualBox 中从 USB 驱动器启动
创始人
2024-03-02 17:23:00
0

你可以在 VirtualBox 中的虚拟机上使用立付 Linux USB。这样可以省去重新启动主机的麻烦。

你有一个 立付 Live Linux USB 吗?在当前系统上测试它的常用方法是重新启动,并在系统重新启动时选择从立付 USB 启动。

但这很烦人,因为你需要停止计算机上的工作并重新启动它。

一种干扰较小的方法是使用虚拟机。

是的,你可以使用 VirtualBox 从虚拟机中的 USB 启动。这样,你不必为了尝试而在 VM 中安装发行版,而是改用立付会话。

在本教程中,我将展示在 Linux 系统使用 VirtualBox 从 USB 驱动器启动的步骤。这需要花费一些时间和精力,但可以让你免于重启系统。

在 Linux 的 VirtualBox 中从 USB 驱动器启动

由于这是针对高级用户的教程,因此我省略了你事先需要的几个步骤:

本指南分为三个部分:

  • 创建虚拟机磁盘文件
  • 在 VM 中使用 USB 启动
  • 删除虚拟机磁盘(可选)

那么让我们从第一个开始。

步骤 1:创建虚拟机磁盘文件(VMDK)

首先,你需要识别 USB 驱动器的磁盘名称,为此,你需要 列出系统的驱动器

为此,我将使用 lsblk 命令:

lsblk

? 确保使用不带任何数字的磁盘名称。就我而言,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

最后,使用 chmod 命令更改权限:

sudo chmod 777 Filename.vmdk

步骤 2:在 Linux 的 VirtualBox 中从 USB 启动

首先,从系统菜单中打开 VirtualBox,然后单击 “ 新建 New ” 按钮。

在那里,为你的虚拟机命名并选择操作系统类型及其版本:

现在,单击 “ 下一步 Next ” 按钮,它会要求你为虚拟机分配硬件资源:

完成硬件资源分配后,单击“下一步”按钮。

在这里,你将找到创建或添加虚拟磁盘的选项。现在,请执行 3 个简单步骤:

  • 选择第二个选项 “ 使用现有虚拟硬盘文件 Use an Existing Virtual Hard Disk File ”。
  • 点击“文件”图标。
  • 点击“ 添加 Add ”按钮并选择你最近创建的以 .vmdk 结尾的文件。

选择文件后,它将显示文件的名称,选择它并点击 “ 选择 Choose ” 选项:

它将向你显示已选择从中启动的文件。单击下一步,它将显示你所做的选择的摘要。

点击 “ 完成 Finish ” 按钮:

就是这样! 虚拟机已创建。

要启动虚拟机,首先选择虚拟机并单击启动按钮:

由于我的 USB 有 Ventoy,你可以看到,此处列出了多个发行版:

很酷。是么?

步骤 3:使用删除虚拟机及 vmdk 文件(可选)

当我在删除虚拟机后尝试删除 vmdk 文件时,当然,它被删除了,但每当我尝试创建具有相同名称的新文件时,它都会给我一个错误,说该文件已经存在!

因此,在这里,我将引导你了解如何删除虚拟机及 vmdk 文件。

首先,关闭虚拟机并将其删除。

现在,如果你尝试 使用 rm 命令 并提升权限删除 vmdk 文件,你可以删除它(但这就是幻觉的开始)。

例如,在这里,我删除了 IF.vmdk 文件:

sudo rm IF.vmdk

现在,如果我尝试创建一个具有相同名称的新 vmdk 文件,则会出现错误,指出该文件已存在:

要删除 vmdk 文件,首先,你必须使用以下命令取消注册该文件:

sudo VBoxManage closemedium disk /path/to/MyDrive.vmdk

完成后,你可以使用 rm 命令删除该文件,它将轻松删除:

sudo rm Filename.vmdk

然后,如果你尝试创建具有相同文件名的 vmdk 文件,你可以这样做:

这就行了!

更多虚拟机技巧

如果你正在寻找最快的 VM,可以使用 Qemu + KVM 的组合。我知道这听起来很复杂。

但为了更简单一些,我们制作了一份关于如何在 Ubuntu 上安装和使用 Qemu 的专门指南,包括启用共享文件夹、剪贴板和自动调整大小:

如何在 Ubuntu 上安装和使用 Qemu

我希望本指南对你有所帮助。

(题图:MJ/f74a3b33-2bcf-445b-8868-1dfc420f5b9d)


via: https://itsfoss.com/virtualbox-boot-from-usb/

作者:Sagar Sharma 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

捕捉使用了哪个USB设备名...
要捕捉使用了哪个USB设备名称,可以使用VB.NET中的Manag...
2025-01-12 17:01:03
不需要USB的Androi...
Android开发中,有许多不需要使用USB连接的方法。以下是一些...
2025-01-10 15:31:50
不寻常的USB HID报告
要解决“不寻常的USB HID报告”问题,我们需要检查以下几个方面...
2025-01-10 11:31:47
不使用Vagrant的情况...
要在不使用Vagrant的情况下使用Ansible和Virtual...
2024-12-29 12:31:06
不使用变量的情况下切换到U...
在不使用变量的情况下,可以使用以下代码示例切换到USB驱动器中的目...
2024-12-28 11:00:13
BusboywithFas...
此问题通常是由于Fastify的Multipart插件未正确配置而...
2024-12-28 02:32:12

热门资讯

使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
Bazzite:专为 Stea... 为 Linux 桌面或者 Steam Deck 做好游戏准备,听起来都很刺激!对于一个专为 Linu...
Motrix:一个漂亮的跨平台... 一个开源的下载管理器,提供了一个简洁的用户界面,同时提供了跨平台操作的所有基本功能。在这里了解关于它...
Bash 脚本中如何使用 he... here 文档 here document (LCTT 译注:here 文档又称作 heredoc ...
使用 dialog 和 jq ... 为何选择文字用户界面(TUI)?许多人每日都在使用终端,因此, 文字用户界面 Text User I...