Clonar instalación de linux a un usb o disco duro mas pequeño
Muchas veces he estado en la situación de necesitar reparar una pc, usar una cabina publica , un cibercafe, meterse a una conexión wifi en casa de un amigo, querer impresionar a mis amigos con las cosas que me permite hacer linux. así que comense a llevar conmigo un liveusb instalado en la memoria SD de mi celular. Me salvo de muchas. Pero no es suficiente. Así me puse a buscar una manera de copiar mi ubuntu 10.04 a un usb stick. Y tener todas las herramientas y actualizaciones que tengo ya en mi pc.
Hacer una instalación nueva en el usb llevaría mucho tiempo y maltrataría el aparato, además me enterque con la idea.. . Termine enredándome y haciendo experimentos con virtualbox, hasta me preste un disco duro. Ahora que funciono pensé escribir mi primer tutorial para que el próximo no tenga que resolver un problema ya solucionado….
En mi caso tengo ubuntu 10.04 64 Bit en una particion de 40 GB (con solo 10GB usados).
Mi carpeta /home esta en el mismo disco raíz y solo tengo un usb de 16GB… entonces necesite usar todo lo que aprendí en mis casi dos año desde que migre a linux (y me olvide de los demás sistemas operativos jijiji , no los volví a necesitar XD)
Estos trucos también funcionan muy bien para clonar de un disco a otro mas pequeño y a maquinas virtuales.
Espero que dejarme entender en mi primer tutorial.
No esta tan difícil… animen se a crear un usb-linux, es muy útil
Que necesitamos
Que herramientas conviene conocer
Preparar el sistema
Preparar un usb stick/memory/key/drive
Clonar….
Si mi usb es mas grande que la partición de mi pc
Des-fragmentar ( no, no me volví loco )
Si mi partición es mas grande que mi usb (aquí comienza lo
interesante)
Usando un disco duro adicional o una partición vacía
Usando discos y maquinas virtuales ( .vdi virtualbox)
Que hago si no tengo una VM instalada y no tengo
tiempo/espacio/paciencia para eso
Instalar GRUB2 (arranque)
Toques finales
Que necesitamos:
Super Grub2 Disk es un disco arrancable que permite arrancar casi cualquier sistema operativo.
http://download2.berlios.de/supergrub/super_grub_disk_hybrid-1.98s1.iso
Como reinstalar GRUB2
http://www.guia-ubuntu.org/index.php?title=Recuperar_GRUB
LiveCD o LiveUSB … es muy útil tener un .iso de ubuntu siempre a la mano
Un disco duro adicional ayuda mucho
Virtualbox…si no hay disco extra
Gparted y saber usarlo en un nivel básico
Obviamente un usb de 16GB o mas
Que herramientas conviene conocer
Aquí les quería explicar algunas cosas que nos serán útiles y no esparcir mis explicaciones por todo el tutoríal.
Pueden leerlo luego cuando lo necesiten
Clonar particiones
Usaremos el comando DD para copiar las particiones de un disco a otro, a una partición vacía, o a un archivo imagen. Debemos usarlo en modo root
dd if=/dev/sdb1 of=/media/disco/imagen.raw
Para crear una archivo imagen. Muy útil.
dd if=/dev/sdb1 of=/dev/sda3
Para copiar de una particion a otra o de un disco a otro
dd if=/media/disco/imagen.raw of=/dev/sdc2
Para usar copiar una imagen a un disco real
Donde
if= partición de origen
of= partición destino o archivo destino
Recuerden
No montar la partición que copian
Deben estar seguros de los nombres de las particiones, tener cuidado
Esto no muestra el progreso, así que mucha paciencia
Al terminar nos mostrara unos resultados, como el numero de GB copiados
Compartir carpetas en Virtualbox
Esto nos permite usar los archivos y carpetas de los discos físicos desde una VM
Abrir virtual box manager , ir a settings, shared folders, al signo +
Recomiendo compartir /media/ y /home/usuario/ .
Así disponemos rápidamente de cualquier disco montado al sistema.
Es necesario instalar guest-aditions para usar esta función.
Ejecutar como root este comando en la máquina virtual
$ mkdir /home/usuario/medios
# mount.vboxsf medios /home/usuario/media
Listo tenemos los archivos a la mano
Usar una particion real con virtualbox
Virtualbox permite crear un fichero .vmdk especial que «apunta» a una partición real de un disco duro.
De ese modo es posible arrancar un sistema operativo instalado realmente en la máquina pero virtualizado dentro de otro S.O.
El comando para lograrlo es:
$ VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sda -relative -register
Montas el archivo como cualquier disco virtual a la VM
Tal ves tengas que ejecutar la VM como root
Jamas monten le disco en la maquina virtual y real al mismo tiempo
Ni se les ocurra usar esto con su directorio raíz mientras linux esta corriendo
Convertir una partición real en un disco virtual .vdi
Primero creamos una imagen de la particion. Podemos usar el livecd
dd if=/dev/una-particion of=/media/un/disco/grande/imgen.raw
Luego creamos un disco virtual
VBoxManage convertfromraw /media/algo/imagen.raw /media/algo/imagen.vdi –format VDI
Tardara…
Este disco virtual no podrá ser manipulado desde la maquina virtual con Gparted.
No reconoce la tabla de particiones.
No nos sirve para este caso pero puede ser útil en algún momento
ANTES DE TOCAR NUESTO CASE MAINBOARD DISCO DURO ETC
Apaguen la pc,
Desenchufen todo
Espera a que se descargue o usen un cable para hacer tierra tocando el case y la pared con los extremos
Toque la pared o el case con las palmas de las manos unos segundos
Ahora si pueden tocar adentro
Preparar el sistema
Antes de disponernos a copiar nuestro querido sistema pongamos en orden unas cosas
Borrar los kernel antiguos.
Conviene dejar dos por si el mas nuevo nos da problemas.
Borrar todo de /home/ todo lo que podamos.
Borrar los thumbnails… están en /home/usuario/.thumbnails
Instalar algunas herramientas que nos salvaran mas de una vez
Gparted, macchanger, aircrack,testdisk, algún antivirus, nmap, tor…..
Preparar un usb stick/memory/key/drive
Yo solo tengo uno de 16Gb a la mano
Solo lo conectamos y abrimos Gparted
Creamos una nueva tabla de particiones
Dejamos los primeros 8 MB libres para que el GRUB (arranque) tenga espacio
Sigue el SWAP. como tengo poco espacio le daré 512MB.
Podemos olvidarlo pero podría ayudar en una pc con poca RAM
Ahora dejo el resto de espacio para el sistema ext2, luego marcarlo como boot (arrancable)
Click derecho sobre la particion, manage flags, marcar BOOT
Si tienes un usb mas grande puedes hacer una partición mas y formatearla en FTA32
para que aun puedas usar el usb para lo de siempre.
Si mi usb es mas grande que la partición de mi pc, el caso mas fácil…..
Conectamos el usb
Conectamos nuestro liveusb o liveCD
Encendemos la pc y presionamos F8.
Cuando salga el cuadro para elegir medio de arranque o BOOT le damos al liveusb/liveCD
Abrimos una terminal y tecleamos
palimpsest
Nos fijamos le nombre de la partición de nuestro linux, por ejemplo /dev/sda6,
y de nuestro usb, por ejemplo /dev/sdb2
Nos aseguramos que sdb2 sea mas grande que sda1
sudo su
dd if=/dev/sda1 of=/dev/sdb2 (leer explicación arriba)
Ir por un cafe
Instalar el GRUB2 en el usb
Si mi partición es mas grande que mi usb
Usando un disco duro adicional o una partición vacía.
Como no queremos poner en riesgo la partición donde tenemos linux instalado usaremos una partición vacía o en mi caso.. le pedimos prestado el disco a un amigo. Jajaja
Apagamos la pc y descargamos la estática.
Conectamos el disco prestado, el liveusb o livecd, el usblinux (aun en blanco)
Encendemos, con F8 elegimos iniciar con el liveUSB/CD
Con Gparted creamos una partición unos GB mas grande que lo que copiaremos y del mismo formato en el disco extra
Copiamos con el comando dd
dd if=/dev/sda1 of=/dev/sdc1 ……sdc seria el disco extra
Recuerda estar seguro de los nombres de las particiones
Ir a saquear el refrigerador
Cuando termine abrimos Gparted
File,devices,sdb
Ahora a nuestra copia la re-dimensionaremos, elegir un tamaño solo un poco mas grande al mínimo posible. Puedes usar las flechitas. Ok Y aplicar
Si no nos permite reducirlo lo SUFICIENTE , es decir si solo tenemos X GB en el disco
pero Gparted no deja reducirlo mas de X+n GB y es muy grande para que entre en el usb vamos a des-fragmentar (explicación abajo)
Ir por un helado
Si no nos da ningún error copiamos al usblinux (asegurarse que tenga espacio)
dd if=/dev/sdc1 of=/dev/sdb2 ………….. sdb es el usblinux
Si quiere crear varios usblinux
dd if=/dev/sdc1 of=/media/discogrande/usblinuximage.raw
Si todo va bien podemos probar nuestro usblinux con el super grub disk….
Mejor desconectar todos los discos duros para estar seguros y no meter la pata
Instalar el GRUB2
Des-fragmentar unidad
En linux no necesitamos des-fragmentar salvo en unos pocos casos, como ahora .
La razon es que al tener la carpeta /home y raiz en la misma partición tenemos el disco lleno de archivos que nos parte del sistema. al borrarlos para poder copiar la unidad en usb mas pequeño dejamos espacios vacíos, es decir puedes tener un archivo discontinuo, “huérfanito” a mitad del disco duro. Cuando intentes re-dimensionarlo Gparted no te dejara ir mas atrás del punto donde se encuentra este archivo. Solo podrías re-dimensionar, por ejemplo, has unos 20 GB aunque solo tengas 10 GB en archivos. Solución, des-fragmentarlo.
Fíjate primero si Gparted te permite reducirlo lo suficiente, si es así salta esta parte.
Si no quieres correr riesgos copia primero al disco extra y luego des-fragmentamos.
La verdad yo no lo necesite pues la mayoría de mis archivos los guardo en otro lado, pero solo lo pude reducir hasta 13 GB aproximadamente (solo tenia 9.9 GB en archivos)
Podemos usar Shake-fs o defrag
Aqui hay algo mas de infromacion
http://triangulolinux.wordpress.com/2010/03/30/como-desfragmentar-tus-di…
http://www.vleu.net/shake/
Instalamos shake:
sudo add-apt-repository ppa:un-brice/ppa
sudo apt-get update && sudo apt-get
install shake-fs
O lo descargamos de
https://launchpad.net/%7Eun-brice/+archive/ppa/+files/shake-fs_0.99_amd6…
https://launchpad.net/%7Eun-brice/+archive/ppa/+files/shake-fs_0.99_i386…
Desmontado el disco que des-fragmentaremos hacemos fsck -nvf /dev/sdc1
Para ver el nivel de fragmentación
Después de la instalación, para usar Shake, necesitas editar tu archivo fstab:
gksu gedit /etc/fstab
Y añadir la opción user_xattr para la partición que desea des-fragmentar
(incluso si sólo desea desfragmentar los archivos).
/dev/sdb6 /media/JOCURI ext3 noatime,nodiratime,user_xattr,errors=remount-ro,data=writeback 0 1
(no te preocupes si en el fstab de tu partición, hay otras opciones).
shake /mi/particion
Si todo va bien ya deberían poder achicarlo mucho mas con Gparted
Usando discos y máquinas virtuales
Usamos el livecd o liveusb para crear una imagen de la partición
dd if=/dev/sda6 of=/media/un/disco/grande/imagen.raw
Luego abrimos el manager de virtual box.
Creamos un disco virtual tamaño fijo (fixed) mas grande de la imagen que vamos a copiar.
Configuramos nuestra maquina virtual.
Compartimos la carpeta donde esta la imagen.
Montamos el disco virtual.
Arrancamos la maquina.
En la maquina virtual abrimos gparted.
Creamos una partición del mismo formato que copiaremos (en el nuevo disco virtual, claro)
Y lo mismo de siempre
dd if=/dev/sda6 of=/home/medios/discogrande/imagen.raw
Ahora se ponen a ver una película por que esto tarda muchísimo. Varias horas.
Definitivamente es mejor usar un diso duro extra
Igual que antes usaremos Gparted ara redimensionar. Ahora vamos a dar un paseo.
Montamos nuestro usb y copiamos con comando dd o hacemos una imagen para luego crear varios usblinux
Que hago si NO tengo una VM instalada y no tengo tiempo/espacio/paciencia para eso
Con el comando VBoxManage
$ VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sda -relative -register
Haremos un link a la partición real donde tenemos la imagen
Montamos el link
Montaremos en disco virtual
Copiamos con DD
Redimensionamos
Y finalmente creamos una imagen lista para copiarla en los usblinux
Instalar grub2
Ahora ha instalar el GRUB2 para arrancar nuestro nuevo juguete en cualquier pc.
Hay muchas formas
http://www.guia-ubuntu.org/index.php?title=Recuperar_GRUB
Yo usare Super Grub disk
Ponemos el Super Grub Disk en la lectora
Si quieren desconecten los discos duros dejando solo el usblinux
Encender y presiona F8 elegir la lectora
Se abrirá el menú de SuperGrub Disk, detect any OS, nuestro linux en usb,
Esperar
Una vez iniciado abrir una terminal
sudo su
grub-install /dev/sda
(sda lo debemos substituir por el disco duro que utilizamos para arrancar los sistemas
operativos, casi siempre es sda. Ojo!! no poner el número de partición, solo sda).
update-grub2
Si el comando no te funciona, quizás necesites instalar el paquete grub2:
aptitude install grub2
Bien ya casi terminamos
Toques finales
Arrancamos desde nuestro usb-linux y:
Desinstalar los driver de las tarjetas de video y cualquiera otro que nos pueda dar problemas al llevarlo a otra pc. Yo quite el driver flgrx para tarjetas ATI
Borrar todo lo que hay en downloads, home etc… todo lo comprometedor .
Por si cae en malas manos….
Borrar los historiales de los webbrowser
Recomiendo borar de /home/usuario/ algunas cosas:
home/usuario/.mozilla .thumbnails .config/chromium .dvd-rip …
Todo lo que ocupa espacio y pueda ser comprometedor jejejeje
Deshabilitar la previsualización (preview) de nautilus.
Para no perder tiempo creando los thumbnails en el lentísimo usb.
Comprar una calcomanía de TUX y pegarla en el usblinux
Conclusion
La velocidad de lectura y escritura es mucho mas lenta que el disco duro así que el usb linux me resulto mas lento de lo que pensé (con un puerto USB 2.0) pero no esta mal .
Creo que servirá (al menos hasta que sea común el arranque desde USB 3.0)Si saben como hacer cuando /home esta en otra partición avisenme.
Espero que se entienda todo este rollo y lo intenten.
Pandacriss Enero del 2012
@pandacriss T
Fuente: http://www.ubuntu-es.org/node/164835#.VxdHZtSLSM8
Tuitear 7.090 Veces leído 0 comentarios |
20 abril 2016 en Informática | tags: Informática, Linux |