您好,登錄后才能下訂單哦!
這篇文章主要介紹linux下分區容量不足了要怎樣進行擴容,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
日常工作中,經常會遇到某個分區剩余容量不足的問題,所以我們需要掌握如何在linux服務器下對分區進行擴容。對于分區擴容,這里分為了兩個情況
LVM分區的擴容
非LVM分區的擴容
LVM分區的擴容
一般,我們都建議使用LVM,這樣方便分區的彈性伸縮。關于LVM的介紹,物理卷、邏輯組、邏輯卷等這里就不細說了,大家可以去看看我另外的兩篇關于LVM的文章。
場景:/www 目錄是我們的和網站相關的目錄,這個目錄所掛載的分區采用了LVM,本來這個目錄有1G空間大小,但是隨著系統的運行,剩余空間只剩下不到100M了。現在需對該分區進行擴容。
準備工作,實現場景
# pvcreate /dev/sdb1 # vgcreate vgwww /dev/sdb1 # lvcreate -l 255 vgwww # mkfs.ext4 /dev/vgwww/lvol0 # mount /dev/vgwww/lvol0 /www # dd if=/dev/zero of=/www/bigfile bs=1M count=900 # df -h …… /dev/mapper/vgwww-lvol0 988M 903M 19M 98% /www
分區擴容
首先,我們要看vgwww還有沒有剩余空間,如果沒有的話,則需要先在vgwww中添加pv。
# vgdisplay vgwww …… Free PE / Size 0 / 0 <=== 沒喲剩余空間了 VG UUID xdw96k-xZNv-tmVf-Pkcx-SX7T-C1tz-ZZq3HG
通過上面信息可以得知,該vg沒有剩余空間了。那么就需要對此vg增加pv了。現在我們看看有沒有沒有被使用的pv,如果沒有的話,先需要創建pv。
# pvscan PV /dev/sdb1 VG vgwww lvm2 [1020.00 MiB / 0 free] Total: 1 [1020.00 MiB] / in use: 1 [1020.00 MiB] / in no VG: 0 [0 ]
可以看到,沒有可用的pv。那么,先創建pv
# pvcreate /dev/sdc1 Physical volume "/dev/sdc1" successfully created. # pvscan PV /dev/sdb1 VG vgwww lvm2 [1020.00 MiB / 0 free] PV /dev/sdc1 lvm2 [1023.00 MiB] Total: 2 [<2.00 GiB] / in use: 1 [1020.00 MiB] / in no VG: 1 [1023.00 MiB]
pv已經有了,那么將新的pv加到vgwww邏輯卷組中。
# vgextend vgwww /dev/sdc1 Volume group "vgwww" successfully extended # vgdisplay vgwww …… Free PE / Size 255 / 1020.00 MiB VG UUID xdw96k-xZNv-tmVf-Pkcx-SX7T-C1tz-ZZq3HG
現在vg多出了255個PE沒有被使用。接下來,就是對LV進行擴容了
# lvresize -l +255 /dev/vgwww/lvol0 Size of logical volume vgwww/lvol0 changed from 1020.00 MiB (255 extents) to 1.99 GiB (510 extents). Logical volume vgwww/lvol0 successfully resized. # lvdisplay --- Logical volume --- …… LV Size 1.99 GiB <=== lv已經變為了1.99G了 ……
這個時候,雖然lv大小變大了,但是/dev/mapper/vgwww-lvol0文件系統并沒有變大。
# df -h 文件系統 容量 已用 可用 已用% 掛載點 …… /dev/mapper/vgwww-lvol0 988M 903M 19M 98% /www
這個時候,我們還需要xfs_growfs (針對xfs文件系統)或resize2fs (針對ext文件系統)來處理下。
# 該主機使用的是ext4文件系統 # resize2fs /dev/vgwww/lvol0 # df -h 文件系統 容量 已用 可用 已用% 掛載點 …… /dev/mapper/vgwww-lvol0 2.0G 904M 982M 48% /www
至此,對于該文件系統的擴容完成了。
非LVM分區的擴容
最近,我就碰到了這個情況。我有一個朋友,他的阿里云服務器根分區快滿了,本來40G的云盤,后來加了20G。找到我說,我明明已經加了20G,怎么顯示還是40G阿,讓我幫他解決下問題。
不巧的是,它根目錄沒有使用lvm,我也一時半會不知道怎么辦。后來查詢了相關信息,找到了一個解決辦法。但是這個解決辦法是有局限性的,就是對需要擴容的分區,這個分區必須是該磁盤的最后一個分區。
下面首先模擬場景:/bak 目錄掛載在一個單獨的分區,該分區開始時候分了500M,現在需要對其進行擴容操作
# df -h 文件系統 容量 已用 可用 已用% 掛載點 …… /dev/sdd1 497M 26M 472M 6% /bak
開始擴容操作
# 首先卸載掛載點 # fdisk /dev/sdd …… 命令(輸入 m 獲取幫助):p …… 設備 Boot Start End Blocks Id System /dev/sdd1 2048 1026047 512000 83 Linux #記住開始點,即2048。然后刪除該分區,重新建立分區 命令(輸入 m 獲取幫助):d 已選擇分區 1 分區 1 已刪除 命令(輸入 m 獲取幫助):n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): Using default response p 分區號 (1-4,默認 1): 起始 扇區 (2048-2097151,默認為 2048):2048 Last 扇區, +扇區 or +size{K,M,G} (2048-2097151,默認為 2097151): 將使用默認值 2097151 分區 1 已設置為 Linux 類型,大小設為 1023 MiB 命令(輸入 m 獲取幫助):w # partprobe
這個時候,通過lsblk命令查看該分區大小已經變大了,但是df -h的結果還是沒變,需要使用xfs_growfs 命令處理下。
# xfs_growfs /dev/sdd1 # df -h 文件系統 容量 已用 可用 已用% 掛載點 …… /dev/sdd1 1020M 26M 995M 3% /bak
另外有一點需要特別注意:絕對不能對該分區寫入文件系統,這樣之前的數據就都沒了
以上是linux下分區容量不足了要怎樣進行擴容的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。