Clonar HDD interno a un nuevo SSD

20

Recientemente instalé un SSD en mi máquina. La máquina en sí es un Thinkpad W520 de Lenovo, y anteriormente tenía un HDD interno. Moví el HDD interno a una bahía de expansión (reemplazando el CD-ROM), y puse la nueva SSD en la bahía interna.

El problema que tengo es que tengo mi configuración de Ubuntu EXACTAMENTE de la forma en que la quiero: originalmente pasé muchas horas configurándola para que esté como está ahora. Prefiero no hacer esto otra vez. Pero también me gustaría obtener las ganancias de arranque que obtendría del sistema operativo en el SSD.

Entonces, lo que me gustaría hacer es clonar mi partición de Ubuntu en el SSD. El problema es que el HDD estándar es significativamente más grande que el SSD. Y tiene una partición de Windows que no necesito en el SSD (nunca uso Windows, así que si arranca desde el otro disco duro, está bien). El diseño de mis discos duros es el siguiente:

/ dev / sda (SSD): Modelo: ATA M4-CT256M4SSD2 (scsi) Disco / dev / sda: 256GB Tamaño del sector (lógico / físico): 512B / 512B Tabla de particiones: msdos

Number  Start   End    Size   Type     File system  Flags
 1      1049kB  147GB  147GB  primary  ext4         boot

/ dev / sdb (HDD): Modelo: ATA ST9500420AS (scsi) Disco / dev / sdb: 500GB Tamaño del sector (lógico / físico): 512B / 512B Tabla de particiones: msdos

Number  Start   End     Size    Type      File system     Flags
 1      1049kB  1259MB  1258MB  primary   ntfs            boot
 2      1259MB  269GB   268GB   primary   ntfs
 4      269GB   483GB   214GB   extended
 5      269GB   416GB   147GB   logical   ext4
 7      416GB   475GB   58.9GB  logical   linux-swap(v1)
 6      475GB   483GB   8470MB  logical
 3      483GB   500GB   16.8GB  primary   ntfs

Lo que he probado hasta ahora:

1) Cambiar el tamaño de las particiones / dev / sdb5 y / dev / sda1 para que tengan el mismo tamaño. 2) Arrancar en Ubuntu 11.04 (desde / dev / sdb5) y ejecutar dd if = / dev / sdb5 of = / dev / sda1 (por supuesto, esto causa problemas con el arranque, así que tuve que reinstalar grub ... puedo acceder a arranque, pero luego tengo problemas con initrd para no encontrar algunos archivos ... presumiblemente no puede cargar algunas particiones, creo).

Ahora, creo que esos dos pasos son un enfoque incorrecto, porque clonará / dev / sdb5 EXACTAMENTE, incluidas las referencias en fstab que apuntan al disco duro incorrecto. No estoy seguro exactamente cómo rectificar esto. Podría instalar Ubuntu 11.04 en el SSD, luego intentar copiar todas mis configuraciones, pero me preocupa que pierda algo o que sobrescriba algo como fstab que apunta de nuevo al original disco duro.

Tenga en cuenta que actualmente todavía puedo arrancar desde el HDD, por lo que no es imperativo que lo solucione de inmediato, pero sí quiero que sea exactamente como es ahora, para que pueda mantener mi nivel actual de productividad ( Es una computadora portátil de trabajo).

¿Sugerencias sobre cómo podría superar esta dificultad?

¡Gracias por adelantado!

jwir3
fuente

Respuestas:

13

Hay más de una forma de lograr que su antiguo sistema se convierta en una nueva unidad, pero realmente no lo preguntó de esa manera, preguntó cómo clonar el sistema.

Simplemente usaría gparted, yo mismo, del CD en vivo para que ninguna partición esté montada. Puede reducir la partición original al tamaño que desea que tenga en el SSD, luego copiar y pegar la partición en la nueva unidad. Si no recuerdo mal, esto reutilizará el mismo UUID, pero luego puede cambiarlo en una u otra partición. El comando para esto es sudo tune2fs -U random /dev/sdb5asignar UUID para sdb5.

Si no desea cambiar el sistema anterior, y si desea mantenerlo montado por un tiempo, puede cambiar el UUID para la partición SSD y editar su fstab. En realidad no es nada difícil, y es algo sobre lo que deberías aprender. Es bastante claro para alguien con el conocimiento que ya parece tener. Una vez que asigna un nuevo UUID, puede verlos todos con este comando: sudo blkid -c /dev/null- el parámetro -c especifica el archivo de caché, y / dev / null significa que no use un caché, por lo que siempre obtendrá los cambios de inmediato. Siempre uso ese formulario y no puedo ver ningún inconveniente a menos que tenga muchas particiones.

Una vez que obtenga el UUID, puede copiarlo y pegarlo sobre el anterior en / etc / fstab usando gedit o el editor de texto que prefiera.

Sin embargo, personalmente, en lugar de tomarme el tiempo para cambiar el tamaño de la partición primero, simplemente copie la instalación anterior al nuevo disco. Si no sabe cómo instalar GRUB en el mbr, puede instalar primero un Ubuntu base, luego hacer una copia de seguridad de / etc / fstab, copiar la instalación anterior sobre él y luego copiar el fstab de la nueva instalación para que solo tiene las entradas correctas.

Marty Fried
fuente
Esto es muy útil, gracias. Lo intentaré y veré si puedo hacer que funcione. Luego volveré y aceptaré la respuesta o te preguntaré más al respecto. ;)
jwir3
1
He usado el CD de instalación en vivo muchas veces, ya que tiene casi todo lo que necesitas. Pero la mejor imagen de rescate real que he usado es System Rescue CD . Este CD de arranque, también disponible como memoria USB, me ha arreglado GRUB varias veces después de que algo (o alguien, que permanecerá sin nombre) lo borró. Tiene herramientas separadas, grub y todo lo demás que le gustaría arreglar una instalación de Linux, sin demasiados gastos generales. ¿Es este el tipo de cosas por las que preguntabas?
Marty Fried
1
De nada, y buena suerte.
Marty Fried
1
Esto funcionó bien. Una cosa de la que estaba un poco inseguro era cómo configurar grub y, más específicamente, que hay formas muy diferentes de configurar el legado de grub frente a grub2. Usé lo siguiente como referencia para grub2, una vez que lo instalé ( apt-get install grub2): dedoimedo.com/computers/grub-2.html Originalmente estaba usando un método de instalación de grub2, cuando de hecho, grub-legacy estaba instalado en mi sistema.
jwir3
1
Ah, sí, el adorable grub, y está mejorado, grub2 (¡NUEVO! ¡MEJORADO! ¡AHORA MÁS COMPLEJO!). Lo siento, todo es mi culpa; Había llegado a comprender completamente la vieja comida, así que, por supuesto, la cambiaron. Luego, cuando pensé que estaba obteniendo grub2, hicieron algunos cambios menores, incompatibles con la versión anterior. Es por eso que sugerí la posibilidad de una instalación base primero, solo para configurar grub. Pero es una buena idea aprender grub, y en realidad no es tan complicado. ¿Cambiaste a grub2 ahora?
Marty Fried
5

Arranque desde el livecd, monte ambas unidades, luego simplemente copie los archivos sudo cp -ax /media/source /media/dest. Edite / etc / fstab en el destino para señalar el UUID correcto (buscar con blkid) y reinstale grub.

psusi
fuente
Eso es lo que haría, pero me llevó una eternidad controlar Grub2, principalmente debido a la miríada de métodos diferentes que leí, ninguno de los cuales parecía estar completo. Su publicación asume que la persona está en el mismo nivel que usted, o tal vez simplemente asume que preguntará sobre las partes que no se conocen (lo que probablemente esté bien). Pero es curioso que haya especificado la parte más fácil, el comando de copia, y haya pasado por alto las partes más difíciles. :)
Marty Fried
3
@MartyFried, un rápido google salta directamente a help.ubuntu.com/community/Grub2#Reinstalling_GRUB2 , que dice que es tan simple como ejecutar grub-install --root-directory /mnt /dev/sdadespués de montar la partición de Ubuntu en / mnt;)
psusi
Ah, me alegra saber que han mejorado o agregado a la documentación. Ha sido un tiempo para mí, pero cuando estaba tratando de manejarlo, incluso la documentación oficial de GRUB no era totalmente correcta. Además, hubo un cambio de versión para GRUB2 que hizo que fallara con un oscuro mensaje de error. Pero el problema con los foros de Ubuntu que solía frecuentar más es que hay mucha información errónea repetida hasta que las personas que apenas saben de qué están hablando se vuelven un hecho, no todos, pero a veces es difícil de resolver.
Marty Fried
2

Sugeriría evitar usarlo dd if=/dev/sdb5 of=/dev/sda1si su sistema se ejecuta /dev/sdb5solo (y presumiblemente no está montado como de solo lectura).

Otra forma de copiar particiones es arrancar desde el CD en vivo (o USB) e iniciar GParted. Puede usar Ctrl + C / Ctrl + V para copiar particiones de un disco a otro.

Una vez que se realiza la copia (y tal vez después del reinicio es necesario actualizar la tabla de particiones), aún desde el CD en vivo, monte su nueva partición raíz utilizando un Terminal:

sudo mount /dev/sda1 /mnt

Luego, edite /mnt/etc/fstabpara apuntar a las ubicaciones correctas.

Bruno
fuente
1
si dddesde el CD en vivo no necesita editar el fstab siempre que use UUID (que debería).
Alecz
0

El script bash clone-ubuntu.shautomatiza los pasos que describe la respuesta aceptada. Se proporciona un menú para que la nueva partición sea fácil de encontrar:

clone-ubuntu.png

Visite el enlace de arriba para obtener una copia del guión y los puntos importantes a considerar, tales como:

  • rsync se utiliza para clonar partición iniciada y los directorios virtuales del sistema se omiten correctamente.
  • /etc/fstab del clon objetivo se actualiza con los UUID correctos para el arranque.
  • /etc/grub/grub.cfg se actualiza para un arranque de grub continuo.
WinEunuuchs2Unix
fuente