最近一直在用Vulhub做反序列化漏洞的復現,每次在pull完一個新的鏡像后,Linux系統都會提示“您的磁盤空間不足xxxMB”,但因為鏡像都不算特別大,用完后想拉新鏡像的時候只需要先把用完的鏡像刪掉。但這種“和諧的狀態”被Weblogic < 10.3.6 'wls-wsat' XMLDecoder 反序列化漏洞(CVE-2017-10271)無情地打破了,鏡像足足有兩個多G!!!於是我只好上網搜集Linux虛擬機磁盤空間不足的解決辦法,花費了半天的時間終於弄好了,在此做一個總結。
擴展大致分為兩個步驟:
(1)在虛擬機設置中划定新的虛擬機磁盤大小
(2)使用Gparted工具將新增加的磁盤空間利用起來
1、我的虛擬機的磁盤空間現在為20GB,現在我想要將它擴展為30GB。首先我們不啟動虛擬機,點擊“編輯虛擬機設置”→選擇“硬盤”→點擊“擴展”,再輸入希望擴展后磁盤能夠達到的大小,我這里輸入的是30GB。(在擴展前需要把快照全部刪除掉)
但這里可能存在問題:點擊擴展后會出現如下報錯
那是因為你在建立虛擬機的時候,虛擬磁盤文件選擇的是分多個文件存儲,我們可以通過以下步驟來解決這個報錯:
(1)打開cmd命令行,cd到VMware的安裝目錄。
(2)然后打開你的虛擬機,查看你虛擬機的磁盤文件地址,打開“編輯虛擬機設置”找到磁盤復制后面的地址。
(3)在該虛擬機文件夾里面新建一個文件夾,給它隨意起一個名字。
(4)現在返回到cmd命令行,並執行以下命令:
vmware-vdiskmanager.exe -r "你的磁盤文件地址" -t 0 "合拼后的磁盤文件地址"
以我的舉例:vmware-vdiskmanager.exe -r "D:\Virtual machine\kali(Docker)\kali-000002.vmdk" -t 0 "D:\Virtual machine\kali(Docker)\new\kali-000002.vmdk"
(5)命令完成后,我們返回到new文件夾,能夠看到一個生成的kali-000002.vmdk文件。
(6)然后我們返回上一級目錄,將系統鏡像文件夾中的kali.vmx復制到new文件夾中(.vmx是配置文件)。
(7)現在我們選擇“打開虛擬機”,選擇new目錄下的.vmx文件,然后再點擊“編輯虛擬機設置”進行磁盤擴展就不會報錯了。
2、這時磁盤是擴展了,但是並沒有把空間分配到掛載點/ 下,新擴展的10G空間目前還是未使用狀態,所以需要下載個分盤工具來將這10G空間分配出去。下一個GParted的iso文件 (地址:http://sourceforge.net/projects/gparted/?source=dlp),很快很好用。
3、點擊“編輯虛擬機設置”,再CD/DVD(IDE)那里使用我們剛下載好的gparted iso鏡像。
4、然后開啟此虛擬機,這里注意,當當啟動linux后出現進度條時,趕緊點一下屏幕,然后迅速按下esc鍵,就可以進入啟動項設置頁面,動作一定要快。這里我們選擇CD-ROM Drive。
5、啟動后進入GParted工具頁面。這里選擇第一項
6、選擇第二項(按Tab鍵選擇OK)
7、選擇語言,選擇【26】,簡體中文
8、選擇圖形化界面【0】
9、這時會出現分區工具的圖形化界面,選擇需要擴展的分區。如果你不清楚自己要擴展的分區是哪一個,可以看已用最多,幾乎快占滿了的那個。
比如上圖我的要擴展的分區就是/dev/sda1。
10、首先把類型為extended(擴展)的分區刪除,保證沒有extended類型的分區。
11、在sda1分區(這個是主分區,一定別亂動),右鍵“調整/移動大小”,把你想改成的新的磁盤大小填進去。
比如我原有20GB的空間,現有10GB新的空間,想把原有的空間增大到30GB,那么新大小(Mib)就設為30*1024,但我還想余出2GB分給swap,於是這里我設為28*1024=28672Mib。
擴展玩/dev/sda1后再將swap分區添加上,如下圖所示:
最后點擊上面的對勾即可執行這些操作。
12、最后退回工具的桌面,點擊左上角的紅色關機按鈕,選擇reboot重啟即可。
我的漏洞鏡像成功pull到本地~
參考文章:
(20條消息) 虛擬機linux磁盤空間不足的解決辦法_p312011150的博客-CSDN博客_linux虛擬機磁盤容量不夠
在VMware擴展磁盤容量的時候出現“在部分鏈上無法執行所調用的函數。請打開父虛擬磁盤。”怎么辦? - MDP BLOG (madapang.com)