問題描述:
您使用(ami-030bdd6e)這個AMI,創建了一臺Centos的實例,創建實例時磁盤給的是50G,但是連接這個Centos實例後,發現存儲只有8G,請問這是爲什麼以及有什麼辦法可以把剩餘的磁盤空間擴展到當前這個分區?
如果我的理解有誤,請您及時指出。
分析過程及建議:
我使用相同的 AMI(ami-030bdd6e)創建實例,並指定 EBS 卷爲 50G,連接到實例後,看到根卷爲 8G,重現了您遇到的問題。
[centos@ip-10-100-101-232 ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.8G 665M 6.7G 9% /
tmpfs 498M 0 498M 0% /dev/shm
[centos@ip-10-100-101-232 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 50G 0 disk
└─xvda1 202:1 0 8G 0 part /
這是由於 CENTOS 6 的 AMI 不能通過 growpart 在實例啓動時自動調整根分區。
我測試了一下,可以通過手動安裝 growpart 後,通過 growpart 命令來手動擴展根卷的分區。請注意,在手動擴展根卷的分區的過程中,可能需要重新啓動實例。
另外,在擴展包含有用數據的文件系統之前,最佳實踐是創建包含它的卷的快照 (如果您需要回滾您的更改)。有關 EBS 快照的信息,請參考以下官方文檔:
http://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html
我的測試步驟如下,供您參考:
先通過如下命令安裝 growpart
$ sudo yum install epel-release
$ sudo yum install cloud-utils-growpart
使用 growpart 命令來手動擴展根卷的分區
[centos@ip-10-100-101-232 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 50G 0 disk
└─xvda1 202:1 0 8G 0 part /
[centos@ip-10-100-101-232 ~]$ sudo growpart /dev/xvda 1
CHANGED: partition=1 start=2048 old: size=16775168 end=16777216 new: size=104854207,end=104856255
[centos@ip-10-100-101-232 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 50G 0 disk
└─xvda1 202:1 0 8G 0 part /
重新啓動實例後,通過命令再次查看,根卷已經擴展到 50G:
[centos@ip-10-100-101-232 ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 50G 749M 46G 2% /
tmpfs 498M 0 498M 0% /dev/shm
[centos@ip-10-100-101-232 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 50G 0 disk
└─xvda1 202:1 0 50G 0 part /