`du -sh`는 `df -h`와 다르게 사용 크기를 보고합니다.

`du -sh`는 `df -h`와 다르게 사용 크기를 보고합니다.

중복 가능성:
리눅스의 여유 디스크 공간이 엉망입니다
df와 du에서 보고된 디스크 사용량에 차이가 있는 이유는 무엇입니까?

df -h다음 용도로 494G가 있다고 가정해 보겠습니다 /var.

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3             564G  494G   41G  93% /var

하지만 du -sh /var그렇다고 말해350G

무엇이 그들을 다르게 만드는가?

답변1

dudf파일 시스템을 보면서 파일을 봅니다 . 파일이 작거나 비어 있는 경우 du실제로 보면 실제 파일 크기에 대한 아이디어를 얻을 수 있으며, df"블록 크기" 이는 파티션이 생성될 때 설정됩니다. 블록 크기는 파일 시스템에 있는 파일의 최소 크기를 결정합니다. 다른 이유도 있을 수 있지만 이것이 df와 의 가장 확실한 차이점 이라고 생각합니다 du.

당신은 또한 볼 수 있습니다Linux에서 ext3 파티션의 블록 크기를 어떻게 결정합니까?

답변2

대부분의 파일 시스템 ufs, reiser, ext2, ext3 및 ext4(및 기타)는 루트 사용자 ID의 독점적 사용을 위해 디스크의 특정 비율을 예약합니다. 이는 기본적으로 루트 사용자 또는 루트 프로세스가 디스크에 가까이 있는 동안 디스크를 계속 사용할 수 있도록 하는 동시에 소위 덜 중요한 루트가 아닌 사용자를 거부하는 안전 밸브입니다.

ext2와 ext3에서는 기본 보존 기간이 5%로 현재의 파티션 크기에 비해 너무 높은 것 같습니다. 나는 보통 외부 파일 시스템에 대해 다음과 같이 수행합니다.

 tune2fs -m 1 /dev/sda3

이 설정은 일반적으로 디스크를 마운트하는 동안 안전하게 변경할 수 있습니다. 그러나 이를 즉시 적용하려면 디스크를 다시 마운트해야 할 수도 있습니다.

관련 정보