Linux 디스크 관리 명령어 - df, du, lsblk



Linux에서 디스크 사용량과 파티션 정보를 확인하는 핵심 명령어들입니다.



주요 명령어


df -h        # 파일시스템 디스크 사용량
du -sh * # 현재 디렉토리 항목별 크기
lsblk # 블록 장치 목록
fdisk -l # 파티션 상세 정보


df (Disk Free) 명령어


# 사람이 읽기 쉬운 형식
df -h

# 특정 파일시스템만 표시
df -h /home

# 파일시스템 타입 표시
df -hT

# inode 사용량 확인
df -i

# 결과 예시:
# Filesystem Size Used Avail Use% Mounted on
# /dev/sda1 100G 45G 55G 45% /


du (Disk Usage) 명령어


# 현재 디렉토리 총 크기
du -sh

# 하위 항목별 크기
du -sh *

# 깊이 1레벨까지만
du -h --max-depth=1

# 가장 큰 파일/폴더 찾기
du -sh * | sort -rh | head -10

# 특정 폴더 크기
du -sh /var/log

# 숨김 파일 포함
du -sh .[!.]* *


lsblk (List Block) 명령어


# 기본 출력
lsblk

# 파일시스템 정보 포함
lsblk -f

# 크기 정보 포함
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT

# 결과 예시:
# NAME SIZE TYPE MOUNTPOINT
# sda 100G disk
# ├─sda1 50G part /
# └─sda2 50G part /home


fdisk 명령어


# 모든 디스크 파티션 정보 (root 권한 필요)
sudo fdisk -l

# 특정 디스크 정보
sudo fdisk -l /dev/sda

# 파티션 편집 (주의!)
sudo fdisk /dev/sdb


실용적인 활용 예시


# 디스크 사용량 90% 이상인 파티션 찾기
df -h | awk '+$5 >= 90 {print}'

# /var 아래 큰 파일 찾기
find /var -type f -size +100M -exec ls -lh {} ;

# 로그 파일 크기 확인
du -sh /var/log/*

# 삭제된 파일이 여전히 공간 차지하는지 확인
lsof | grep deleted


디스크 정리 팁


# 오래된 로그 삭제
find /var/log -name "*.log" -mtime +30 -delete

# systemd 저널 정리
journalctl --vacuum-time=7d

# 패키지 캐시 정리 (CentOS/RHEL)
yum clean all

# 패키지 캐시 정리 (Ubuntu/Debian)
apt-get clean


옵션 요약








-h사람이 읽기 쉬운 크기 (Human readable)
-s요약 (Summary)
-T파일시스템 타입 표시
-f파일시스템 정보
-l상세 목록