남은 하드디스크 공간을 바탕으로 빈 파일을 생성하려고 합니다. 문제는 1GB 크기의 파일을 생성할 때 df 명령을 실행하면 파일이 생성되기 전보다 남은 공간이 12kb만 작아진다는 것입니다.
someone@here:/tmp/delete# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 36827144 5031592 29924788 15% /
tmpfs 508508 0 508508 0% /lib/init/rw
varrun 508508 156 508352 1% /var/run
varlock 508508 4 508504 1% /var/lock
udev 508508 140 508368 1% /dev
tmpfs 508508 1108 507400 1% /dev/shm
someone@here:/tmp/delete# dd if=/dev/zero of=tempFile bs=1000 count=1 seek=1000000
1+0 records in
1+0 records out
1000 bytes (1.0 kB) copied, 0.000438915 s, 2.3 MB/s
someone@here:/tmp/delete# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 36827144 5031604 29924776 15% /
tmpfs 508508 0 508508 0% /lib/init/rw
varrun 508508 156 508352 1% /var/run
varlock 508508 4 508504 1% /var/lock
udev 508508 140 508368 1% /dev
tmpfs 508508 1108 507400 1% /dev/shm
df 명령이 전체 1GB를 설명하지 못하는 이유를 아는 사람이 있습니까? 감사해요.
답변1
다음을 지원하는 파일 시스템에서 생성했습니다.스파스 파일따라서 출력에서 dd
알 수 있듯이 실제로는 1000바이트만 차지합니다. 생략 seek
하고 적절한 count
.
답변2
에서info coreutils du
(강조):
'--apparent-size'
디스크 사용량이 아닌 겉보기 크기를 인쇄합니다. 파일의 겉보기 크기는 일반 파일의 'wc -c' 또는 더 일반적으로는 'ls -l --block-size=1' 또는 'stat --format=%s'에 의해 보고된 바이트 수입니다. 예를 들어 줄 바꿈 없이 'zoo'라는 단어가 포함된 파일은 물론 겉보기 크기가 3입니다. 이러한 작은 파일에는 유형과 구성에 따라 0~16KiB 이상의 디스크 공간이 필요할 수 있습니다. 파일이 상주하는 파일 시스템의 정보입니다. 그러나부족한다음으로 생성된 파일 이 명령:dd bs=1 탐색=2GiB if=/dev/null of=big
가지고있다겉보기 크기 2GiB, 그러나 대부분의 최신 시스템에서는 실제로디스크 공간을 거의 사용하지 않음.