修改ESXi虚拟机存储路径,核心就是一句话:先把虚拟机彻底关机,把整套文件(vmx、vmdk、nvram、快照链)完整搬到新数据存储,再把虚拟机重新注册回清单,最后核对配置文件里的路径引用是否同步更新。整个过程不难,但坑不少,尤其是快照和精简置备这两块,稍不注意就可能把虚拟机搬成”半个”。
ESXi虚拟机存储路径怎么修改?两种主流方案对比
在动手之前,得先搞清楚自己手上有什么条件,修改存储路径本质上就是一次数据搬迁,差别只在于用图形界面点鼠标,还是用命令行敲代码。
Storage vMotion和手动迁移哪个好,先看许可与场景
Storage vMotion 是 vSphere 里最省心的方案,虚拟机开机状态下就能跑,业务不中断,迁移过程中还能顺便把厚置备转成精简置备,或者反过来,操作路径也很直接:右键虚拟机 → 迁移 → 仅更改存储 → 选择目标数据存储。
但它有个硬门槛:Storage vMotion 需要 vSphere Standard 及以上版本的许可,Essentials、Essentials Plus 以及免费的 ESXi 版本都不带这个功能,所以如果是小规模自建环境或者用免费版跑测试机,只能走手动迁移。
手动迁移的特点是免费、通用,但对操作细节要求高,虚拟机必须关机,迁移期间业务完全中断,而且一旦文件复制出问题,排查起来比 vMotion 麻烦得多。
两类方案的直观对比
| 对比项 | Storage vMotion | 手动离线迁移 |
|---|---|---|
| 许可要求 | Standard 及以上 | 免费版即可 |
| 是否需要关机 | 不需要 | 必须关机 |
| 业务中断 | 基本无感知 | 全程中断 |
| 置备类型转换 | 支持在线转换 | 需命令行指定 |
| 操作风险 | 较低 | 较高 |
| 适合场景 | 生产环境、大批量 | 测试环境、单机迁移 |
业内专家指出,在生产环境中,只要许可条件允许,优先选 Storage vMotion 几乎是默认做法,而对于家庭实验室或者小企业自建环境,掌握手动迁移的完整流程,依然是运维人员的基本功。
手动修改ESXi虚拟机存储路径的完整操作步骤
下面这一套流程适用于 ESXi 6.7 到 8.0 的各个版本,操作界面在 vSphere Client 和 Host Client 上基本一致。
第一步:迁移前的环境检查
这一步最容易被跳过,也最容易出问题,在关机之前,先逐项确认:
- 快照状态:右键虚拟机 → 快照 → 管理快照,看是否存在快照链,有快照的情况下,磁盘文件会分成基础盘和多个增量盘,少搬一个就会导致虚拟机无法启动。
- 磁盘置备类型:在虚拟机设置里查看每块硬盘是厚置备延迟置零、厚置备置零还是精简置备,迁移后要核对是否保持一致。
- ISO 挂载:如果虚拟机挂载了 ISO 镜像,记下它所在的数据存储,迁移后这个引用很可能失效。
- 配置文件信息:记下虚拟机的完整名称、所在文件夹、工作目录,以及是否有外部指向的 vmdk。
第二步:关机并注销注册
确认虚拟机内部业务已经停止,执行正常关机,不要用挂起,挂起状态下内存文件(.vmss)和挂起状态文件会额外增加迁移复杂度。
关机完成后,右键虚拟机 → 从清单中移除,注意,这里千万别点成”从磁盘中删除”,两者的区别就是前者只注销注册、文件还在,后者会直接抹掉数据。
第三步:搬移文件
推荐用命令行,速度快、可控性强,通过 SSH 登录到宿主机,先看一眼数据存储的实际挂载路径:
ls /vmfs/volumes/
这里列出的是数据存储的 UUID 和别名,进入源数据存储,找到虚拟机文件夹,然后执行复制:
cp -r /vmfs/volumes/源数据存储/虚拟机名 /vmfs/volumes/目标数据存储/
需要提醒的是,ESXi 的 Shell 不支持直接用 mv 跨数据存储移动文件夹,很多人试过之后发现命令卡住或者报错,就是这个原因,老老实实用 cp 复制,确认无误后再删源文件。
如果想把厚置备转成精简置备,用 vmkfstools 更稳妥:
vmkfstools -i /vmfs/volumes/源/虚拟机名/磁盘.vmdk -d thin /vmfs/volumes/目标/虚拟机名/磁盘.vmdk
这行命令会重新生成磁盘文件并指定格式,代价是耗时更长,数据量大的话,建议放在业务低峰期做。
第四步:重新注册并核对路径
复制完成后,在 vSphere Client 里进入目标数据存储的浏览界面,找到虚拟机文件夹,右键 .vmx 文件 → 注册虚拟机。
注册完成后先别急着开机,打开虚拟机设置,检查这几项:
- 硬盘是否都指向了新的数据存储路径
- CD/DVD 驱动器挂载的 ISO 是否还能访问
- 虚拟机的配置文件位置和工作目录是否已经更新
vmx 文件里残留旧路径,可以在数据存储浏览器里下载 vmx 文件,用文本编辑器改掉 datastore 路径,再上传覆盖。
修改ESXi虚拟机存储路径时最容易踩的坑
快照文件没跟着一起走
这是手动迁移里最高频的故障,有快照的虚拟机,磁盘目录下会存在 -000001.vmdk 这类增量文件,如果只复制了主 vmdk,注册后开机会直接报磁盘链断裂,正确做法是迁移前先把快照整合掉,或者确保整个文件夹原样复制。
精简置备迁移后变成厚置备
用图形界面的复制功能,或者不加参数直接 cp,都有可能把精简磁盘变成厚置备,原来占用 40GB 的磁盘,迁移后可能实打实占满 200GB,行业共识认为,迁移后一定要进数据存储浏览器核对实际占用大小,必要时用 vmkfstools 转换回来。
目标数据存储空间不够
复制前先看目标数据存储的剩余容量,如果虚拟机磁盘全是厚置备,或者目标存储开了去重压缩,实际占用可能和源端差很多,留出至少 20% 的余量比较稳妥,近年来不少故障案例都是因为存储写满导致复制中断,留下残缺文件。
集群环境里的 HA 和 DRS 干扰
如果主机在集群里,注销虚拟机注册之后,HA 可能触发告警,DRS 也可能在你还没注册完成时做别的调度,操作前最好先临时关闭该主机的 HA 准入控制,或者把主机暂时移出集群维护模式。
关于ESXi虚拟机存储路径修改的常见问题
ESXi免费版能不能迁移虚拟机存储路径?
可以,但只能用关机状态下的手动迁移方案,免费版不包含 Storage vMotion 许可,所以在线迁移这条路走不通,手动迁移的完整流程和付费版没有区别,只是需要自己承担业务中断时间和操作风险。
迁移后虚拟机的MAC地址和UUID会变吗?
不会,MAC 地址记录在 vmx 配置文件里,UUID 也一样,只要 vmx 文件本身没有重新生成,注册后这些标识都保持不变,这一点对依赖授权绑定的软件很重要,比如某些按 MAC 地址授权的商业软件,迁移后不需要重新申请许可。
跨数据存储迁移大容量虚拟机一般要多久?
这个没有固定答案,取决于磁盘总容量、后端存储类型和网络带宽,同样 500GB 的虚拟机,走本地 SSD 数据存储可能十几分钟完成,走千兆 NFS 可能要几个小时,业内常见做法是先算好窗口期,再不放心就用命令行带进度显示的方式跑,方便实时观察传输状态。
修改 ESXi 虚拟机存储路径,说到底是一次”搬文件 + 改引用 + 重新登记”的组合动作,方案选对、步骤走全、迁移后核对到位,这件事就不会出岔子,真正拉开差距的,是迁移前那五分钟的检查清单。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/763648.html





