搬運來源: https://blog.csdn.net/weixin_43364556/article/details/107015624
檢查當前容量狀態
命令:df -h
為虛擬機增加硬盤
- 右擊虛擬機,點擊設置,出現下圖
- 點擊添加,選擇硬盤,下一步
- 選擇默認的SCSI,下一步
- 創建新的虛擬機硬盤
- 選擇硬盤大小
- 選擇儲存位置與名稱(這里可以自行選擇儲存的位置,找一個大一點的硬盤儲存即可),將來拷貝虛擬機的時候可以直接將這些文件一起拷走就行。
重啟虛擬機
記得,這里需要重啟虛擬機,因為不重啟虛擬機無法檢測新添加的硬盤(我所知道的的方式,后續有較好的方法再補充)
將添加的硬盤轉化為LVM
LVM是擴容時使用的空間的格式,是linux特有的空間處理方法。
-
利用fdisk -l命令檢查新添加的硬盤
從檢查的結果看,對於原來存在的硬盤,它已經進行了分區(sda1-3,sdc1-3),並且不同的分區分配了不同的大小空間。但是新的磁盤是沒有進行分區的,自然也沒有分配大小。 -
分區
要對新添加的磁盤進行分區,並且轉化為LVM的格式才可以進行擴容
分區命令 fdisk /dev/sd+(新添加的磁盤號碼,比如e)
這里需要進行的操作是按照提示划分出我們想要的分區大小。分區結束后,輸入t(轉換分區的格式),然后選擇8e(選中LVM格式)
分區完成后,輸入w即可完成分區操作。
由於已經將所有的空間划分了,這里沒有可用的sector了,所以沒辦法進行分區,下次分區的時候吧截圖帶上。
創建PV分區
-
檢查當前PV狀態
利用 pvdisplay命令顯示pv分區,這里可以看出每一個分區的詳細情況(PV名稱,對應的VG名稱,空間大小)。可以看出PV分區是與硬盤分區對應的。VG分區(centos)則可以對應多個PV分區,成為一個大的空間。這里的VG分區名稱我們后續也會用到 -
創建PV分區
命令:pvcreate
合並PV到VG組中
- 檢查已有的VG組
命令:vgdisplay
這里我們可以看到VG組的名稱為centos,格式為lvm2.VG的大小為248G,已經分配的PE(Alloc PE),和可用的PE(Free PE).我們分配用的空間就是用的Free PE中的大小,所以下次我們想要分配空間時,再添加新的硬盤之前先檢查Free PE中還有沒有空間可以用。假如存在的話,就不用添加硬盤,接着下面的步驟添加空間即可。 - 擴充VG空間
命令:vgextend
擴充LV空間
-
檢查已有的LV空間
命令:lvdisplay
這里我們可以看出不同的LV是對應着不同的組的,比如LV name是home,他的LV Path是/dev/centos/home。
這里的結果我們可以結合df -h的結果對應着看
假如我們想添加空間到/home中,可以在df -h的結果中看到其對應着/dev/mapper/centos-home。此時centos-home也就對應着LV中的VG name-LV name。可以利用這個對應的信息進行擴容。 -
擴容(兩種方式)
指定大小的擴容(lvextend -L)
指定百分比的擴容(百分比指的是占 Free PE的百分比)(lvextend -l) -
檢查
此時再用vgdisplay命令檢查Free PE的空間就會發現,Free的空間變小了(我這里數據與之前處理的數據總量不對應,因為前面的截圖是后來加上的)
使空間可用
-
檢查空間狀態
雖然給LV組添加了空間,但是通過df -h命令查看發現還是沒有變化,這是因為格式還不對,需要用另外一個命令將這個空間再次轉化 -
最后一步
通過xfs_growfs命令使得新增加的空間可用(此時df -h檢查就可以發現/home的空間增大了)
另外,對於不同的文件系統有不同的命令,我的文件系統(xfs)利用的命令式xfs_growfs,對於另外的系統可以用ext2/3/4則使用resize2fs命令執行即可。