本文講解如何修改AWS EBS磁碟容量,並擴展Linux file system。
Modify EBS Volume
- 到AWS EBS磁碟區,選擇你想變更的目標磁碟,右鍵選擇「Modify Volume」。
- 填入你想增加或減少到多少容量,或是變更Volume Type。
有關Volume type的差異,請見:Amazon EBS volume types - 設定完成後,該volume的state會是 in-use (optimizing),隨著時間會增加處理百分比,因為AWS會以不影響到原本資料的方式去增加容量。
設定到這邊,還沒完成,我們還需要去擴展file system大小。
Extending a Linux file system after resizing a volume
- 請先連線至你的instance(連接方式可參考:[AWS] WordPress 更新失敗解決)。
- 這邊以linux系統為例:連入後使用以下指令查看磁區檔案系統類型。
$ df -hT
可以看到/dev/xvda1 的 type 是 ext4,總容量是30G,目前使用21G,剩餘容量為8.3G。 - 再來使用下面指令查看磁碟是否有我們剛才在AWS EBS增加的磁區,下圖顯示連接到執行個體之區塊型儲存設備的相關資訊。
$ lsblk
可以看到根磁碟區 /dev/xvda 具有分割區 /dev/xvda1。在磁碟區的大小為 60 GB 時,分割區的大小仍為 30 GB,且必須加以擴展。 - 接著使用以下指令擴展磁碟分割區。請注意,裝置名稱與分割區號碼之間有一個空格。
$ sudo growpart /dev/xvda 1
擴展後再次使用lsblk
檢查磁碟分割區大小。 -
確認擴展磁區後,接著我們要擴展磁區上的檔案系統,這邊會有[ext4 磁碟區]以及[XFS 磁碟區]。
- [ext4 磁碟區] 使用 resize2fs 命令來擴展每個磁碟區上的檔案系統。
$ sudo resize2fs /dev/xvda1
- [XFS 磁碟區] 使用 xfs_growfs 命令來擴展每個磁碟區上的檔案系統。在此範例中,/ 和 /data 是 df -h 輸出中顯示的磁碟區裝載點。
$ sudo xfs_growfs -d /
$ sudo xfs_growfs -d /data
如果尚未安裝 XFS 工具,您可以依照下列方式安裝它們。$ sudo yum install xfsprogs
- [ext4 磁碟區] 使用 resize2fs 命令來擴展每個磁碟區上的檔案系統。
- 最後使用
$ df -h
再次確認容量。
看到已經正確更新為59(60)G。
最後回到AWS EBS查看,Size已經更新為你所變更的容量。
留言