Ubuntu挂载虚拟磁盘技巧
导读:Ubuntu 挂载虚拟磁盘的实用技巧 一、常见场景与最佳做法 宿主机访问虚拟机磁盘镜像:包括 VDI/VMDK/VHD/VHDX/RAW,适合从宿主机直接读取或备份虚拟机内数据。 虚拟机内挂载新加的虚拟硬盘:在 VMware/Virtua...
Ubuntu 挂载虚拟磁盘的实用技巧
一、常见场景与最佳做法
- 宿主机访问虚拟机磁盘镜像:包括 VDI/VMDK/VHD/VHDX/RAW,适合从宿主机直接读取或备份虚拟机内数据。
- 虚拟机内挂载新加的虚拟硬盘:在 VMware/VirtualBox 中新增一块虚拟盘,在 Ubuntu 中分区、格式化并挂载为数据盘。
- 虚拟机内扩容后扩展分区与文件系统:先扩虚拟盘,再用 GParted 或命令行调整分区与文件系统大小。
二、宿主机直接挂载虚拟机磁盘镜像
- RAW 镜像
- 直接以回环设备挂载:
sudo mount -o loop /path/to/disk.raw /mnt - 若是空盘需先建文件系统:
sudo mkfs.ext4 /path/to/disk.raw & & sudo mount -o loop /path/to/disk.raw /mnt
- 直接以回环设备挂载:
- VHD/VHDX 镜像(QEMU NBD 方式)
- 安装工具并加载 NBD:
sudo apt-get install qemu-utils
sudo modprobe nbd max_part=8 - 连接镜像并挂载分区:
qemu-nbd -c /dev/nbd0 /path/to/disk.vhd
sudo mount /dev/nbd0p1 /mnt - 卸载与断开:
sudo umount /mnt & & qemu-nbd -d /dev/nbd0
- 安装工具并加载 NBD:
- VDI/VMDK 镜像(FUSE 方式,宿主机侧)
- 安装组件并配置 FUSE:
sudo apt-get install virtualbox-fuse
sudo sed -i ‘/^#user_allow_other/s/^#//’ /etc/fuse.conf - 挂载镜像与分区:
mkdir -p ~/vmdisk
vdfuse -t VMDK -f ~/vmdisk/ubuntu.vmdk ~/vmdisk
mkdir -p ~/vmdisk-part
sudo mount ~/vmdisk/Partition1 ~/vmdisk-part - 卸载:
sudo umount ~/vmdisk-part & & sudo umount ~/vmdisk
以上方法覆盖 RAW/VHD/VHDX/VDI/VMDK 的主流用法,适合备份、迁移与取证等场景。
- 安装组件并配置 FUSE:
三、虚拟机内挂载新加的虚拟硬盘
- 识别磁盘:新增盘通常显示为 /dev/sdb(重启后可见),查看:
lsblk -f - 分区(示例创建主分区):
sudo fdisk /dev/sdb交互:n → p → 回车默认起始 → 回车默认大小 → w 保存
- 格式化(以 ext4 为例):
sudo mkfs.ext4 /dev/sdb1 - 临时挂载:
sudo mkdir -p /data
sudo mount /dev/sdb1 /data - 永久挂载(推荐用 UUID,避免设备名漂移):
blkid /dev/sdb1 # 复制输出的 UUID
echo “UUID=你的UUID /data ext4 defaults 0 2” | sudo tee -a /etc/fstab
sudo mount -a - 验证:
df -h | grep /data
以上流程同样适用于在虚拟机中新增的第二块、第三块硬盘。
四、虚拟机磁盘扩容与文件系统调整
- 前置条件
- 虚拟机关机;在 VMware 或 VirtualBox 中扩展虚拟磁盘容量;如存在快照,需先删除再扩容。
- 调整分区与文件系统
- 图形化:
sudo apt install gparted & & sudo gparted 在 GParted 中选中目标分区,右键“调整大小/移动”,应用操作。 - 命令行(示例为 ext4):
sudo fdisk -l # 确认分区名如 /dev/sda1
sudo resize2fs /dev/sda1 # 扩展到新分区大小上限
- 图形化:
- 验证:
df -h
扩容前务必做好数据备份,操作有风险。
五、排错与最佳实践
- 权限与挂载选项
- 只读访问:mount 加 -o ro;NBD 挂载可加 -r;vdfuse 可用 -r 只读模式。
- 多用户访问 FUSE:确保 /etc/fuse.conf 中启用 user_allow_other。
- 避免设备名漂移
- 在 /etc/fstab 中优先使用 UUID(通过 blkid 获取),更稳健。
- 卸载与清理
- 先终止占用再卸载:
sudo umount /mnt若使用 NBD:qemu-nbd -d /dev/nbd0
若使用 vdfuse:sudo umount ~/vmdisk-part & & sudo umount ~/vmdisk
- 先终止占用再卸载:
- 查看状态
- 快速查看块设备与挂载:
lsblk -f
df -h
- 快速查看块设备与挂载:
- 数据安全
- 分区、格式化、扩容等操作可能导致数据丢失,务必先备份重要数据。
以上要点可显著降低挂载与扩容过程中的常见错误风险。
- 分区、格式化、扩容等操作可能导致数据丢失,务必先备份重要数据。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu挂载虚拟磁盘技巧
本文地址: https://pptw.com/jishu/788211.html
