虚拟机建硬盘后分区格式化却无法识别,通常不是硬盘坏了,而是分区表、文件系统、挂载点、控制器驱动或云平台盘符策略的问题;按顺序排查,多数能在十分钟内解决。
虚拟机建硬盘教程:从添加磁盘到分区挂载的完整路径
在VMware Workstation、VirtualBox、Hyper-V里新建一块虚拟硬盘,只是完成了“硬件接入”,客户机系统能不能看到、能不能用,还要看总线类型、驱动、分区表和挂载配置,近年来,虚拟化环境中的磁盘热添加越来越普遍,但热添加后不扫描总线,系统就不会自动识别新盘。
VMware添加新硬盘后分区格式化无法识别,先做这三步
很多人卡在“虚拟机设置里明明加了盘,进系统却找不到”,按下面顺序查:
- 打开虚拟机设置,确认硬盘已连接,并勾选“启动时连接”,如果只勾了“添加”,但没连接,客户机看不到。
- Linux客户机执行SCSI扫描,常见命令是:
for host in /sys/class/scsi_host/; do echo "- - -" > $host/scan; done- 或者使用
rescan-scsi-bus.sh
- Windows客户机打开设备管理器,点“扫描硬件改动”,如果还是看不到,进磁盘管理
diskmgmt.msc。
如果磁盘管理里显示“脱机”,右键联机,显示“未初始化”,右键初始化,选GPT或MBR,注意,初始化会清空这块新盘上的原有分区信息,只有确认是新盘或数据可丢时才做。
VirtualBox和VMware添加硬盘有什么区别?对比排查思路
对比来看,VMware默认常用SCSI或NVMe控制器,Windows客户机可能缺VMware Tools驱动;VirtualBox默认常用SATA或AHCI,兼容性通常更好,两者共同点是:添加硬盘后,都要进客户机分区、格式化、挂载或分配盘符。
云服务器又是另一种场景,简米云ECS、酷番云CVM、华为云ECS的数据盘,购买后默认未分区挂载,设备名可能是

/dev/vdb、/dev/vdc,NVMe实例则可能是 /dev/nvme1n1,本地虚拟机免费,云服务器数据盘会产生费用,云盘扩容价格按类型和地域计费,华东地域和华北地域可能存在差异。
分区格式化后无法识别怎么办?先查这五个关键点
分区表类型选错,MBR和GPT不匹配会导致盘符消失
MBR分区表最大支持2TB,GPT支持更大容量,如果一块4TB虚拟磁盘用了MBR,多出来的空间可能无法识别,Linux下用 parted -l 查看分区表类型,Windows下在磁盘管理里看“磁盘信息”,超过2TB优先用GPT。
文件系统没有挂载,Linux下lsblk能看到但df -h没有
Linux里能看到磁盘,不等于已经挂载,执行:
lsblk看磁盘和分区blkid看文件系统UUIDdf -h看已挂载文件系统
lsblk 有 /dev/sdb1,但 df -h 没有,说明只是没挂载,执行 mkdir -p /mnt/data,再 mount /dev/sdb1 /mnt/data,要开机自动挂载,把UUID写进 /etc/fstab,
UUID=xxxx /mnt/data ext4 defaults 0 0- 写完用
mount -a测试,避免写错导致系统启动异常。
Windows磁盘管理里显示“未分配”或“脱机”
Windows客户机新增磁盘后,常见状态有三种:
- “脱机”:右键联机。
- “未初始化”:右键初始化,选GPT或MBR。
- “未分配”:右键新建简单卷,分配盘符,格式化NTFS。
如果磁盘管理也没有,进设备管理器扫描硬件改动,VMware装VMware Tools,VirtualBox装增强功能,能减少驱动缺失问题。
云服务器数据盘分区后不识别,可能是设备名变了
云服务器数据盘分区后不识别,和本地虚拟机有什么不同?本地虚拟机通常直连虚拟磁盘,云服务器多一层块存储服务,排查顺序:
- 控制台确认数据盘已挂载到实例。
- 系统内执行
lsblk,确认设备名。 - 执行
partprobe重新读取分区表。 - 检查
/etc/fstab是否写错UUID。 - 扩容后容量没变,执行
growpart /dev/vdb 1,再用resize2fs /dev/vdb1或xfs_growfs /mnt/data。

据主流云平台官方文档,数据盘购买后默认未分区,需要用户手动分区格式化,云盘扩容价格按类型和地域计费,华东地域与华北地域可能有差异。
虚拟机工具和SCSI控制器驱动没装好
业内专家指出,热添加磁盘后,SCSI总线需要重新扫描,否则客户机不会主动发现新设备,VMware Tools、VirtualBox增强功能、VirtIO驱动、NVMe驱动缺失时,磁盘可能出现在设备管理器但无法正常工作,Windows下可查看是否有黄色感叹号;Linux下用 dmesg | grep -i scsi 或 dmesg | grep -i nvme 看内核日志。
虚拟机建硬盘后无法识别的通用修复流程
- 虚拟化层确认:虚拟机设置里磁盘存在并连接;云控制台确认数据盘已挂载。
- 系统层扫描:Linux用
lsblk、fdisk -l、partprobe;Windows用磁盘管理和设备管理器。 - 分区表检查:用
parted -l确认GPT或MBR,必要时重建分区表,但会丢数据。 - 文件系统检查:用
blkid、fsck,误格式化后立即停止写入,用testdisk、photorec或云快照恢复。 - 挂载或分配盘符:Linux写
mount和/etc/fstab;Windows分配盘符。 - 驱动和工具:安装VMware Tools、VirtualBox增强功能、VirtIO驱动。
- 云盘扩容:扩展分区后,还要扩展文件系统,否则容量不生效。
| 场景 | Linux | Windows |
|---|---|---|
| 查看磁盘 | lsblk
、 |
磁盘管理、diskpart |
| 分区 | fdisk、parted |
新建简单卷 |
| 格式化 | mkfs.ext4、mkfs.xfs |
格式化NTFS |
| 挂载/盘符 | mount、/etc/fstab |
分配盘符 |
| 扫描硬件 | SCSI扫描 | 设备管理器扫描 |
| 驱动 | VirtIO、NVMe | VMware Tools、增强功能 |
分区格式化后无法识别怎么办?Q&A常见问题
问:虚拟机分区格式化后无法识别,重启能解决吗?
能解决一部分“热添加未扫描”的问题,如果重启后仍然看不到,问题多在分区表、文件系统或驱动,重启前先保存数据,避免 /etc/fstab 写错导致系统进入紧急模式。
问:VMware和VirtualBox添加硬盘后分区失败,哪个更容易出问题?
行业共识认为,两者本身差异不大,更多取决于客户机驱动和控制器类型,VMware使用NVMe时Windows可能缺驱动;VirtualBox使用SATA兼容性更好,云服务器数据盘则常见于未挂载或设备名变化。
问:简米云ECS数据盘分区后无法识别,和本地虚拟机有什么区别?
本地虚拟机通常直连虚拟磁盘,云服务器多一层块存储服务,ECS数据盘分区后不识别,先确认控制台已挂载,再在系统内执行 lsblk,如果扩容后容量没变,用 growpart 扩展分区,再用 resize2fs 或 xfs_growfs 扩展文件系统,云盘扩容价格按类型和地域计费,华东地域与华北地域可能有差异。
虚拟机建硬盘不难,难在分区、格式化、挂载和驱动这几步的衔接,看到磁盘不等于能用,分区后要格式化,格式化后要挂载或分配盘符,云服务器还要确认控制台挂载与文件系统扩展。
