iT邦幫忙

0

Proxmox虛擬機備份壓縮檔案大小

  • 分享至 

  • twitterImage

各位好
目前我有遇到一個讓問題
我有兩台虛擬機,用相同的方式去作備份
但備份出來的大小有所不同

兩台虛擬機實際使用空間大小大小:
php5:145-110+153-147=41 GB
php7:145-103+153-142=53 GB

https://ithelp.ithome.com.tw/upload/images/20211207/20137870bDIxi9e35l.png

https://ithelp.ithome.com.tw/upload/images/20211207/20137870XprUzfKIlP.png

使用排程每日作例行備份,備份方法皆相同
https://ithelp.ithome.com.tw/upload/images/20211207/201378709WHYmNBO2n.png

結果備份出來的檔案大小相差很大
一個變小了,一個變大了?
php5:41GB → 26.7GB
php7:53GB → 62.1GB

https://ithelp.ithome.com.tw/upload/images/20211207/20137870ppKoE7OTr0.png

想請教一下版上的各位高手
究竟是什麼原因會導致如此狀況
讓這樣備份出來的檔案會有如此差異

如果可以,我希望檔案是能壓縮愈小愈好
是否有什麼方法可以改進呢?謝謝

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

2
Ray
iT邦大神 1 級 ‧ 2021-12-07 11:48:49
最佳解答

先去 Storage 底下找到每個 VM 的 Disk, 看看它的實際大小是多少?
Guest OS 裡面看到的容量, 不等於 VM 實際存放在 Storage 的容量;
尤其如果你用 Thin Provision 建立磁碟的話, 容量有可能越用越大...

你可以嘗試看看:
拷貝一個 20GB 的檔案 (內容不能有連續的 0x00 資料) 到 Windows,
然後再把它刪掉, 讓 Guest 裡面的 Disk 看起來跟原來的容量相同,
重複這個動作兩三次, 去 Host 上的 Storage 看一下容量有沒有變化?
然後跑一次備份, 看看備出來的容量是否跟原本不一樣?

解法:
在 Guest 內用 fstrim 或 sdelete 指令, 將已經刪掉的檔案區域填 0x00 進去
原理:
http://www.gienginali.idv.tw/modules/tad_book3/html.php?tbdsn=469

breakgod iT邦新手 2 級 ‧ 2021-12-08 16:11:00 檢舉

你好
請問有沒有什麼具體的指令,或者可以參考的文章呢?
proxmox新手不是很明白該如何操作,sdelete網路上也找不太到這方面的關鍵字,謝謝

Ray iT邦大神 1 級 ‧ 2021-12-08 16:24:46 檢舉
breakgod iT邦新手 2 級 ‧ 2021-12-09 08:46:36 檢舉

感謝大大的分享,知道工具就好辨事了,已經成功瘦身了!!

我要發表回答

立即登入回答