Saída do comando ls confusa para a imagem bruta do KVM no XFS

3

Depois de criar uma nova VM em uma imagem não processada usando virt-install , tentei verificar se a imagem era um arquivo esparso, mas não consegui determinar usando o comando ls .

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

A partir daqui, parece ser uma imagem de 1 TB com apenas cerca de 1 GB de espaço alocado. No entanto, se eu usar o sinalizador -h, obtenho isto:

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

Da mesma forma, o comando du mostra:

du -h myvm.img
1001G myvm.img

E isso:

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

Se eu tentar fazer o backup da imagem, ela tentará copiar todo o 1 TB:

tar -Scf myvm.tar myvm.img

Então, o que está acontecendo aqui? Parece haver alguma indicação, baseada no primeiro comando, de que é um arquivo esparso, mas não parece ser. Isso é uma esquisitice do XFS?

    
por orodbhen 07.11.2016 / 21:02

1 resposta

2

ls e du não se contradizem. (Eles usam as mesmas chamadas de sistema).

ls -s lista o tamanho em blocos (de 1 kilobyte [*] por padrão).

1048576000 * 1024 = 1073741824000

[*] tosse, kibibyte.

    
por 08.11.2016 / 00:13