
Estoy intentando crear una solución infalible para escribir una imagen en una tarjeta de memoria con la ayuda de dd.
Idea: quiero colocar un script en el sistema que otros puedan ejecutar sin ningún conocimiento sobre cómo escribir imágenes.
La imagen puede cambiar de tamaño, por lo que se debe realizar una consulta por adelantado para determinar el tamaño.
isoinfo -d -i /media/usb/image.iso | grep -i -E 'block size|volume size' | sed 's/^.*is: \(.*\)/\1/'
para obtener los números de tamaño de bloque y volumen. Ahora necesito incorporar los valores en el siguiente código.
dd if=/media/usb/image.iso of=/dev/sdc bs=2048 count=96053 status=progress
Intenté resolver esto autocompletando bs= y count= pero no puedo entender cómo capturar y procesar el resultado del primer fragmento de código.
Probé xargs pero esto no me ayudó mucho. Espero que tengas alguna solución para mí.
Saludos enero
Respuesta1
No es necesario establecer bs
valores count
específicos si desea copiar la imagen completa al destino. Solo asegúrese de que el tamaño del bloque sea lo suficientemente grande como para garantizar una operación de copia rápida como bs=16M
. Sin que count
se copie toda la entrada, por ejemplo
dd if=/media/usb/image.iso of=/dev/sdc bs=16M status=progress