Posteado por: jmanuelcool | marzo 29, 2008

Copiar Particiones sin reinstalar

Esto es especialmente práctico en el caso que hallas tenido dual boot y decidiste dejar a tu ubuntu sólo en el disco y mudarlo a la partición donde tenías windows o, como en mi caso, compraste un disco de mayor capacidad y no quieres reinstalar todo desde 0.

Lo que necesitarás:
Tu disco duro actual
El disco duro nuevo (en caso que vallas a cambiar de disco)
Live CD de Linux, te recomiendo Ubuntu

Inserta el Live CD de Ubuntu en tu unidad de CD o DVD e inicia tu máquina
Cuando aparece el menú de inicio de Ubuntu, puedes seleccionar el idioma español presionando F2
Una vez que el sistema arrancó, abre el programa Gparted (Sistema -> Administración -> Editor de pariciones Gnome) que es el administrador de particiones de Gnome
Espera a que Gparted haga un inventario de las particiones de tus discos duros
En la parte superior derecha de la ventana se mostrará la lista de los discos duros
Toma nota del nombre de los discos duros, en Linux se nombran como dispositivos, no con letras de unidad, en mi caso: sda=disco original y sdb=disco nuevo (esto porque mis discos son SCSI, en caso de ser IDE serían hda y hdb)
Asegúrate de particionar el disco destino con particiones iguales o mas grandes que las que quieres copiar (la explicación sobra, pero para comprender mejor trata de vaciar una botella de 1.5Lts en una de 500cc no se puede ¿verdad? pero a la inversa si, es decir la de 500cc en la de 1.5Lts)
NOTA IMPORTANTE: a la nueva partición de arranque deberás de ponerle marca de booteo, si no el sistema no te arrancará ni con diesel (gparted, click derecho sobre la partición > gestionar flags > boot)

Ahora viene lo interesante, vamos a copiar el contenido:
en una consola de root (sudo su) vas a colocar el siguiente comando:
dd if=/dev/sdaORIGEN of=/dev/sdbDESTINO
dd if=/dev/hdaORIGEN of=/dev/hdbDESTINO (en caso que tus discos aparezcan como hda y hdb)
esto lo vas a repetir tantas veces como particiones tengas
NOTA: es muy importante respetar el orden de las particiones; Ej si tu partición raiz es sda1 (o hda1) y la personal es sda2 (o hda2) seía asi:
dd if=/dev/sda1 of=/dev/sdb1
dd if=/dev/hda1 of=/dev/hdb1
y luego:
dd if=/dev/sda2 of=/dev/sdb2
dd if=/dev/hda2 of=/dev/hdb2

Este proceso funciona, ya que así fue que logré pasar mi sistema UBUNTU que compartía casa en un disco de 80Gb con windows a uno de 160Gb donde sólo tengo ubuntu

PD: el proceso tb funciona para cuando quieres eliminar windows de tu disco, en este caso el comado sería:
dd if=/dev/sda5 of=/dev/sda1
dd if=/dev/sda6 of=/dev/sda2
(en caso que tengas ubuntu instalado en sda5 y windows en sda1) las numeraciones de las particiones pueden variar

Ahora viene la fase de “carpintería” es decir, reinstalar el grub (para ello usaremos el Super Grub Disc que lo pueden descargar de [url=http://supergrub.forjamari.linex.org/?section=download]AQUI[/url]) y editar las fstab, mtab, fstab.pre-uuid y menu.lst
una vez iniciado el sistema con el SGD nos vamos a GNU/linux > reinstalar GRUB, con esto instalamos el GRUB en la particion donde acabamos de mover nuestro preciado ubuntu.
Reiniciamos la máquina, ahora con el livecd de ubuntu (si, otra vez el livecd)
y desde una consola de root escribimos:
gedit /disk/dev/sdaX/etc/fstab
OJO: asegurate que estas escribiendo la ruta de la carpeta /etc de tu disco y no la del cd, puedes verificar esto sencillamente montando el dispositivo y diriendote con nautilus a la carpeta /etc de tu disco
como ejemplo colocaré mi fstab anterior al cambio:

# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda7
UUID=88613915-ce7f-48cf-bb45-c98237b44d2e / ext3 defaults,errors=remount-ro 0 1
# /dev/sda8
UUID=78c4d6cb-a02c-4986-97cd-2d4482ec2b21 /home ext3 defaults 0 2
# /dev/sda1
UUID=56BC3BC4BC3B9D85 /media/sda1 ntfs defaults,nls=utf8,umask=007,gid=46 0 1
# /dev/sda5
UUID=F60C60340C5FEE5D /media/sda5 ntfs defaults,nls=utf8,umask=007,gid=46 0 1
# /dev/sda6
UUID=b4de8464-3fd8-47e5-80da-5bb25e17ee5c none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/scd1 /media/cdrom1 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

y asi fué como quedó luego del cambio
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda1
UUID=7867cba6-1feb-4c25-b6e3-d2497fc45d27 none swap sw 0 0
# /dev/sda2
UUID=88613915-ce7f-48cf-bb45-c98237b44d2e / ext3 defaults 0 2
# /dev/sda3
UUID=78c4d6cb-a02c-4986-97cd-2d4482ec2b21 /home ext3 defaults 0 2
# /dev/sda4
UUID=d91ec30f-8ed5-4156-919a-9e77a31a7049 /media/datos ext3 defaults 0 2
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/scd1 /media/cdrom1 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

en mi caso particular eliminé las particiones de windows porque ya no quiero que ocupe espacio en mi disco nuevo, pero cada caso puede variar
IMPORTANTE: para conocer las UUID de las nuevas particiones debemos colocar en una consola el siguiente comando:
udo vol_id /dev/hdXY (donde X es el disco que tiene la partición Y de la cual queremos conocer la UUID)

ahora vamos con el fstab.pre-uuid:
desde una consola de root escribimos:
gedit /disk/dev/sdaX/etc/fstab.pre-uuid
la mía anterior al cambio:

# /etc/fstab-pre-uuid: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/sda1 none swap sw 0 0
/dev/sda2 / ext3 defaults 0 2
/dev/sda3 /home ext3 defaults 0 2
/dev/sda4 /media/datos ext3 defaults 0 2
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/scd1 /media/cdrom1 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

y luego del cambio:

# /etc/fstab-pre-uuid: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/sda1 none swap sw 0 0
/dev/sda2 / ext3 defaults 0 2
/dev/sda3 /home ext3 defaults 0 2
/dev/sda4 /media/datos ext3 defaults 0 2
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/scd1 /media/cdrom1 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

ahora vamos con el mtab:
desde una consola de root escribimos:
gedit /disk/dev/sdaX/etc/mtab
la mía anterior al cambio:

/dev/sda2 / ext3 rw,errors=remount-ro 0 0
proc /proc proc rw,noexec,nosuid,nodev 0 0
/sys /sys sysfs rw,noexec,nosuid,nodev 0 0
varrun /var/run tmpfs rw,noexec,nosuid,nodev,mode=0755 0 0
varlock /var/lock tmpfs rw,noexec,nosuid,nodev,mode=1777 0 0
udev /dev tmpfs rw,mode=0755 0 0
devshm /dev/shm tmpfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
nfsd /proc/fs/nfsd nfsd rw 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,noexec,nosuid,nodev 0 0

y luego del cambio:

/dev/sda2 / ext3 rw 0 0
proc /proc proc rw,noexec,nosuid,nodev 0 0
/sys /sys sysfs rw,noexec,nosuid,nodev 0 0
varrun /var/run tmpfs rw,noexec,nosuid,nodev,mode=0755 0 0
varlock /var/lock tmpfs rw,noexec,nosuid,nodev,mode=1777 0 0
udev /dev tmpfs rw,mode=0755 0 0
devshm /dev/shm tmpfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
lrm /lib/modules/2.6.22-14-generic/volatile tmpfs rw 0 0
/dev/sda3 /home ext3 rw 0 0
/dev/sda4 /media/datos ext3 rw 0 0
securityfs /sys/kernel/security securityfs rw 0 0
nfsd /proc/fs/nfsd nfsd rw 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,noexec,nosuid,nodev 0 0

y, finalmente el /boot/grub/menu.lst (nuevamente te recuerdo verificar con nautilus para que realmente modifiques la de tu disco duro y no la del cd, ya que al modificar la del cd perderá todo tu trabajo)
desde una consola de root escribimos:
gedit /disk/dev/sdaX/boot/grub/menu.lst
el mío anterior al cambio:

# menu.lst – See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/doc/grub-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify ‘saved’ instead of a number. In this case, the default entry
# is the entry saved with the command ‘savedefault’.
# WARNING: If you are using dmraid do not change this entry to ‘saved’ or your
# array will desync and will not let you boot your system.
default 0

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout 10

## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
#hiddenmenu

# Pretty colours
#color cyan/blue white/blue

## password [‘–md5’] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command ‘lock’
# e.g. password topsecret
# password –md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title Windows 95/98/NT/2000
# root (hd0,0)
# makeactive
# chainloader +1
#
# title Linux
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro

## Setup crashdump menu entries
## e.g. crashdump=1
# crashdump=0

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd0,6)

## should update-grub create alternative automagic boot options
## e.g. alternative=true
## alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
## lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet splash noapic nolapic locale=es_ES

## should update-grub lock old automagic boot options
## e.g. lockold=false
## lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
## altoptions=(recovery) single
# altoptions=(recovery mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
## howmany=7
# howmany=all

## should update-grub create memtest86 boot option
## e.g. memtest86=true
## memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## ## End Default Options ##

title Ubuntu, kernel 2.6.20-15-generic
root (hd0,6)
kernel /boot/vmlinuz-2.6.20-15-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro quiet splash noapic nolapic locale=es_ES
initrd /boot/initrd.img-2.6.20-15-generic
quiet
savedefault

title Ubuntu, kernel 2.6.20-15-generic (recovery mode)
root (hd0,6)
kernel /boot/vmlinuz-2.6.20-15-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro single
initrd /boot/initrd.img-2.6.20-15-generic

title Ubuntu, memtest86+
root (hd0,6)
kernel /boot/memtest86+.bin
quiet

### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
title Other operating systems:
root

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
title Windows NT/2000/XP (loader)
root (hd0,0)
savedefault
makeactive
chainloader +1

y luego del cambio:
# menu.lst – See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/doc/grub-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify ‘saved’ instead of a number. In this case, the default entry
# is the entry saved with the command ‘savedefault’.
# WARNING: If you are using dmraid do not change this entry to ‘saved’ or your
# array will desync and will not let you boot your system.
default 0

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout 25

## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
#hiddenmenu

# Pretty colours
# color cyan/blue white/blue

#A splash image for the menu
# splashimage=(hd0,6)/boot/grub/splashimages/biosplash.xpm.gz

## password [‘–md5’] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command ‘lock’
# e.g. password topsecret
## password –md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title Windows 95/98/NT/2000
# root (hd0,0)
# makeactive
# chainloader +1
#
# title Linux
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro

## Setup crashdump menu entries
## e.g. crashdump=1
# crashdump=0

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd0,6)

## should update-grub create alternative automagic boot options
## e.g. alternative=true
## alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
## lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet splash noapic nolapic locale=es_ES

## should update-grub lock old automagic boot options
## e.g. lockold=false
## lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
## altoptions=(recovery) single
# altoptions=(recovery mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
## howmany=7
# howmany=all

## should update-grub create memtest86 boot option
## e.g. memtest86=true
## memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false

## ## End Default Options ##

title Ubuntu 7.10, kernel 2.6.22-14-generic
root (hd0,1)
kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro quiet splash noapic nolapic locale=es_ES
initrd /boot/initrd.img-2.6.22-14-generic
quiet

title Ubuntu 7.10, kernel 2.6.22-14-generic (recovery mode)
root (hd0,1)
kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro single
initrd /boot/initrd.img-2.6.22-14-generic

title Ubuntu 7.10, kernel 2.6.20-16-generic
root (hd0,1)
kernel /boot/vmlinuz-2.6.20-16-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro quiet splash noapic nolapic locale=es_ES
initrd /boot/initrd.img-2.6.20-16-generic
quiet

title Ubuntu 7.10, kernel 2.6.20-16-generic (recovery mode)
root (hd0,1)
kernel /boot/vmlinuz-2.6.20-16-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro single
initrd /boot/initrd.img-2.6.20-16-generic

title Ubuntu 7.10, kernel 2.6.20-15-generic
root (hd0,1)
kernel /boot/vmlinuz-2.6.20-15-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro quiet splash noapic nolapic locale=es_ES
initrd /boot/initrd.img-2.6.20-15-generic
quiet

title Ubuntu 7.10, kernel 2.6.20-15-generic (recovery mode)
root (hd0,1)
kernel /boot/vmlinuz-2.6.20-15-generic root=UUID=88613915-ce7f-48cf-bb45-c98237b44d2e ro single
initrd /boot/initrd.img-2.6.20-15-generic

title Ubuntu 7.10, memtest86+
root (hd0,1)
kernel /boot/memtest86+.bin
quiet

### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
# title Other operating systems:
# root

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
# title Windows NT/2000/XP (loader)
# root (hd0,0)
savedefault
makeactive
chainloader +1

como pudieron haber notado eliminé todas las entradas correspondientes al windows y dejé solo las de ubuntu, indicándole al grub cuál es la nueva partición de arranque y la nueva uuid de dicha partición

con esto tu sistema quedará 100% usable; en mi caso particular el único inconeveniente que tuve fué que me tocó reinstalar los drivers de la tarjeta gráfica nvidia, pero mas nada en lo absoluto


Responses

  1. Gracias. Ya había olvidado como hacerlo, por cuanto no tuve necesidad de cambiar el disco, hasta ahora.

    Excelente tutorial. Tener en cuenta que con grub2 cambian los archivos de configuración: /etc/default/grub para indicar cual será la partición de carga inicial y para actualizar el grub.conf se ejecuta como superusuario update-grub y listo.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Categorías

A %d blogueros les gusta esto: