Linux에서 디스크 공간이 누락되었습니다.

Linux에서 디스크 공간이 누락되었습니다.

거의 꽉 찬 30GB의 디스크 공간이 있는 Ubuntu 상자가 있습니다.

df -h

Filesystem      Size  Used Avail Use% Mounted on 
/dev/vda1        30G  28G     0  100% /

하지만 모든 루트 폴더의 크기를 확인하면

sudo du -sh /foldername

총 17.2GB만 얻습니다.

lib/        6.7G
usr/        4.8G
home/       2.0G
var/        1.3G
boot/       1.1G
swapfile    1.1G
root/       125M
sbin/       12M
bin/        11M
etc/        8M
run/        420K
lost+found/ 16K
media/      8.8K
dev/        4K
lib64/      4K
mnt/        4K
srv/        4K
opt/        4K
tmp/        4K
sys/        0
proc/       0

여기에 뭔가 의심스러워 보이는 게 있나요? 약 11GB가 설명되지 않았습니다. 사라진 11G는 어디에 있을까요?

답변1

Server Fault 커뮤니티의 조언에 따라 블록 크기를 확인했습니다.

stat --printf='%s' -f .

4096에서는 "정상"이었습니다.

그런 다음 삭제된 파일 중 프로세스에 의해 여전히 열려 있는 파일 수를 확인했습니다.

lsof | grep -c DEL

손실된 공간을 모두 설명할 수 있는 143개의 파일을 보고했지만 그럴 가능성은 거의 없습니다.

그런 다음 상자를 재부팅했는데 짜잔! 내 디스크 공간이 모두 돌아왔습니다.

df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            487M  4.0K  487M   1% /dev
tmpfs           100M  388K  100M   1% /run
/dev/vda1        30G   17G   12G  61% /

반사

재부팅 후 디스크 공간을 너무 많이 되찾았다는 사실은 볼륨의 블록 크기가 주요 원인이 아니라는 것을 의미합니다. 따라서 불일치의 원인이 무엇인지 아직 100% 확신할 수는 없지만 공간을 되찾게 되어 기쁩니다!

답변2

플래그 를 사용하는 경우에만 표시되는 큰 숨겨진 파일이 있을 수 있다고 생각합니다 -a.

du -ha /foldername | sort -hr

위 명령은 모든 파일(숨겨진 파일 포함)의 크기를 출력하고 정렬은 사용자가 식별할 수 있도록 크기별로 정렬합니다.

관련 정보