如何从Linux的Virtualbox中的U盘启动

时间:2020-03-21 11:48:04  来源:igfitidea点击:

昨天,我试图在Linux系统中使用Ventoy创建多引导U盘。

成功创建可启动驱动器后,我向可启动驱动器添加了不同的ISO。
但是问题是我必须在添加新的ISO之后每次都重新引导系统,以检查U盘是否确实在工作。
由于我没有其他系统,因此对我来说似乎有点耗时。
我认为如果可以从Linux系统中的Virtualbox中的U盘启动,那会更好。
我们可能知道,Oracle Virtualbox没有提供任何直接的从USB引导的方法。
幸运的是,我发现了一个简单的解决方法,即允许Virtualbox从USB闪存驱动器启动。

在Linux的Virtualbox中从U盘启动

要允许从U盘启动Virtualbox,我们需要创建一个.vmdk文件并将其指向U盘以进行引导。
对于那些想知道的人,vmdk文件不过是包含虚拟机所有信息的虚拟磁盘文件。

首先,我们需要找到U盘名称。
请参考以下教程,以了解在Linux中查找磁盘驱动器详细信息的不同方法。

  • 如何在Linux中查找硬盘驱动器详细信息

我将使用“ fdisk”命令查找我的U盘详细信息:

$sudo fdisk -l

输出示例:

[...]
Disk /dev/sdc: 14.54 GiB, 15597568000 bytes, 30464000 sectors
Disk model: Cruzer Blade    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes/512 bytes
I/O size (minimum/optimal): 512 bytes/512 bytes
Disklabel type: dos
Disk identifier: 0x4d924612

如我们所见,我的U盘名称为/dev/sdc。

现在,打开终端并运行以下任一命令来创建vmdk文件:

$sudo vboxmanage internalcommands createrawvmdk -filename  ~/usb.vmdk -rawdisk /dev/sdc

在某些Linux发行版中,vboxmanage命令区分大小写。
在这种情况下,请使用以下命令创建vmdk文件:

$sudo VBoxManage internalcommands createrawvmdk -filename  ~/usb.vmdk -rawdisk /dev/sdc

上面的命令将在$HOME目录中创建一个名为“ usb.vmdk”的新vmdk文件。
成功创建vmdk文件后,我们将看到类似以下的输出:

RAW host disk access VMDK file /home/sk/usb.vmdk created successfully.

为新创建的vmdk文件设置适当的权限:

$sudo chown $USER:$USER ~/usb.vmdk

接下来,使用以下命令将用户添加到“ vboxusers”和“ disk”组:

$sudo usermod -a -G vboxusers sk
$sudo usermod -a -G disk sk

用我们自己的用户名替换“ sk”。

请注意,将用户添加到“磁盘”组是危险和安全风险。
现在,卸下U盘,然后重新引导系统以使更改生效。
如果我们不卸下USB,则驱动器号的名称可能在下次启动时更改。
因此,重要的是先卸下USB并重新引导系统。

现在打开Oracle Virtualbox应用程序并创建一个新的虚拟机:

输入虚拟机的名称,操作系统类型和版本,然后单击下一步继续:

输入内存大小:

这是重要的一步。
选择“使用现有的虚拟硬盘文件”选项,然后单击浏览按钮(向上箭头按钮):

单击“添加”按钮以选择新创建的vmdk文件:

从本地驱动器中选择新创建的vmdk文件:

添加vmdk文件后,单击“选择”按钮以确认:

现在,我们将看到vmdk文件被选作新虚拟机的虚拟硬盘。
单击下一步继续:

全部做完!插入可启动的U盘并启动虚拟机:

现在,我们可以从Oracle Virtualbox中的USB启动。
其中我要启动在Virtualbox中使用Ventoy脚本创建的USB可启动驱动器:

从Linux中的可启动U盘创建ISO

这是在Virtualbox中启动U盘的另一种方法。
在这种方法中,我们不需要创建vmdk文件。
只需使用“ GNOME磁盘实用程序”或者“ dd”命令从可启动USB创建ISO镜像,如以下链接中所述:

  • 如何在Linux中从可启动U盘创建ISO

创建完ISO之后,打开Virtualbox应用程序,然后转到任何VM的设置,然后在“存储控制器:IDE”选项下,将该新创建的.iso文件作为光驱添加(挂载)。

现在启动VM,它将从ISO镜像启动。

请注意,此方法不适用于所有USB镜像,尤其是对于多分区U盘。