➊EC2 터미널에서 패키지를 업데이트 하려고 하니 에러가 발생한다. ➋VSCode를 이용해 원격으로 EC2에 접속할 때도 원인을 모를 에러가 발생한다. 디스크 용량이 부족해서 나오는 에러다.
no space left on device
df -h
명령어로 xvda1
디바이스 볼륨 공간을 확인해보니 사용량이 99%
다. 용량 추가가 필요하다. 프리티어 요금제에 기본적으로 주어지는 용량은 8GB지만, 메모리 스왑 등을 하고나면 턱없이 부족하다. 다행히 프리티어는 30GB까지 무료로 사용할 수 있다.
df -h
Filesystem Size Used Avail Use% Mounted on
udev 462M 0 462M 0% /dev
tmpfs 97M 832K 97M 1% /run
/dev/xvda1 7.7G 7.6G 149M 99% / # 인스턴스의 여유 공간이 149M 밖에 남지 않았다.
tmpfs 485M 0 485M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 485M 0 485M 0% /sys/fs/cgroup
EC2 대시보드 → [인스턴스] → [스토리지] → 볼륨 선택 → [볼륨 수정] 버튼 클릭
볼륨 크기 수정
볼륨 확장을 완료할 때까지 대기.
인스턴스에 연결된 블록 디바이스 확인. 루트 볼륨인 /dev/xvda
용량이 30G로 늘어난걸 확인할 수 있다. 하지만 /dev/xvda1
파티션의 용량은 아직 8G 그대로다. 이 파티션 용량을 늘려야 한다.
lsblk
loop8 7:8 0 32.5M 1 loop /snap/snapd/13640
loop9 7:9 0 42.2M 1 loop /snap/snapd/14066
xvda 202:0 0 30G 0 disk
└─xvda1 202:1 0 8G 0 part /
파티션 크기 조정. ⭐️ 디바이스 이름(xvda)과 파티션 번호(1)을 구분하는 공백을 추가해야 한다.
sudo growpart /dev/xvda 1
파티션 크기 확인. /dev/xvda1
파티션 크기가 8G에서 30G로 변경됐다.
lsblk
loop8 7:8 0 32.5M 1 loop /snap/snapd/13640
loop9 7:9 0 42.2M 1 loop /snap/snapd/14066
xvda 202:0 0 30G 0 disk
└─xvda1 202:1 0 30G 0 part /
변경한 /dev/xvda1
파티션 사이즈를 파일 시스템에 적용
sudo resize2fs /dev/xvda1
늘어난 디스크 용량 확인. 디스크 타입도 확인하고 싶다면 df -hT
명령어 입력.
df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 462M 0 462M 0% /dev
tmpfs tmpfs 97M 844K 97M 1% /run
/dev/xvda1 ext4 30G 9.1G 20G 32% /
tmpfs tmpfs 485M 0 485M 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 485M 0 485M 0% /sys/fs/cgroup