AWS EC2 디스크 공간 부족 현상 해결
# 서론
EC2 내부 리눅스 파일 시스템에서 vim을 통해 무언가 작업을 하려고 할 때, 디스크 공간이 부족해서 저장이 안 되는 경우가 생길 수 있다.
기본적으로 EC2 프리티어 t2.micro 인스턴스를 기준으로 설명하며, 디폴트 디스크 크기는 8GiB이다. (30GiB까지 무료로 확장할 수 있다.)
# 디스크 공간 사용량 확인
df 명령어를 통해서 현재 디스크 사용량을 파악할 수 있다.
공간 부족 에러가 발생했을경우 Use%가 100%인 디렉토리가 있을 것이다.
필자는 /dev/root 디렉토리가 8GiB로, 꽉 차 있었었다.
# 용량이 큰 파일 찾기
sudo du -sh * | sort -hr 명령어를 입력하면 해당 디렉토리에 용량이 큰 파일을 순서대로 정렬해서 보여준다.
디렉토리를 이동하면서 불필요한 용량을 가진 파일을 삭제해도 되지만, 필자는 운영서버에서 서버를 운영할 때 필요한 라이브러리나 모듈 파일들을 설치하다보니 용량 부족 문제에 직면하게 된 것 이었다.
따라서 8GiB였던 디스크 크기를 30GiB까지 확장하기로 결정했다.
# AWS EC2 디스크 볼륨 확장
EBS 볼륨이라고 해서 EC2에 기본으로 제공되는 디스크 용량은 8GiB이다.
볼륨을 원하는 크기로 수정한다. (EC2 인스턴스가 실행중일 때도 변경이 가능하다.)
실수로 32GiB까지 확장을 해버렸는데, 한 번 확장하면 축소는 할 수 없는 것 같다...
여튼 이렇게 수정하고 다시 EC2로 접속해서 확장한 EBS볼륨을 할당해 주어야한다. (웹 인터페이스에서 변경한다고 EC2에 바로 적용되는 것이 아니다!)
따라서 다음 명령어를 순서대로 입력한다.
1. lsblk
- 디스크 공간 확인
2. sudo growpart /dev/xvda 1
- 디스크 공간 확장
3. sudo resize2fs /dev/xvda1
- 디스크 할당