Linux / 명령어 / df - 파일 시스템의 남은 용량 확인
df는 마운트된 파일 시스템별 전체 크기, 사용량과 남은 공간을 보여 줍니다. 디스크가 가득 찼는지 확인할 때 사용하며, 디렉터리별 용량을 구하는 du와는 범위가 다릅니다.
df 명령어란?
df는 개별 파일을 모두 합산하는 대신 파일 시스템의 공간 통계를 읽습니다. Avail은 일반 사용자가 이용 가능한 공간을 나타내며, 예약 블록 등이 있으면 전체 크기에서 사용량을 뺀 값과 정확히 같지 않을 수 있습니다. 블록 공간이 남았어도 inode가 바닥나면 새 파일을 만들지 못할 수 있습니다.
기본 문법
df [옵션] [파일 또는 마운트 지점]
설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man df으로 현재 시스템의 설명을 확인하세요.
사용 예제
전체 파일 시스템 용량
사람이 읽기 쉬운 단위로 마운트된 파일 시스템을 확인합니다.
df -h
특정 경로의 파일 시스템
지정한 경로가 속한 파일 시스템의 여유 공간을 확인합니다.
df -h /var
inode 사용량
용량은 남았는데 파일 생성이 실패할 때 inode 고갈을 확인합니다.
df -i /var
파일시스템 사용률 읽기
df는 파일 한 개의 크기가 아니라 해당 경로가 속한 파일시스템의 공간을 보여줍니다. 루트 경로만 지정하면 관련 마운트 항목으로 범위를 좁힐 수 있습니다.
df -h /
예시 출력(용량과 장치 이름은 환경마다 다름):
Filesystem Size Used Avail Use% Mounted on /dev/sda2 40G 18G 20G 48% /
Avail은 일반 사용자가 쓸 수 있는 공간으로, 파일시스템 예약 블록 때문에 Size - Used와 같지 않을 수 있습니다. df가 꽉 찼는데 파일 크기 합계가 작아 보인다면 삭제됐지만 아직 프로세스가 열고 있는 파일이나 다른 마운트·예약 영역을 점검하세요. 디렉터리별 사용량은 du가 담당합니다.
주요 옵션과 형식
| 옵션·형식 | 설명 |
|---|---|
-h |
크기를 사람이 읽기 쉬운 단위로 표시합니다. |
-T |
파일 시스템 형식을 함께 표시합니다. |
-i |
블록 대신 inode 사용량을 표시합니다. |
-t 형식 |
지정한 파일 시스템 형식만 표시합니다. |
--output=필드 |
필요한 출력 열을 선택합니다. |
사용할 때 주의할 점
네트워크·컨테이너·오버레이 파일 시스템에서는 같은 저장 공간이 여러 행으로 보일 수 있습니다. df와 du 결과가 다르면 삭제됐지만 프로세스가 아직 열고 있는 파일, 예약 블록, 스냅샷 등을 조사하세요. 자동화에서 기본 출력의 열 위치를 고정된 것으로 가정하지 마세요.
자주 묻는 질문
df와 du가 다른 값을 보여 주는 이유는?
df는 파일 시스템의 전체 공간 통계를 보고, du는 접근 가능한 파일·디렉터리의 사용량을 합산합니다. 열린 삭제 파일 등은 두 결과의 차이를 만들 수 있습니다.
공식 문서
옵션의 정확한 동작과 구현별 차이는 df 관련 공식 문서에서 확인할 수 있습니다.









