피드로 돌아가기
Disk Has Space But Can't Create Files? (Linux Inode Exhaustion)
Dev.toDev.to
Infrastructure

디스크 여유 공간 50GB에도 발생한 Inode 고갈 문제 해결

Disk Has Space But Can't Create Files? (Linux Inode Exhaustion)

fock1e2026년 4월 10일4intermediate

Context

로그 파이프라인 운영 중 rsyslog 서비스가 ENOSPC 에러와 함께 지속적으로 크래시되는 현상 발생. df -h 확인 결과 루트 파티션 50GB, /var/log 파티션 11GB의 가용 공간이 충분함에도 파일 생성 불능 상태에 직면함.

Technical Solution

  • Disk Space와 Inode라는 두 가지 독립적 파일시스템 자원 관리 체계 분석
  • df -i 명령어를 통한 Inode 사용률 100% 도달 확인 및 자원 고갈 지점 식별
  • 0바이트 크기의 수많은 작은 파일들이 각각 1개의 Inode를 점유하여 발생하는 Inode Exhaustion 메커니즘 파악
  • ARG_MAX 제한으로 인한 rm 명령어 실행 불가 문제를 해결하기 위해 find -delete 방식을 채택한 효율적 리소스 회수
  • logrotate 설정 및 Inode 사용률 기반의 모니터링 알람 체계 구축을 통한 재발 방지 설계

1. 모니터링 지표에 df -h(용량) 외에 df -i(Inode) 사용률 반드시 포함

2. Inode 사용률 85% 도달 시 사전 경고 알람 설정

3. 대량의 파일 삭제 시 쉘 확장 한계를 고려하여 rm 대신 find -delete 사용

4. 커스텀 로그 경로에 대한 logrotate 정책 강제 적용

5. 운영 환경 내 임시 디버깅 스크립트의 생명주기 관리 및 코드 리뷰 강화

원문 읽기