XFS의 KVM 원시 이미지와 혼동되는 ls 명령의 출력

XFS의 KVM 원시 이미지와 혼동되는 ls 명령의 출력

다음을 사용하여 원본 이미지에 새 가상 virt-install머신 을 만든 후ls

ls -ls myvm.img
1048576000 -rw------- 1 root root 1073741824000 Nov 4 15:49 myvm.img

이로부터 약 1GB의 공간만 할당된 1TB 이미지로 보입니다. 그러나 -h 플래그를 사용하면 다음과 같은 결과가 나타납니다.

ls -lsh myvm.img
1001G -rw------- 1 root root 1000G Nov 4 15:49 myvm.img

마찬가지로 du명령은 다음을 표시합니다.

du -h myvm.img
1001G myvm.img

이:

qemu-img info myvm.img
file format: raw
virtual size: 1.0T
disk size: 1.0T

이미지를 백업하려고 하면 1TB 전체를 복사하려고 합니다.

tar -Scf myvm.tar myvm.img

그래서 무슨 일이야? 첫 번째 명령에 따르면 스파스 파일이라는 표시가 있는 것 같지만 그렇지 않은 것 같습니다. 이것이 XFS의 이상한 점입니까?

답변1

ls그리고 du서로 모순되지 마세요. (동일한 시스템 호출을 사용합니다.)

ls -s블록 크기를 나열합니다(기본값은 1KB[*]).

1048576000 * 1024 = 1073741824000

[*] 에헴, 킬로바이트.

관련 정보