티스토리 뷰
비어 있는 메모리와 사용할 수 있는 메모리는 다릅니다
메모리 화면에서 free가 작으면 메모리가 부족하다고 단정하기 쉽습니다. Linux는 메모리를 캐시 등에 활용하므로 비어 있는 양만으로 새로운 작업에 사용할 수 있는 공간을 판단하기 어렵습니다. free 출력의 available과 시간에 따른 변화, 실제 오류를 함께 보는 방법이 필요합니다.
이 글은 procps의 free를 사용하는 Linux에 대한 설명입니다. 특정 서버의 정상 기준이나 증설 기준을 정하지 않습니다. 같은 명령 이름이어도 도구 버전과 커널에 따라 표시가 달라질 수 있으므로 환경과 열 이름을 함께 기록합니다.
한 번의 화면 대신 같은 단위의 표본을 봅니다
free -m
free -m -s 5 -c 3
두 번째 예시는 5초 간격으로 세 번 표시하는 조회입니다. 지원 옵션은 설치된 free의 도움말로 확인합니다. total, used, free, buff/cache, available 등의 열을 먼저 읽고 각 표본을 같은 단위로 비교합니다. available은 새 애플리케이션을 시작할 때 사용할 수 있는 메모리의 추정치를 이해하는 데 도움이 됩니다.
교육용 예시에서 total 8192MB, free 300MB, available 2800MB라면 free 300MB만 보고 즉시 고갈이라고 쓰지 않습니다. 반대로 available이 줄어들고 응답 지연이나 메모리 관련 오류가 나타나면 추가 조사가 필요합니다. 이 숫자는 실제 호스트의 측정값이 아닙니다.
swap과 애플리케이션 증상을 함께 기록합니다
swap 사용량이 있다는 사실 하나도 장애 증거로 충분하지 않습니다. 이전 작업의 흔적이 남을 수 있고 현재 입출력 발생 여부는 다른 조회가 필요합니다. 메모리 변화 시각과 사용자가 느끼는 지연, 프로세스 변화, 시스템 로그를 함께 비교합니다. 원인 확인 없이 캐시를 비우거나 프로세스를 종료하지 않습니다.
컨테이너에서는 호스트 전체의 숫자와 컨테이너 제한을 섞지 않는 것이 중요합니다. 프로세스가 제한에 부딪혔는지 확인하려면 해당 실행 환경의 자원 제한과 관찰 지표를 따로 봅니다. 이 글의 free 조회만으로 특정 애플리케이션의 누수를 진단할 수는 없습니다.
표시 단위를 먼저 통일합니다
free -m 출력은 일반적으로 MiB 단위입니다. 화면에서 MB라고 간단히 부르면 다른 도구의 1000 기반 MB와 숫자가 다를 수 있으므로 단위를 정확히 적습니다. 하루 간격 자료와 5초 간격 자료도 같은 추세처럼 연결하지 않습니다. 샘플 수와 간격을 기록해 비교 조건을 맞춥니다.
가상 표본 세 개에서 available이 2800, 2700, 2750MiB라면 이 짧은 변화만으로 누수라고 판단할 수 없습니다. 일정 업무량에서 장기간 감소가 지속되는지와 해당 프로세스의 상태를 더 봐야 합니다. 성능 보고에는 측정한 짧은 구간과 미측정 장기 구간을 나누어 표시합니다.
메모리 점검 기록을 개선합니다
시각 | 환경 | total | available | swap used | 증상
실제 표본 1 | 호스트/컨테이너 구분 | 측정값 | 측정값 | 측정값 | 관찰
실제 표본 2 | 동일 조건 | 측정값 | 측정값 | 측정값 | 관찰
정상 기준은 업무량과 과거 같은 시간대의 자료를 바탕으로 정합니다. 무조건 available이 특정 퍼센트 아래면 장애라는 공통 기준을 만들기보다 지속 시간과 실제 영향도 포함하세요. 표본을 얻지 못한 항목은 빈칸 대신 미확인으로 표시합니다.
오늘은 점검표의 ‘메모리 사용률’ 한 칸을 환경·available·증상으로 나누어 보세요. 본문 명령은 운영 서버에서 실행하지 않았고 출력 수치는 교육용입니다. 실제 조치 판단은 로그와 담당자의 확인을 더해야 합니다.
공식 자료와 확인 범위
기술 자료 확인일: 2026년 10월 12일. 교육용 자료는 실제 기관·고객의 기록이 아닙니다.
'AI·IT 실무' 카테고리의 다른 글
| 디스크 공간은 남았는데 파일 생성이 실패할 때: inode·권한·읽기 전용 확인 (0) | 2026.10.16 |
|---|---|
| Linux df와 du의 용량이 다른 이유: 같은 파일시스템부터 비교하기 (0) | 2026.10.16 |
| 사이트 연결 실패를 DNS·TCP·로그인·화면 단계로 나누어 확인하기 (0) | 2026.10.15 |
| Windows 오류 발생 시각 찾기: 이벤트 로그를 좁혀 읽는 순서 (0) | 2026.10.15 |
| 백업 성공 메시지 다음에 할 일: 작은 파일로 복원 테스트하는 방법 (0) | 2026.10.14 |
