
Estou tentando criar uma solução infalível para gravar uma imagem em um cartão de memória com a ajuda do dd.
Ideia: Quero colocar um script no sistema que outros possam executar sem nenhum conhecimento sobre como escrever imagens.
A imagem pode mudar de tamanho, portanto, uma consulta deve ser executada antecipadamente para determinar o tamanho.
isoinfo -d -i /media/usb/image.iso | grep -i -E 'block size|volume size' | sed 's/^.*is: \(.*\)/\1/'
para obter os números do tamanho do bloco e do volume. Agora preciso incorporar os valores no código a seguir
dd if=/media/usb/image.iso of=/dev/sdc bs=2048 count=96053 status=progress
Tentei resolver isso autofill bs= e count= mas não consigo descobrir como capturar e processar a saída do primeiro trecho de código.
Eu tentei xargs mas isso não me ajudou muito. Espero que você tenha alguma solução para mim.
Felicidades janeiro
Responder1
Você não precisa definir bs
valores count
específicos se quiser copiar a imagem inteira para o destino. Apenas certifique-se de que o tamanho do bloco seja grande o suficiente para garantir uma operação de cópia rápida como bs=16M
. Sem que count
toda a entrada seja copiada, por exemplo
dd if=/media/usb/image.iso of=/dev/sdc bs=16M status=progress