Estoy actualizando el disco duro interno SATA en mi computadora portátil de una unidad de 40G a una unidad de 160G. Tengo un escritorio Linux/Ubuntu que tiene una tarjeta SATA. En realidad, me gustaría hacer lo mismo para un par de cajas CentOS y FreeBSD en el trabajo, y parece que esto tendría la misma solución.
He oído que puedo usar DD para reflejar la partición 40G en la unidad 160G, o que puedo guardar la partición 40G como una imagen en mi local sistema, y luego copie esa imagen 40G a la unidad 160G.
¿Alguien puede describir cómo puedo hacer esto? ¿Necesito alguna otra utilidad, como gparted
Su primera tarea sería conectar ambos discos a un sistema Linux existente o conectar el nuevo disco al sistema original.
¡Debe ser muy cuidadoso ya que es muy simple copiar el disco en blanco encima del disco bueno!
Para terminar con los sectores de arranque y todo, haría algo como:
dd if=/dev/hdx of=/dev/hdy
Donde hdx
es su disco 40G y hdy
es su disco 160G. Notarás que no hay números de partición como /dev/hdx1
. Esto copia todo el disco, la información de partición y todo.
Su nuevo disco será igual que el disco anterior, 40G asignado. Debería arrancar cuando se vuelve a colocar en su computadora portátil. ¿Espero que hayas usado LVM? De lo contrario, ¿espero que no hayas utilizado todas las particiones? Superar este punto requiere mucha más información.
Otra solución es volcar cada partición individual. Esto requiere mucha más conciencia de la situación, ya que deberá volver a crear la información de arranque.
Todo esto se usa mejor para clonar computadoras, no para actualizar discos duros. Es mucho mejor restaurar a una nueva instalación utilizando sus copias de seguridad.
Normalmente sugeriría una solución como "conectar el segundo disco duro usando un gabinete externo, arrancar desde un CD de Linux y luego usar un comando como dd if=/dev/sda of=/dev/sdb bs=1G
, pero dado que desea utilizar la misma técnica para el trabajo, tengo lo que puede ser una mejor solución.
Todos mis servidores y computadoras portátiles obtienen imágenes en el trabajo usando Clonezilla . Hay dos formas de usarlo ... una de ellas utiliza un servidor dedicado y probablemente es excesivo para usted, y otra que utiliza un CD de arranque y un disco duro externo.
La idea es que inicies con el CD de Clonezilla y tengas una unidad USB externa más grande (más grande que la unidad fuente). Clonezilla lo guía a través de la creación de una imagen de la unidad existente, después de lo cual apaga la máquina, reemplaza la unidad, luego inicia de nuevo en Clonezilla y lo guía a través de la restauración de los datos.
Esto le brinda la oportunidad de A) colocar la imagen en un disco más grande y B) retener una copia de seguridad de los datos.
Si bien puede usar dd para copiar un disco así, hacerlo tiene una serie de inconvenientes:
El uso de un programa de imágenes como Ghost4Linux, partclone o clonezilla al menos se encarga de los números 2 y 3. También puede simplemente formatear el nuevo disco, montarlo y copiar todos los archivos con cp -ax
(como root), y luego reinstale el cargador de arranque en la nueva unidad. Este método no sufre ninguno de los inconvenientes anteriores.
Para copiar simplemente la partición, puede usar dd if=/dev/srcDrive of=/dev/dstDrive
o algo como esto. Le recomendaría que lea su página de manual . Lo siento, no puedo dar mucha más información, ya que estoy en el trabajo ahora ...
Usted preguntó cómo hacerlo con dd, pero tuve un mejor éxito al canalizar la salida de dump en restore . Dada la fuente ad1s1a y el destino ad2s1a :
$ mount /dev/ad2s1a /target
$ cd /target
$ dump -0Lauf - /dev/ad1s1a | restore -rf -
Probé esto en FreeBSD, en realidad lo encontré en FreeBSD Forum
Un ejemplo simple es este:
dd if=/dev/sda of=/dev/sdb
Pero si tiene algunas necesidades especiales, debería leer la página de manual (man dd) o buscar en Google.
Otra idea podría ser el uso de rsync (no olvide establecer las opciones correctas, como -az [empaqueta los archivos en lugar de copiar un archivo tras otro] o --numeric-ids [usa el uid/gid en lugar de nombres como "root"] y tal vez algunos otros). El enlace contiene muchos ejemplos.
Si el nuevo HDD no tiene particiones, puede usar gparted o palimpset.
Cuando no esté seguro, formatearía el HDD y luego sincronizaría los datos con rsync.
Bueno, he realizado migraciones similares a esta arrancando con ambos discos conectados y un Live CD.
Al hacerlo, desfragmentará los archivos a medida que se copian, también puede cambiar los sistemas de archivos en las particiones (migrar de reiserfs o ext3 a ext4, etc.), pero recuerde editar/etc/fstab después de copiar para adaptar La nueva situación.