df tamanho da partição e imagem dd-ed com sinalizador esparso não corresponde

1

O tamanho de uma partição é próximo a 2Gb e o tamanho real usado é de 1,5Gb, estou tentando tornar a imagem dessa partição usando dd com conv=sparse sinalizador habilitado.

A imagem gerada por dd é do tamanho 1.8Gb.

du mostra que o tamanho real usado da partição é de 1,5 Gb.

O que mais me intriga é que, no início do dia, quando eu dd ed a partição foi o que foi mostrado por du . Em seguida, fiz algumas alterações na partição e depois executei novamente dd . Desta vez houve incompatibilidade.

O que causou isso? Eu acho que embora a memória seja livre, não é nula / zero e o algoritmo esparso de dd não funciona?

    
por yashC 18.09.2018 / 14:29

1 resposta

1

Seu palpite está correto. dd não tem nenhum conceito de uso do sistema de arquivos, ele apenas copia dados (ou não, se conv=sparse for definido e o bloco inteiro for zero).

Também é possível ter um sistema de arquivos 100% completo e, ainda assim, uma pequena imagem escassa do dd. Assumindo que seus arquivos estão cheios de zeros.

Há uma diferença entre espaço livre e espaço intencionalmente zerado, mas usado, mas dd não tem um conceito para isso. Portanto, conv=sparse deve ser usado com cautela, especialmente na restauração.

Ao restaurar uma imagem esparsa com conv=sparse , o dispositivo de destino precisa estar totalmente zerado, caso contrário, dados antigos não zero permaneceriam onde deveria haver zeros. O resultado é um sistema de arquivos corrompido.

    
por 18.09.2018 / 15:14