[Linux] 리눅스 df 명령어, df 명령어 옵션

df 명령어란?

df는 “disk free”의 줄임말로, 시스템에 마운트된 파일시스템의 디스크 사용량과 남은 공간을 보여주는 명령어임. 서버를 관리하다 보면 “디스크 용량이 부족해서 서비스가 안 된다”는 상황을 자주 겪게 되는데, 이럴 때 가장 먼저 사용하는 명령어가 바로 df임.

윈도우에서 드라이브 속성을 보면 나오는 “사용된 공간”과 “남은 공간” 정보를 리눅스에서 명령어로 확인하는 것이라고 생각하면 됨.

기본 사용법

df

그냥 df만 입력하면 현재 마운트된 모든 파일시스템의 용량 정보가 표시됨. 하지만 기본 출력은 바이트 단위로 나와서 사람이 읽기 어려움.

df -h: 가장 많이 쓰는 조합

df -h

df 명령어를 쓸때 이 옵션을 가장 많이 쓸거임 -h 옵션은 “human-readable”의 줄임말로, 파일 크기를 사람이 읽기 쉽게 KB, MB, GB, TB 단위로 변환해서 보여줌.

예시 출력:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        20G   12G  7.2G  63% /
/dev/sda2       100G   45G   50G  48% /home
tmpfs           2.0G     0  2.0G   0% /dev/shm

이 출력에서 중요하게 봐야 할 것들:

  • Use%: 사용률이 80% 이상이면 주의, 90% 이상이면 위험 신호
  • Avail: 실제로 사용 가능한 남은 공간
  • Mounted on: 해당 파일시스템이 마운트된 경로

주요 옵션들

옵션설명예시
-h사람이 읽기 쉬운 형태로 표시 (KB, MB, GB)df -h
-H1000 단위로 계산 (기본은 1024 단위)df -H
-T파일시스템 타입 표시df -hT
-i아이노드 사용량 표시df -hi
-x특정 파일시스템 타입 제외df -x tmpfs
-t특정 파일시스템 타입만 표시df -t ext4
-a모든 파일시스템 표시 (가상 파일시스템 포함)df -ha
-l로컬 파일시스템만 표시df -hl
--total전체 합계 표시df -h --total

실무에서 자주 쓰는 조합

기본 점검

df -h

일일 서버 점검할 때 가장 먼저 실행하는 명령어임. 각 파티션의 사용량을 한눈에 파악할 수 있음.

파일시스템 타입 확인

df -hT

어떤 파일시스템(ext4, xfs, btrfs 등)을 사용하고 있는지 함께 보고 싶을 때 사용함.

아이노드 사용량 확인

df -hi

디스크 용량은 남았는데 파일을 생성할 수 없다면 아이노드가 부족한 경우일 수 있음. 이때 아이노드 사용량을 확인해야 함.

로컬 파일시스템만 보기

df -hl

NFS나 원격 마운트는 제외하고 로컬 디스크만 확인하고 싶을 때 사용함.

전체 요약 정보

df -h --total

마지막에 전체 디스크 사용량 합계가 표시됨. 서버 전체 용량 현황을 파악할 때 유용함.

df 출력 결과 해석하기

df -h 출력의 각 컬럼 의미:

컬럼의미설명
Filesystem파일시스템장치명 또는 파일시스템 이름
Size전체 크기파일시스템의 총 용량
Used사용 중현재 사용하고 있는 용량
Avail사용 가능실제로 사용할 수 있는 남은 용량
Use%사용률전체 대비 사용 중인 비율
Mounted on마운트 지점파일시스템이 마운트된 디렉토리

주의할 점

Used + Avail ≠ Size인 경우가 있음. 이는 파일시스템이 루트용으로 예약해둔 공간(보통 5%) 때문임.

실무 활용 시나리오

디스크 용량 경고 상황

df -h | grep -E "(8[0-9]%|9[0-9]%|100%)"

사용률이 80% 이상인 파티션만 필터링해서 확인할 수 있음.

특정 디렉토리 용량 확인

df -h /var/log

특정 디렉토리가 어느 파일시스템에 속하는지, 그 파일시스템의 용량 상태는 어떤지 확인할 때 사용함.

용량 모니터링 스크립트

df -h | awk '$5 > 80 {print "Warning: " $1 " is " $5 " full"}'

사용률이 80%를 넘는 파일시스템에 대해 경고 메시지를 출력함.

df vs du 차이점

많은 사람들이 헷갈려하는 부분임:

명령어용도특징
df파일시스템 전체 용량 확인빠름, 전체적인 용량 상태 파악
du특정 디렉토리/파일 용량 확인느림, 세부적인 용량 분석

디스크 용량이 부족할 때는 df로 전체 상황을 파악한 다음, du로 어느 디렉토리가 용량을 많이 차지하는지 찾아가는 순서가 일반적임.

주의사항 및 팁

예약 공간 고려

리눅스 파일시스템은 루트 사용자를 위해 일정 공간(보통 5%)을 예약해둠. 따라서 일반 사용자는 100% 사용할 수 없음.

삭제된 파일 주의

프로세스가 사용 중인 파일을 삭제하면 du에서는 보이지 않지만 df에서는 여전히 사용 중으로 표시됨. 이런 경우 해당 프로세스를 재시작해야 공간이 해제됨.

댓글 남기기