查看博文:运维技术/配置调整/常见问题 > 虚拟磁盘类型转换 vmkfstools实战 返回相册页面

虚拟磁盘类型转换 vmkfstools实战

发布时间:2022-06-27 浏览次数:1154


摘要:虚拟磁盘类型转换vmkfstools实战移除置零的块,转换至精简备置:命令vmkfstools-KA.vmdk使用vmkfstools-K将精简、zeroedthick或eagerzeroedthick虚拟磁盘转换成移除了置零块的精简磁盘,解除分配所有置零的块,并仅保留含有效数据的块,得到虚拟磁盘为...

虚拟磁盘类型转换 vmkfstools实战

移除置零的块,转换至精简备置:

命令 vmkfstools -K  A.vmdk

使用 vmkfstools -K 将精简、zeroedthick 或 eagerzeroedthick 虚拟磁盘转换成移除了置零块的精简磁盘,解除分配所有置零的块,并仅保留含有效数据的块,得到虚拟磁盘为精简格式,也达到了收缩VMDK容量作用。  

精简置备转换至厚置备置零:

命令  vmkfstools --inflatedisk  A.vmdk

  --inflatedisk 可将磁盘未置零部分都置零。vmdk文件容量将达到分配空间最大值。

厚置备延迟置零转换至厚置备置零:

命令  vmkfstools --eagerzero  A.vmdk

虚拟磁盘改名

命令  vmkfstools -E  A.vmdk  B.vmdk (别对受快照磁盘操作)

删除虚拟磁盘

命令  vmkfstools -U  C.vmdk

创建虚拟磁盘

命令  vmkfstools -c 8G E.vmdk             (默认厚置备延迟置零格式)

命令  vmkfstools -c 8G -d thin  Athin.vmdk  (容量单位mkg不分大少写;-d 可选zeroedthick|eagerzeroedthick|thin)

初始化虚拟磁盘

命令  vmkfstools -w  A.vmdk

(写入零数据以将其虚拟机磁盘清空,达到初始化磁盘,磁盘分区也会被删除,完毕后,磁盘类型为厚置备置零)

扩展虚拟磁盘vmdk

命令  vmkfstools -X 88g  D.vmdk (切勿对受快照的磁盘操作,会直接损坏磁盘) 只能往大调。

克隆vmdk磁盘

命令  Vmkfstools -i  A.vmdk  -d  thin  A_new.vmdk  
(注意-d thin关键参数,如原磁盘为thick不加就克隆出原thick磁盘模式,当原是thin不加就克隆出zeroedthick)

成功的克隆出A_new.vmdk 和 A_new-flat.vmdk两个文件,是直接可用的磁盘了。

克隆方式从厚置备转换为精简置备:

如需要使用A_new.vmdk 这个thin盘代替原来就以下操作:
# cat VMName-new.vmdk

可以看到 # Extent description 中是指向A_new-flat.vmdk

先将原两文件A.vmdk和A-flat.vmdk 备份到别的地方,

# mkdir  oldvmdk

# mv A.vmdk  ./oldvmdk

# mv A-flat.vmdk ./oldvmdk

将这新的A_new.vmdk 和 A_new-flat.vmdk两个文件改为旧的名字,并修改Extent description内容,开机测试。

注意:

转换了磁盘类型或扩展了磁盘容量,清单并不会自动刷新,需将该磁盘暂时从清单中移除,再次添加。

在虚拟机系统除了dd 、SDelete还有哪里操作可以将vmdk置零

1. 分区助手的“擦除磁盘/分区/数据”功能也是填0操作(只能对整个分区操作,并该分区是已经删除分区的)。

2. DiskGenius “清除扇区数据”除了默认填0操作,还可自定义,如填FF(十六进制),vmkfstools -K清理空间就无效了,只好再次填0再清。

3. window磁盘管理中,先将磁盘转换为动态磁盘,并组建软riad。

ESXI 在SSH中磁盘操作的一些结果

移动mv

当磁盘是Thin类型,使用mv 在同一个存储移动位置,不会改变磁盘类型。

#  vmkfstools -c  1G  -d  thin  1thin.vmdk

#  mv  1thin.vmdk   /vmfs/volumes/480GB-SSD/

#  mv  1thin-flat.vmdk   /vmfs/volumes/480GB-SSD/

#  du -ah  /vmfs/volumes/480GB-SSD/1thin-flat.vmdk

0       /vmfs/volumes/480GB-SSD/1thin-flat.vmdk

 

但mv移动至其他存储会改变为厚置备置零。

mv  /vmfs/volumes/480GB-SSD/1thin-flat.vmdk   /vmfs/volumes/2T-HDD/

mv  /vmfs/volumes/480GB-SSD/1thin.vmdk  /vmfs/volumes/2T-HDD/

du -ah  /vmfs/volumes/2T-HDD/1thin-flat.vmdk

1.0G    /vmfs/volumes/2T-HDD/1thin-flat.vmdk

 

复制cp

vmkfstools  -c  1G  -d  thin  1thin.vmdk

cp  1thin.vmdk  ../

cp  1thin-flat.vmdk  ../

du -ah  ../1thin-flat.vmdk

1G  ../1thin-flat.vmdk

得出: cp 是会将thin转换为 厚置备置零

 

ESXI 在数据存储浏览器中磁盘操作的一些结果

    复制/剪切/移至  thin的vmdk,同/不同一个存储都不会改变磁盘类型。
    从数据存储浏览器下载thin的分配了1GB的vmdk,但需要真实的下载1GB到本地.
————————————————
版权声明:本文为CSDN博主「endzhi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。



转载文章,来源:https://blog.csdn.net/endzhi/article/details/89818324