ext4에 "Ghost" 파일이 있나요? (ktorrent가 할당한 디스크 공간)

ext4에 "Ghost" 파일이 있나요? (ktorrent가 할당한 디스크 공간)

KTorrent를 사용하여 다운로드하고 있는데 "토렌트를 실행하기 전에 디스크 공간 할당"을 선택하면 조각화를 방지하기 위해 시작 시 모든 파일(아마도 비어 있음)이 생성되는 것을 확인했습니다.

폴더에 있고 를 사용하면 ls할당된 크기가 표시되지만 전체 크기도 표시되며 둘은 합산되지 않습니다. df또한 사용된 실제 공간만 보고됩니다.

LS-1H

총 745M
-rw-r--r-- 1 ##### ##### 542M 2월 8일 15:55 Star Trek - 1x01 - The Cage.avi
-rw-r--r-- 1 ##### ##### 351M 2월 8일 14:37 Star Trek - 1x02 - Where No Man Has Gone Before.avi
-rw-r--r-- 1 ##### ##### 346M 2월 8일 16:04 Star Trek - 1x03 - The Corbomite Maneuver.avi
-rw-r--r-- 1 ##### ##### 350M 2월 8일 16:02 Star Trek - 1x04 - Mudd's Women.avi
-rw-r--r-- 1 ##### ##### 350M 2월 8일 15:35 Star Trek - 1x05 - The Enemy Within.avi
-rw-r--r-- 1 ##### ##### 350M 2월 8일 15:37 Star Trek - 1x06 - The Man Trap.avi
... (더 많은 것이 있습니다)

그러나 이 -s옵션을 사용하면 실제 치수를 얻을 수 있습니다.

LS-S

총 7억 2,800만
   0 스타트렉 - 1x01 - The Cage.avi
351M 스타트렉 - 1x02 - 이전에 아무도 가본 적이 없는 곳, 그 이후로 아무도 오지 않은 곳.avi
 42M 스타 트렉 - 1x03 - Corbomite Maneuver.avi
195M 스타 트렉 - 1x04 - 머드의 여자들.avi
5.8M 스타 트렉 - 1x05 - The Enemy Within.avi
9.7M Star Trek - 1x06 - The Man Trap.avi
....(사이즈 ​​일치)

어떻게 이럴 수있어? 파일 시스템(ext4)에 ls(때때로) 읽고 무시할 수 있는 "파일 크기" 설정이 있습니까 df?

답변1

Ktorrent를 사용하고 있습니다스파스 파일. 기본적으로 희소 파일은 "구멍"이 있는 파일입니다. 즉, 파일의 "빈" 영역(즉, 0만 포함)을 위한 실제 디스크 공간이 없습니다.

따라서 파일은 특정 크기(귀하의 경우에는 Star Trek 비디오의 크기)로 보이지만 아직 "채워지지" 않은 영역에는 실제로 디스크 공간이 사용되지 않습니다(귀하의 경우 Ktorrent의 경우). 다운로드되지 않음), 실제로 필요할 때 디스크 공간을 낭비하는 것을 방지합니다.

대신 파일 시스템은 메타데이터를 사용하여 이러한 영역이 비어 있음을 나타냅니다. 만약 당신이 그것을 읽으면, 당신은 단지 0을 얻게 될 것입니다.

du해당 파일의 실제 디스크 사용량을 사용하거나 볼 수 있으며, ls -s명백한 디스크 사용량을 사용하거나 볼 수 있습니다.du -bls -l

df보고된 총 크기는 ls -l실제 디스크 사용량만 표시합니다.

관련 정보