drwxrwxr-x 2 xyz xyz 176128 Jul 29 02:03 20170429
drwxrwxr-x 2 xyz xyz 110592 Jul 31 01:22 20170430
cd 20170429
ls -lart
total 196
drwxrwxr-x 2 xyz xyz 176128 Jul 29 02:03 .
drwxrwxr-x 253 xyz xyz 20480 Aug 4 00:00 ..
du -sh 20170429
176K 20170429
du -sh 20170430
124K 20170430
위의 정보를 참고하여 빈 디렉토리를 20170429
실행 20170429
했을 때 메모리 공간이 여전히 176128, 176128로 표시되는 이유를 알고 싶습니다. ls -lrt
이 정보는 어디에서 오는가? 아이노드에서 온 건가요? 또한 그럼에도 불구하고 du -sh
빈 디렉토리에 대해서는 여전히 각각 176k와 124k를 표시합니다.
답변1
내 거추측하다이는 디렉토리에 많은 수의 파일이 포함되어 있었고 파일이 삭제될 때 파일 시스템이 디렉토리 항목을 자르지 않았다는 것입니다.
예:
$ mkdir test_dir
$ du -h test_dir
2.0K test_dir
$ touch test_dir/file{001..500}-{01..10}
이제 5000개의 빈 파일이 포함된 디렉터리가 생겼습니다.
$ du -h test_dir
102K test_dir
크기는 빈 파일의 디렉터리 항목에서만 가져옵니다.
$ rm test_dir/file*
$ du -h test_dir
102K test_dir
파일을 삭제해도 크기는 줄어들지 않습니다(이 파일 시스템에서는).