Inicio > Techs > Ver el estado del comando ‘dd’ en linux

Ver el estado del comando ‘dd’ en linux

miércoles, 28 de abril de 2010 Dejar un comentario Ir a comentarios

Por diferentes motivos de la vida, tuve que clonar 2 particiones en linux usando el comando ‘dd‘ y como es costumbre ya.. me olvidé de lanzar el proceso usando el comando ‘pv‘ que me recomendó mi amigo Runix hace tiempo… pero buscando un poco, encontré que el comando ‘dd’ tiene una forma para ver el estado del proceso..

Es tan simple como tirar un kill al proceso ‘dd’ con el signal SIGUSR1, de esta forma el comando DD interpreta la petición y arroja en el stdout el estado actual.

Atención, todo esto funciona y fué probado en LINUX (Debian/Ubuntu/Slackware para ser precisos), verificá si la version de dd que estas usando lo soporta y si el signal es el mismo en tu OS.

Supongamos que tenemos en la tty1 corriendo el comando ‘dd’:

root@lnxsrv:~# ps ax|grep dd
22063 tty1     Rs+   53:17 dd if /dev/sdd1 of /dev/sde1 bs 4M

Abrimos otra terminal, y ejecutamos:

root@lnxsrv:~# kill -SIGUSR1 $(pidof dd)

(o kill -SIGUSR1 22063 en este caso)

Automaticamente, en el tty1 donde teníamos corriendo el comando ‘dd’ vamos a ver que aparece algo como esto:

153654+0 records in
153654+0 records out
644471586816 bytes (644 GB) copied, 23786.7 s, 27.1 MB/s

That’s all!

Y la proxima… a usar ‘pv‘ 😀

Categories: Techs Tags: ,
  1. martin
    lunes, 30 de agosto de 2010 a las 09:01 | #1

    pero con esto no matas el proceso?

  2. lunes, 30 de agosto de 2010 a las 09:36 | #2

    No no, el dd interpreta el signal y muestra el estado nomás. (igual por pas dudas probalo antes en tu distro / version dd, claro 😉 )
    saludos

  3. Camilo
    martes, 16 de noviembre de 2010 a las 20:26 | #3

    Me han pasado unas cintas donde los archivos fueron copiados con el comando dd, y la pregunta es como puedo ver el contenido de la cinta??

    Saludos

  4. martes, 16 de noviembre de 2010 a las 21:54 | #4

    Depende mucho de como hayan hecho el backup .. hicieron el dd sobre todo el filesystem o tiraron los archivos directos?

    podrias probar de montar el output del dd con

    mount file -o loop /tmp/restore

    por ejemplo para ver si funciona

    Por las dudas, te paso algunos links que por ahi te sirven:

    http://wiki.linuxquestions.org/wiki/Some_dd_examples
    http://www.linuxquestions.org/questions/linux-newbie-8/learn-the-dd-command-362506/

  1. Sin trackbacks aún.