dd es un comando muy «silencioso» y por lo tanto algunas veces un tanto peligroso y desesperante. En este post te mostraremos como hacer que este fabuloso comando nos muestre una barra de progreso similar a la que aparece cuando descargamos archivos con el comando wget. |
El comando dd es una poderosa herramienta que permite hacer muchas cosas, entre ellas encontramos una manera fácil de clonar particiones e incluso discos duros completos. Sólo tiene un pequeño inconveniente, es un comando muy «silencioso» pues al ejecutarlo, el prompt del terminal queda inmóvil, por lo que puede ocasionar nerviosismo al no saber que es lo que esta pasando y cuanto tiempo falta para que termine de ejecutarse.
Todo esto se soluciona con el comando pv, el cual actúa como una tubería de terminal que mide los datos que pasan a través de ella. Quedaría como sigue:
dd if=/lugar/de/origen |pv|dd of=/lugar/de/destino
Como resultado obtendríamos en el terminal una barra de progreso, la información sobre bytes transferidos, el tiempo que lleva ejecutándose y la tasa de transferencia, todo esto en tiempo real.
Además al terminar nos muestra estadísticas de la tasa de transferencia, el total de bytes transferidos y el tiempo total que tardó en transferir todos los datos.
Ejemplos:
Clonar un disco duro:
dd if=/dev/sda |pv|dd of=/dev/sdb
Clonar una partición:
dd if=/dev/sdc2 |pv|dd of=/dev/sda1
Crear una imagen iso de una partición o disco duro (excelente opción para backups):
dd if=/dev/sda1 |pv|dd of=/home/usuario/backup.iso
En algunas distros puede que pv no venga instalado, así que bastará con instalarlo para poder usar este tip.
Otro Tips para crear un liveUsb
dd if=/home/usuario/isodelsistema.iso |pv|dd of=/dev/sdx (sdx reemplazar por el correspondiente al pendrive/memoria flash)
muy util
Muy buen tip.
Muchas gracias por el tip.
Saludos.
magnifico!!! 5*
yo tengo una duda, si hahoy un iso lo instalo o como para que quiero el iso? :s
La imagen iso de una partición te puede servir como respaldo, más no es como una iso de un sistema operativo, no será posible instalar un sistema a partir de una iso generada de una partición.
Por ejemplo puedes hacer una imagen iso de tu partición /home que quedaría por ejemplo así: mi_home.iso y guardarla en cualquier partición o incluso otro pc, y si por alguna desgracia perdieras tu partición /home podrias restaurarla como si nada hubiera pasado con un comando como el siguiente:
dd if=/lugar/donde/esta/mi_home.iso |pv|dd of=/dev/partición_donde_estaba_home
Más elegante que enviarle la señal URS1 vía kill al pid del proceso dd
Excelente. Otra herramienta similar: mbuffer
dd if=file.origen | mbuffer | dd of=file.destino
Saludos!
Una gran herramienta, que soluciona problemas a todo, el mundo, muy útil para comandos silenciosos, la verdad debería estar puesto por defecto en estos comandos.
Muchas gracias por el tip. Llevaba tiempo buscado algo así. Yo lo uso para los DVD
dd if=/dev/dvd |pv|dd of=/ruta/archivo.iso
Muchas gracias.
De nada, Luis!
como instalo el comando pv ?
Gracias
https://www.host.cl