VM虛擬機(jī)分配時(shí),磁盤模式會(huì)有Thin provisioning 模式
當(dāng)虛擬機(jī)OS內(nèi)空間使用過之后劣光,即使刪除了部分文件,也只是釋放了OS層面的空間,并沒有真正的釋放esxi后所連接的存儲(chǔ)空間。
本人整理了關(guān)于回收的方式脸秽,步驟如下:
1. 確保磁盤沒有快照。
2. VM內(nèi)空間釋放
-
windows
在 Windows 虛擬機(jī)中蝴乔,使用SDelete记餐,將所有未使用的空間置零。
SDelete工具下載地址https://download.sysinternals.com/files/SDelete.zip
SDelete 命令的語(yǔ)法為:
-z 清理可用空間
SDelete -z driveletter
(例:SDelete -z C:)
-
linux
dd if=/dev/zero of=/[mount_path]/zeroes
rm -f /[mount_path]/zeroes
注意:將所有未使用塊置零會(huì)使磁盤增長(zhǎng)到其最大大小薇正,并且會(huì)將其轉(zhuǎn)換為已置零磁盤片酝。如果原始磁盤是精簡(jiǎn)置備磁盤,請(qǐng)確保數(shù)據(jù)存儲(chǔ)上有足夠空間以允許磁盤增長(zhǎng)到其最大大小挖腰。
3. 關(guān)閉虛擬機(jī)或暫時(shí)從虛擬機(jī)中移除虛擬磁盤以確保磁盤未在使用雕沿。
4. SSH登陸EXSI主機(jī)(需要在主機(jī)->配置->安全配置文件->SSH 啟動(dòng)服務(wù))
vmkfstools -K /vmfs/volumes/vm-name.vmdk
(有多個(gè)掛載盤時(shí),分別處理多個(gè)vmdk猴仑,例vmkfstools -K /vmfs/volumes/vm-name_1.vmdk. )
注:I舐帧!辽俗! 不是-flat.vmdk<苍!Q缕A窦瘛D於伞统捶!
注意:punchzero (vmkfstools -K) 命令與基于 NFS 的 VMFS 數(shù)據(jù)存儲(chǔ)不兼容蒿讥。
文末注:改方式linux 已經(jīng)測(cè)試可用挂绰,并且能保留OS內(nèi)部數(shù)據(jù)