리눅스에서 스토리지 점검 가이드

리눅스 스토리지 상태를 용량, inode, mount, lsblk/findmnt, LVM, iostat, dmesg, smartctl, nvme-cli, 삭제된 파일 핸들 기준으로 점검하는 가이드입니다.

리눅스 스토리지 점검은 용량 확인만으로 끝나지 않습니다. 파일시스템 사용률, inode, 마운트 상태, 블록 디바이스, LVM, I/O 지연, 커널 로그, 디스크 S.M.A.R.T./NVMe 상태를 함께 봐야 실제 장애 가능성을 판단할 수 있습니다.

용량과 inode 확인

먼저 파일시스템 사용량과 inode 고갈 여부를 확인합니다. 용량이 남아 있어도 inode가 100%면 새 파일을 만들 수 없습니다.

df -hT
df -ih

특정 디렉터리가 커졌는지 볼 때는 같은 파일시스템 안에서 한 단계씩 좁힙니다.

sudo du -xhd1 / | sort -h
sudo du -xhd1 /var | sort -h
sudo du -xhd1 /var/log | sort -h

-x는 다른 파일시스템으로 넘어가지 않게 합니다. NFS나 별도 마운트가 섞인 서버에서 원인을 잘못 잡는 일을 줄여줍니다.

마운트와 블록 디바이스 구조 확인

디스크, 파티션, LVM, 파일시스템, 마운트포인트 관계는 lsblkfindmnt로 보는 것이 가장 읽기 쉽습니다.

lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS,MODEL,SERIAL
findmnt -D
findmnt /var
cat /etc/fstab

부팅 후 특정 마운트가 빠졌거나 읽기 전용으로 바뀐 경우 서비스 장애로 이어질 수 있습니다.

mount | grep ' ro[),]'
dmesg -T | egrep -i 'I/O error|EXT4-fs error|XFS.*error|Buffer I/O|read-only'

LVM 사용 서버 확인

LVM을 쓰는 서버라면 물리 볼륨, 볼륨 그룹, 논리 볼륨을 각각 확인합니다.

sudo pvs
sudo vgs
sudo lvs -a -o +devices

볼륨 그룹에 free 공간이 있으면 논리 볼륨 확장이 가능합니다. 단, 파일시스템 종류에 따라 확장 명령이 다릅니다.

# ext4 예시
sudo lvextend -r -L +20G /dev/vg0/lv_var

# XFS는 보통 마운트 상태에서 grow만 가능합니다.
sudo lvextend -L +20G /dev/vg0/lv_data
sudo xfs_growfs /data

운영 서버에서 확장 전에는 스냅샷/백업과 대상 디바이스 확인이 선행되어야 합니다.

I/O 지연 확인

디스크 용량은 충분한데 서비스가 느리면 I/O wait와 디스크 큐를 봅니다.

iostat -xz 1 5
vmstat 1 5
pidstat -d 1 5

iostat%util, await, r/s, w/s를 같이 봅니다. 단일 지표 하나만으로 장애라고 단정하지 말고, 애플리케이션 지연 시간과 커널 로그를 함께 대조해야 합니다.

S.M.A.R.T.와 NVMe 상태

물리 디스크나 VM에 passthrough된 디스크는 smartctl로 상태를 확인합니다.

sudo smartctl -a /dev/sda
sudo smartctl -H /dev/sda

NVMe 장치는 별도 도구가 더 보기 좋습니다.

sudo nvme list
sudo nvme smart-log /dev/nvme0

필요 패키지는 배포판에 맞게 설치합니다.

# Ubuntu/Debian
sudo apt install -y smartmontools nvme-cli sysstat

# RHEL 계열
sudo dnf install -y smartmontools nvme-cli sysstat

삭제했는데 용량이 안 줄어드는 경우

로그 파일을 삭제했는데 df 사용량이 줄지 않으면 프로세스가 삭제된 파일을 계속 잡고 있을 수 있습니다.

sudo lsof +L1
sudo lsof | grep deleted | head

이 경우 해당 프로세스를 재시작해야 파일 핸들이 해제됩니다. 무조건 서버를 재부팅하기보다 어떤 프로세스가 잡고 있는지 먼저 확인합니다.

점검 결론을 남기는 방식

스토리지 장애 보고에는 df -hT, df -ih, lsblk, findmnt, iostat, dmesg, smartctl 결과를 함께 남기는 것이 좋습니다. “용량 부족”, “inode 고갈”, “마운트 누락”, “읽기 전용 전환”, “I/O 지연”, “디스크 장애 징후” 중 어느 유형인지 분류해 두면 후속 조치가 명확해집니다.

BGM EVER