리눅스·EC2 디스크가 꽉 찼어요 — 원인 찾고 안전하게 비우는 법
최종 업데이트: 2026-06-28
갑자기 "No space left on device" 에러가 뜨고 서비스가 멈췄나요? 대부분 범인은 쌓인 로그, 도커 이미지, 임시 파일입니다. 순서대로 찾아 비우면 됩니다.
1. 어디가 찼는지 본다
먼저 전체 사용량을, 그다음 어떤 폴더가 큰지 확인합니다.
df -h sudo du -h -d1 / | sort -h | tail -20
2. 흔한 범인 3가지
- 폭증한 로그: /var/log 아래 로그가 수 GB로 커진 경우가 많습니다.
- 도커 이미지·컨테이너: docker system df 로 확인. 안 쓰는 이미지·중지된 컨테이너가 쌓입니다.
- 임시 파일·오래된 빌드·DB 덤프: /tmp, 배포 캐시, 백업 파일.
3. 안전하게 비운다
도커를 쓴다면 안 쓰는 리소스를 정리하고, 로그는 로테이션을 설정합니다.
docker system prune -a # 안 쓰는 이미지/컨테이너 정리(주의: 사용 중 아닌 것만)
실제 서비스 데이터·실DB 파일은 절대 임의로 지우지 마세요. 무엇인지 모르는 큰 파일은 지우기 전에 용도를 먼저 확인하세요.
4. 재발을 막는다
한 번 비워도 또 찹니다. logrotate로 로그를 자동 정리하고, 디스크가 80%에 도달하기 전에 미리 알림을 받는 것이 핵심입니다.
Sentibel은 디스크 사용률 추세를 보고 가득 차기 전에 경고를 보냅니다. 터진 다음 아는 대신, 며칠 전에 대응할 수 있습니다.