在Ubuntu中挂载虚拟机磁盘(如VMware的.vmdk、VirtualBox的.vdi或.img格式文件)需通过识别磁盘、安装工具、创建挂载点、挂载及卸载等步骤完成,以下是详细流程:
首先确定虚拟磁盘文件的路径和类型(如~/Documents/vm/virtual_disk.vmdk、~/VirtualBox\ VMs/test_vm/disk.vdi)。可通过文件管理器查看或使用ls命令确认。
根据虚拟磁盘类型安装对应工具,确保系统支持挂载操作:
open-vm-tools及桌面扩展(提供vmhgfs-fuse工具):sudo apt update
sudo apt install open-vm-tools open-vm-tools-desktop
virtualbox-guest-utils(支持vboxsf文件系统):sudo apt update
sudo apt install virtualbox-guest-utils virtualbox-guest-dkms
qemu-utils(支持qemu-nbd工具,用于挂载镜像文件中的分区):sudo apt install qemu-utils
选择一个空目录作为虚拟磁盘的挂载点(如/mnt/virtual_disk或~/virtual_disk_mount):
sudo mkdir -p /mnt/virtual_disk # 系统级挂载点(需sudo)
# 或
mkdir ~/virtual_disk_mount # 用户级挂载点(无需sudo)
根据虚拟磁盘类型选择对应命令:
vmhgfs-fuse挂载(适用于共享文件夹或整个磁盘):sudo vmhgfs-fuse .host:/<虚拟磁盘文件所在路径> /mnt/virtual_disk -o allow_other
# 示例:挂载主目录下的virtual_disk.vmdk
sudo vmhgfs-fuse .host:~/Documents/vm/virtual_disk.vmdk /mnt/virtual_disk -o allow_other
mount命令挂载(需指定文件系统类型,如vboxsf):sudo mount -t vboxsf <虚拟磁盘文件名> /mnt/virtual_disk
# 示例:挂载VirtualBox虚拟磁盘文件
sudo mount -t vboxsf virtual_disk.vdi /mnt/virtual_disk
qemu-nbd将镜像文件关联到虚拟设备(如/dev/nbd0):sudo modprobe nbd max_part=16 # 加载nbd内核模块(支持分区)
sudo qemu-nbd -c /dev/nbd0 /path/to/disk.img # 关联镜像文件到设备
/dev/nbd0p1),并挂载目标分区:sudo fdisk -l /dev/nbd0 # 查看分区信息(确认分区号,如p1)
sudo mount /dev/nbd0p1 /mnt/virtual_disk # 挂载分区
cd /mnt/virtual_disk
ls -l # 列出文件
sudo umount /mnt/virtual_disk # 卸载挂载点
# 若使用qemu-nbd挂载镜像文件,需断开设备关联
sudo qemu-nbd -d /dev/nbd0 # 断开镜像文件与设备的关联
vmhgfs-fuse是否在PATH中),或尝试使用sudo提升权限。/etc/fstab文件中(需配置UUID或设备路径),实现开机自动挂载。