發覺一些問題
如果在 virtualbox 中安裝一些套件
例如安裝 pytorch 或是一些套件
都會需要下載很多檔案以及產生暫存檔案
也許將那些暫存檔案刪除之後
總使用空間是15G
但是在外面的 vdi 檔案可能有25G甚至30G
因為這檔案基本只會增加不會變少
但是這樣的話
對於要轉移 virtualbox 系統來說就非常麻煩
因為不可能每次都準備這麼大的隨身碟
甚至有時候連 隨身碟 都不能使用
所以 將 vdi 檔案瘦身是必要的
上網找一找的方法就是
"對於 Linux,請使用支援 ext2/ext3 檔案系統的Zerofree實用程式"
https://docs.oracle.com/en/virtualization/virtualbox/6.0/user/vboxmanage-modifymedium.html
使用方式可以參考
https://askubuntu.com/questions/1092812/zerofree-on-ubuntu-18-04
先安裝 zerofree
sudo apt-get install zerofree
在 virtualbox 啟動時按 ESC 進入 Recovery Mode
然後執行
zerofree /dev/sda1
這邊可能會遇到很多錯誤
例如
zerofree failed to open filesystem sda1
或是
filesystem dev/sda1 is mounted rw
首先要注意的是
sda1並不是絕對的
必須使用 df 來看看目前跟目錄掛載的硬碟檔案是哪一個
例如我這邊 virtualbox 掛載的是 lv 檔案
所以我要執行的指令是
zerofree /dev/mapper/ubuntu–vg-ubuntu–lv
完成之後
退出 virtualbox
然後到 virtualbox 安裝資料夾開啟 終端機
執行
VBoxManage modifyhd "D:\VirtualBox VMs\ubuntu22server\ubuntu22server.vdi" --compact
應該就可以看到檔案縮小了
可以從圖片看到
下面是我原本備份vdi 檔案的大小
有 20G + 10G左右
縮小後可以到達 11G + 7G
差非常多
所以如果要用 virtualbox 做系統展示或是應用
這招最好要學起來
給大家參考囉~~
留言板
歡迎留下建議與分享!希望一起交流!感恩!