Ver tema siguiente
Ver tema anterior
Publicar nuevo tema   Responder al tema
Autor Mensaje
hispalis70
Moderador Linux ADSLZone
Moderador Linux ADSLZone


Registrado: Mar 17, 2010
Mensajes: 3320
Responder citando Volver arriba MensajePublicado: Martes 01 Febrero 2011, 21:01

Clonar, grabar discos y mas cosas, facilmente con dd.

El comando dd (Dataset Definition), es una herramienta sencilla, útil, y sorprendente a la vez que desconocida. Esta herramienta fue creada a mediados de los 70 en principio para Unix, simplemente porque no existía. Pero al contrario que otras herramientas que desde su creación se han ido sofisticando, está se ha ido simplificando, hasta el punto de poder hacer lo mismo que buenos programas comerciales como Norton Ghost o libres como CloneZilla, con solo una pequeña linea de comandos.

Ni que decir tiene que toda la información de dd, la podéis consultar con el comando man dd e info dd , también dos grandes olvidados...

Al lio...

Lo primero siempre es tener claro el disco de origen y el de destino, algo que averiguamos fácilmente con el comando sudo fdisk -l

La sintaxis mas básica, seria esta:

sudo dd if=<origen> of=<destino>

Por lo que si quisiéramos clonar un disco duro:

sudo dd if=/dev/hda of=/dev/hdb bs=1M con esto clonaríamos el disco hda en hdb. (discos IDE)

sudo dd if=/dev/sda of=/dev/sdb bs=1M para discos SATA

Con bs=1M , estamos diciendo que tanto la lectura como la escritura se haga en bloques de 1 megabyte, (menos, seria mas lento pero mas seguro, y con mas nos arriesgamos a perder datos por el camino).
Hay que tener en cuenta que de esta forma grabaras el disco “tal cual”, MBR, tabla de particiones, espacio vacío, etc..., por lo que solo podrás grabar en un disco del mismo o mayor tamaño.

Vamos a ver algunos ejemplos prácticos y opciones de este comando:

sudo dd if=/dev/hda1 of=/dev/hdb bs=1M Grabaríamos solo la primera partición del disco de origen en el de destino.

sudo dd if=/dev/hda of=/dev/hdb1 bs=1M Grabaríamos el disco completo en la primera partición del disco de destino.

sudo dd if=/dev/hda of=/home/hda.bin Crear una imagen del disco duro, puede ser bin o iso (a partir de ahora utilizaré nuestro home como ejemplo).

sudo dd if=/dev/hda | gzip > /home/hda.bin.gz Crear una imagen del disco comprimida, (podemos utilizar gzip, bzip o bzip2.)

sudo dd if=/dev/cdrom of=/home/imagendeCD.iso Crea una imagen de un CD

sudo mount -o loop imagedeCD.iso /mnt/home Para montar la imagen del CD

sudo dd if=/dev/hda of=mbr count=1 bs=512 Copiar el Master Boot Record (MBR)

sudo dd if=mbr of=/dev/hda Para restaurar el MBR

sudo dd if=/dev/hda of=/home/sector_arranque_hda count=1 bs=512 Copiar el Volume Boot Sector (VBS)

sudo dd if=/home/sector_arranque_hda of=/dev/hda Para restaurar el VBS.



Algunas curiosidades:

sudo dd if=/dev/cdrom of=/home/dvd_recuperado.iso conv=noerror,sync Recuperar un DVD rayado (Esto no recupera todo el DVD, en este caso, solo los sectores legibles). Sirve también para discos duros defectuosos.
La opción noerror, sirve para obviar los errores de lectura en cualquier situación. Otro ejemplo seria:

sudo dd conv=noerror if=/dev/hda of=~/home/imagen_disco_con_errores.iso Grabaríamos una imagen del disco en nuestro home saltándonos los errores del disco (muy útil para discos que se están muriendo)

sudo dd if=/dev/zero of=/dev/hda bs=512 count=1 Limpia nuestro MBR y la tabla de particiones

sudo dd if=/dev/zero of=/dev/hda bs=446 count=1 Limpia el MBR pero no toca la tabla de particiones, ( muy útil para borrar el GRUB sin perder datos en las particiones)

sudo dd if=/dev/zero of=archivo_nuevo_vacio bs=1024 count=1024 Crea un archivo vacío de 1 Mb, una opción muy interesante como ahora veremos:

sudo dd if=/dev/zero of=/swapspace bs=4k count=2048M
mkswap /swapspace
swapon /swapspace
Acabamos de crear un archivo swap de 2Gb así de fácil


Al borde de la paranoia:

sudo dd if=miarchivo of=miarchivo conv=ucase Convierte todas las letras en mayúsculas

sudo dd if=/dev/sda | sed 's/Puigcorbe/Slqh/g' | dd of=/dev/sda Cambia en todo el disco, la palabra Puigcorbe por Slqh, ( puedes cambiar rápidamente tu nombre a todos los archivos del disco)

for n in {1..5}; do dd if=/dev/urandom of=/dev/hda bs=8b conv=notrunc; done Llena el disco con caracteres aleatorios cinco veces. No va a quedar ni rastro de información en el disco Razz

Nota final: Utiliza este comando con precaución, y asegurate siempre del orden y nombre de tus discos, porque lo mismo que te clona un disco te lo borra en un plis.




Fuentes: http://doc.ubuntu-es.org, y los consabidos man dd e info dd.
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Itookmyprozak
Administrador
Administrador


Registrado: Jan 07, 2006
Mensajes: 6319
Ubicación: /BCN
Responder citando Volver arriba MensajePublicado: Miércoles 02 Febrero 2011, 4:24

Genial! Si nos das tu permiso, lo publicaremos en LZ Muy Contento

_________________
www.linuxzone.es
http://twitter.com/linuxzone
http://twitter.com/alexaliagaa
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
hispalis70
Moderador Linux ADSLZone
Moderador Linux ADSLZone


Registrado: Mar 17, 2010
Mensajes: 3320
Responder citando Volver arriba MensajePublicado: Miércoles 02 Febrero 2011, 14:11

Permiso concedido.
Saludos
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Bron
Proyecto de GuRú
Proyecto de GuRú


Registrado: Oct 18, 2007
Mensajes: 20008
Ubicación: Guadalajara
Responder citando Volver arriba MensajePublicado: Miércoles 02 Febrero 2011, 14:19

Que bien me va a venir esto.

Muchas gracias!!!!!!!

_________________
Image Image
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
hispalis70
Moderador Linux ADSLZone
Moderador Linux ADSLZone


Registrado: Mar 17, 2010
Mensajes: 3320
Responder citando Volver arriba MensajePublicado: Miércoles 02 Febrero 2011, 22:07

Gracias a ti Bron, si tenéis alguna pregunta no dudéis en consultarme que tengo el tema bien fresquito.

Saludos.
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Ayax
Administrador
Administrador


Registrado: Oct 21, 2008
Mensajes: 10559
Responder citando Volver arriba MensajePublicado: Viernes 04 Febrero 2011, 11:50

Bravo, muy detallado y trabajado. Enhorabuena hispalis70 Sonrisa

Saludos.

_________________
Image
SoftZone en Image
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Churrero
ZoNeR@ habitual
ZoNeR@ habitual


Registrado: Jun 27, 2008
Mensajes: 91
Responder citando Volver arriba MensajePublicado: Martes 26 Abril 2011, 20:20

Buen trabajo.

Lo he copiado para tener constancia permanente.
Ver perfil de usuario Enviar mensaje privado
bpmircea
Moderador Linux ADSLZone
Moderador Linux ADSLZone


Registrado: Jul 29, 2010
Mensajes: 1138
Ubicación: linux4all.tk
Responder citando Volver arriba MensajePublicado: Viernes 06 Enero 2012, 16:45

Cita:
sudo dd if=/dev/cdrom of=/home/dvd_recuperado.iso conv=noerror,sync Recuperar un DVD rayado (Esto no recupera todo el DVD, en este caso, solo los sectores legibles). Sirve también para discos duros defectuosos.
La opción noerror, sirve para obviar los errores de lectura en cualquier situación.


esa no la conocía, muy buena
a ver si encuentro un cd rayado para probarlo Guiño

zenkiu

_________________
Image
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor Dirección AIM Yahoo Messenger MSN Messenger Número ICQ
Mostrar mensajes de anteriores:       
Publicar nuevo tema   Responder al tema

Ver tema siguiente
Ver tema anterior
Puede publicar nuevos temas en este foro
Puede responder a temas en este foro
No puede editar sus mensajes en este foro
No puede borrar sus mensajes en este foro
No puede votar en encuestas en este foro


¡Ayúdanos con tu voto!  
Regístrate en ADSLZone   
Servidores dedicados en Hostalia | Grupo ADSL Zone © 2012

Atención, estás navegando con un navegador antiguo

Para ver correctamente ADSLZone.net, actualiza tu navegador. Descargar: Google Chrome, Internet Explorer, Firefox, Safari, Ópera