Sintaxe ao combinar dd e pv

3

Em:

sudo dd if=/dev/sda bs=64k | pv --size 1.5t | dd of=/dev/sdb

O tamanho do bloco para dd vai para o lado esquerdo disto depois da entrada como mostrado ou à direita depois da saída?

Com a opção de tamanho de visualizador de pipe, é correto que não exista nenhum sinal de igual antes do valor? Não há problema em usar um valor decimal como mostrado acima?

    
por Less Static 10.04.2015 / 23:07

1 resposta

3

Uma série de questões que podem se beneficiar da revisão.

sudo dd if=/dev/sda bs=64k | pv --size 1.5t | dd of=/dev/sdb

Em primeiro lugar, você pode aumentar muito o tamanho do bloco e aumentar a taxa de transferência. Eu geralmente uso bs=32M . A ordem dos parâmetros para dd não importa, então:

sudo dd if=/dev/sda bs=1M

Em seguida, não importa se você especifica --size com ou sem iguais. Argumentos longos (aqueles que começam com um traço duplo) geralmente não são muito exigentes. No entanto, uma rápida tentativa de pv mostra que o argumento deve ser um inteiro. Então:

pv --size 1500g

Finalmente, vale a pena especificar um buffer grande (saída) para dd , e você provavelmente precisará executá-lo com privilégios de root. Como estamos usando um buffer grande, vale a pena garantir que o tenhamos preenchido completamente antes de tentar escrevê-lo. Então você acaba com isso:

sudo dd of=/dev/sdb bs=1M iflag=fullblock

Colocando tudo junto,

sudo dd if=/dev/sda bs=1M | pv --size 1500g | sudo dd of=/dev/sdb bs=1M iflag=fullblock
    
por 10.04.2015 / 23:33

Tags