Esxi中CentOS7 擴充套件磁碟容量
伺服器是搭建在Esxi之上,使用Mysql時忽然報錯,資料連線不上,重啟服務也出現問題。使用命令journalctl -xe
檢視一下日誌,發現啟動服務時報錯——
: mariadb.service failed to run 'start-pre' task: No space left on device
查看了下磁碟容量,果真使用100%,都被MySQL目錄下的ibdata1
檔案填滿了。怎麼瘦身下回再說,這次先給磁碟空間作下擴充把。
1. 檢視掛載點資訊
[[email protected]]# df -h
顯示如下:
檔案系統 容量 已用 可用 已用% 掛載點
/dev/mapper/centos-root 36G 36G 20K 100% /
……
可見可用只剩20K,使用已經100%。
2. 擴充套件VMWare硬碟空間
首先需要關閉作業系統,然後在設定中將磁碟調整到需要的容量。
如果選項是灰色的,說明虛擬機器有快照,將其快照刪除再操作。
3. 對新增加的硬碟進行分割槽、格式化
(1)檢視一下調整後的磁碟狀態
[[email protected]]# fdisk -l
顯示資訊:
磁碟 /dev/sda:214.7 GB, 214748364800 位元組,419430400 個扇區
……
說明增加了空間的磁碟是/dev/sda
(2)磁碟分割槽
[[email protected]]# fdisk /dev/sda
分別鍵入以下引數:
p 檢視已分割槽數量(我看到有兩個 /dev/sda1 和/dev/sda2)
n 新增加一個分割槽
p 分割槽型別,選擇主分割槽
分割槽號選3(1和2已佔用,見上)
回車 預設選擇(起始扇區)
回車 預設選擇(結束扇區)
t 修改分割槽型別
選分割槽3
8e 修改為LVM(8e就是LVM)
w 寫分割槽表,完成後退出fdisk命令
使用partprobe
重新讀取分割槽表,或者重啟機器。
[
[email protected]]# partprobe
格式化分割槽
[[email protected]]# mkfs.ext3 /dev/sda3
4. 新增新LVM到已有的LVM組,實現擴容
進入lvm管理
[[email protected]]# lvm
pvcreate /dev/sda3
(2)檢視卷和卷組
vgdisplay
要記下”VG Name”,這裡為centos;再記下”Free PE/Size”的大小,例如這裡為21513
(3)將初始化過的分割槽加入到虛擬卷組
vgextend centos /dev/sda3
剛才記下的”VG Name”就在這裡使用。但是執行到這一步時報錯了:
Couldn't create temporary archive name.
Volume group "centos" metadata archive failed.
Internal error: Attempt to unlock unlocked VG #orphans.
查看了下,因為磁碟實在太小了,無法執行,刪除一些資料就行。
(4)擴充套件已有卷的容量
lvextend -l +21513 /dev/mapper/centos-root
lvextend
指令用於線上擴充套件邏輯卷的空間大小,而不中斷應用程式對邏輯卷的訪問。其後有兩個選項
選項 | 說明 |
---|---|
-L | 指定邏輯卷的大小,單位為“kKmMgGtT”位元組,也就是Size |
-l | 指定邏輯卷的大小,單位為PE數 |
其餘兩個引數:21513 是上邊通過vgdisplay
檢視的free
的大小,後邊的目錄引數/dev/mapper/centos-root
可以通過df
命令檢視
(5)檢視卷容量
pvdisplay
(6)退出
quit
5. 檔案系統擴容
以上只是卷擴容了,還要對檔案系統實現真正擴容
CentOS 7 下面 由於使用的是 XFS,所以要用
xfs_growfs /dev/mapper/centos-root
CentOS 6 下面 要用
resize2fs /dev/mapper/centos-root
6. 檢視新的磁碟空間
df -h