A veces necesitamos cambiar nuestro sistema operativo de algún disco duro a otro, ya sea de igual tamaño o de mayor capacidad, en mi caso, tengo un servidor con Ubuntu Server y un disco duro de 160 GB, el que necesitaba migrar a un nuevo SATA de 1TB, pero después de 6 meses de producción, el sistema está configurado perfectamente, Samba, Apache,MySQL, Netatalk etc.
Por esta razón es mucho más fácil migrar tu instalación exactamente como esta, a volver a instalar limpio y configurar todo de nuevo. Si solo tienes que cambiar de disco duro y son idénticos, los últimos pasos de la guía no serán necesarios.
Esta guia asume que:
* El primer disco duro es /dev/sda
* El segundo disco duro es /dev/sdb
Notas:
Esta guía está basada en Ubuntu, pero puede servir para cualquier otra distribución haciendo los ajustes necesarios, si tienen dudas por favor exprésenlas en la sección de comentarios y tratare de ayudarles en la distribución que usen.
No uses dd para hacer este tipo de operación, ya que este está diseñado para copiar archivos crudos y por bloque. Esto quiere decir que si copias desde un disco de160 GB a uno de 320 GB, el resultado final te mostrara un disco duro de 160 GB. No entrare en detalles, pero créanme, no lo hagan.
Lo primero, es instalar gddrescue la herramienta que utilizaremos (tenemos que tener habilitado el repositorio “universe”.
$ sudo apt-get install gddrescue
Una vez instalado el paquete ejecutamos el siguiente comando:
$ sudo ddrescue -v /dev/sda /dev/sdb transfer.log
En donde -v indica que nos informe de lo que sucede y el transfer.log, es donde almacenaremos la salida del comando para después poder analizarla si así lo deseamos. Con el comando en ejecución, deberemos de ver algo así:
ghosti@blogofsysadmins.com:~# sudo ddrescue -v /dev/sda /dev/sdb transfer.log
About to copy 146810 MBytes from /dev/sda to /dev/sdb
Starting positions: infile = 0 B, outfile = 0 B
Copy block size: 128 hard blocks
Hard block size: 512 bytes
Max_retries: 0 Split: yes Truncate: no
Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued: 397869 kB, errsize: 0 B, errors: 0
Current status
rescued: 28361 MB, errsize: 0 B, current rate: 25165 kB/s
ipos: 28361 MB, errors: 0, average rate: 22753 kB/s
opos: 28361 MB
Copying data...
Cuando se termine de procesar la información, tendremos una copia exacta en el disco duro destino, solo restara cambiarlo y arrancar para probar que todo funcione correctamente.
En mi caso, tuve que crear una partición con el espacio que sobro en el disco destino para montar /home/ pero esto debe de ser muy sencillo, así que no lo incluiré enesta guía.