Ubuntu挂载虚拟磁盘的操作
导读:Ubuntu 挂载虚拟磁盘的常用方法 一、前置检查与准备 确认镜像或设备路径,查看块设备与文件系统: 查看设备与分区:lsblk、lsblk -f 查看文件系统与占用:df -h 安装常用工具(按需): 分区与格式化:sudo a...
Ubuntu 挂载虚拟磁盘的常用方法
一、前置检查与准备
- 确认镜像或设备路径,查看块设备与文件系统:
- 查看设备与分区:lsblk、lsblk -f
- 查看文件系统与占用:df -h
- 安装常用工具(按需):
- 分区与格式化:sudo apt-get install parted e2fsprogs
- 图形化磁盘工具:sudo apt-get install gparted(GNOME Disks 亦可用)
- 备份重要数据,避免误操作导致数据丢失。
二、方法一 直接挂载虚拟磁盘镜像文件 VDI/VMDK/VHD 等
-
方案A 使用 vdfuse 挂载镜像并访问分区(适用于 VDI/VMDK/VHD/RAW)
- 安装组件并配置 FUSE:
- sudo apt-get install virtualbox-fuse
- 编辑 /etc/fuse.conf,取消注释:user_allow_other
- 将镜像挂载为 FUSE 文件系统:
- sudo vdfuse -t VMDK -f /path/to/file.vmdk ~/vmdisk
- 进入挂载点可见 EntireDisk、Partition1 等文件
- 挂载具体分区(以 ext4 为例):
- sudo mount ~/vmdisk/Partition1 /mnt/vm1
- 只读挂载可加 -r;卸载:sudo umount /mnt/vm1(必要时再卸载 ~/vmdisk) 说明:vdfuse 通过 VirtualBox 访问库将镜像以 FUSE 方式呈现,便于直接访问分区。
- 安装组件并配置 FUSE:
-
方案B 使用 loop 设备挂载整盘镜像(适用于含单个文件系统或可识别分区的镜像)
- 以只读方式挂载整盘镜像到回环设备并查看分区:
- sudo mount -o loop,ro /path/to/file.img /mnt
- 或先关联回环:sudo losetup -f --show /path/to/file.img(得到如 /dev/loop0),再 sudo mount /dev/loop0 /mnt
- 若需访问分区,可配合 kpartx(如 sudo kpartx -av /dev/loop0,随后挂载 /dev/mapper/loop0p1)
- 卸载:sudo umount /mnt,必要时 sudo losetup -d /dev/loop0 说明:对包含 ext4/btrfs/xfs 等常见文件系统的镜像,loop 挂载是最简便的方式之一。
- 以只读方式挂载整盘镜像到回环设备并查看分区:
三、方法二 虚拟机中新添加的虚拟硬盘(/dev/sdX)
- 识别新盘:在虚拟机设置中添加硬盘后,重启或重新登录,使用 lsblk -f 找到新盘(如 /dev/sdb)
- 分区(示例创建主分区):
- sudo fdisk /dev/sdb → 依次输入 n → p → 回车默认起始 → 回车默认大小 → w 写入
- 格式化(以 ext4 为例):
- sudo mkfs.ext4 /dev/sdb1
- 挂载:
- 临时:sudo mount /dev/sdb1 /mnt/newdisk
- 验证:df -h、lsblk -f
- 自动挂载(编辑 /etc/fstab):
- 推荐用 UUID(更稳健):先用 lsblk -f 获取 UUID,再添加行:
- UUID=< 你的UUID> /mnt/newdisk ext4 defaults 0 2
- 验证配置:sudo mount -a(无报错即生效)
- 推荐用 UUID(更稳健):先用 lsblk -f 获取 UUID,再添加行:
四、方法三 宿主机与客机共享文件夹的挂载
- VirtualBox 共享文件夹
- 安装增强功能:sudo apt-get install virtualbox-guest-utils virtualbox-guest-dkms
- 创建挂载点:mkdir -p ~/vbox_share
- 挂载共享(共享名为 share):sudo mount -t vboxsf share ~/vbox_share
- VMware 共享文件夹(HGFS)
- 安装工具:sudo apt-get install open-vm-tools open-vm-tools-desktop
- 挂载示例:sudo vmhgfs-fuse .host:/share ~/vbox_share -o allow_other 说明:共享文件夹适合在宿主机与客机之间快速交换文件,权限与可见性由挂载选项控制。
五、常见问题与排错
- 权限不足或“Operation not permitted”:
- 使用 sudo 执行挂载;若通过 FUSE 需要 /etc/fuse.conf 中启用 user_allow_other
- 设备忙无法卸载:
- 检查占用进程:lsof | grep /mnt/yourmount;结束相关进程后再 umount
- 文件系统不一致导致只读或挂载失败:
- 确认镜像内文件系统类型并使用对应工具(如 ext4 用 mount,或先以 -o ro 只读检查)
- 开机未自动挂载:
- 检查 /etc/fstab 语法与 UUID 是否正确,先执行 sudo mount -a 验证
- 图形化辅助:
- 使用 gnome-disks 或 gparted 进行分区、格式化与挂载点管理,更直观
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu挂载虚拟磁盘的操作
本文地址: https://pptw.com/jishu/778238.html
