Grabar ISO de Canaima GNU/Linux en un Pendrive USB

USB Pendrive Canaima GNU/Linux

Existen varios métodos documentados en internet sobre como grabar la imagen ISO de Canaima en un Pendrive para poder utilizarlo como LiveUSB, sin embargo hay algunos métodos que muchos reportan que no funcionan con Canaima (como el caso de UNetbootin), o que dejan inhabilitado el Pendrive para grabar nuevos datos (como el caso del comando ‘dd if=XXX of=YYY’).

En esta oportunidad voy a documentar un procedimiento que permite utilizar el Pendrive como LiveUSB, que funciona correctamente con Canaima (comprobado incluso en otras distribuciones Linux) y que a su vez No inhabilita el Pendrive para su uso, es decir, luego de convertirlo en LiveUSB podemos seguir guardando y borrando datos en nuestro dispositivo sin inconvenientes.

Ingredientes:

  • Pendrive (o Disco Duro Externo también sirve).
  • Clave de usuario administrador.
  • Paquete syslinux.
  • Paquete mbr.

Resumen:

# Instalar paquetes necesarios
aptitude install syslinux mbr

# Extraer datos de imagen .iso
mount -o loop Descargas/canaima-popular-4.0~a1_i386.iso /mnt/

# Copiar datos de imagen .iso al pendrive
cp -rvf /mnt/* /media/ERICK_PENDRIVE

# Instalar syslinux en la particion correcta del pendrive
syslinux -i -f -d isolinux/ /dev/sdh1
cp /media/ERICK_PENDRIVE/isolinux/isolinux.cfg /media/ERICK_PENDRIVE/isolinux/syslinux.cfg

# Instalar Master Boot Record en el pendrive
# OJO: Este paso es delicado si no se indica el dispositivo correcto
install-mbr -p1 /dev/sdh

Receta:

La clave de administrador es necesaria ya que la mayoría de estos comandos debe ejecutarse como root, es decir con privilegios administrativos.

En primer lugar debemos instalar los paquetes necesarios en caso de no estar ya instalados en el sistema.

# aptitude install syslinux mbr

Ahora vamos a extraer los datos de la imagen ISO de Canaima para copiarlos luego a nuestro pendrive. En este caso, estoy trabajando con una imagen descargada de Canaima 4.0 Alfa 1 la cual quiero poder probar utilizando mi pendrive sin tener que quemarla en un CD o DVD. Para poder lograrlo montaremos esta imagen ISO como si fuera un CD con el siguiente comando.

# mount -o loop Descargas/canaima-popular-4.0~a1_i386.iso /mnt/

En este caso Descargas/canaima-popular-4.0~a1_i386.iso es la ruta donde esta mi imagen .iso de Canaima, este nombre debe ser cambiado por la ruta correspondiente en tu sistema. Luego /mnt/ es el directorio destino donde quiero monatar mi imagen .iso como si fuera un CD, es importrante que el directorio indicado acá exista de lo contrario el comando fallará.

Ahora copiaremos los datos del CD al pendrive, para ello no está de más decir que debemos insertar el pendrive y saber la ruta donde está montado. Para copiar los archivos utilizaremos el siguiente comando.

$ cp -rvf /mnt/* /media/ERICK_PENDRIVE

El valor /mnt/ debe ser la ruta donde esta montamos nuestra imagen ISO como CD, y el valor /media/ERICK_PENDRIVE se refiera a la ruta donde esta montado nuestro pendrive.

En caso de no saber donde esta montado nuestro pendrive existen muchas formas de hacerlo, tanto en modo gráfico como en consola. En este caso sólo les voy a recomendar la herramienta lsblk, la cual puede darnos una idea de los discos que tenemos en nuestro equipo y donde se encuentran montados.

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 232,9G  0 disk 
├─sda1   8:1    0   225G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   7,9G  0 part [SWAP]
sdb      8:16   0 232,9G  0 disk 
└─sdb1   8:17   0 232,9G  0 part /mnt/RESPALDO
sdc      8:32   0 232,9G  0 disk 
└─sdc1   8:33   0 232,9G  0 part /mnt/DISCO_3
sr0     11:0    1  1024M  0 rom  
sdh      8:112  1   960M  0 disk 
└─sdh1   8:113  1   959M  0 part /media/ERICK_PENDRIVE

En este caso he resaltado las líneas que me interesan para este ejemplo y de esta manera se hagan una idea. Como verán en mi caso tengo 3 discos duros (sda, sdb, sdc) con sus respectivas particiones, 1 unidad de CD (sr0) y el pendrive que quiero convertir en LiveUSB (sdh) con su respectiva partición.

Ahora procederemos a activar el gestor de arranque syslinux en nuestro pendrive. Este gestor de arranque es el que nos mostrará las opciones que nuestro liveUSB tiene para iniciar el sistema. En el comando que ejecutaremos a continuación es necesario saber cual es el identificador de nuestro dispositivo (nuestro pendrive o dsico USB) y cual es la partición en la cual hemos copiado los datos del CD. Por lo general los pendrive tienen una sola partición asi que con saber el identificador del dispositivo es bastante. En mi caso el identificador para mi pendrive en este momento es /dev/sdh así que para instalar syslinux ejecutamos:

# syslinux -i -f -d isolinux/ /dev/sdh1

Como se puede ver, estoy instalando syslinux en la partición numero 1 de mi pendrive, por ello uso el valor /dev/sdh1.

Para que syslinux funcione correctamente debemos hacer un pequeño paso adicional ya que Canaima trabaja con isolinux. Este paso se trata simplemente de renombrar el archivo isolinux.cfg por syslinux.cfg, esto lo podemos hacer fácilmente o con el comando:

$ cp /media/ERICK_PENDRIVE/isolinux/isolinux.cfg /media/ERICK_PENDRIVE/isolinux/syslinux.cfg

Sólo nos resta un paso, y se trata de hacer nuestro pendrive booteable para que al arrancar la computadora ejecute el contenido que se encuentra dentro de él. Esto lo hacemos instalando el Master Boot Record dentro del pendrive.

# install-mbr -p1 /dev/sdh

Acá, la opción -p1 indica la partición de arranque del sistema, es decir, la partición donde se instaló syslinux en nuestro caso. Y /dev/sdh es el identificador del dispositivo, no de la partición. Es importante saber los valores correctos de nuestro dispositivo en estos casos ya que de lo contrario podríamos dañar el formato de los discos. Si cometes un error en este paso probablemente deberás formatear tu pendrive o disco para poder seguir usándolo.

Con estos pasos sólo resta reiniciar nuestro equipo con nuestro nuevo LiveUSB insertado asegurándonos que nuestra BIOS soporte el arranque por USB y indicándole que su primer disco de arranque sea el pendrive.

Espero poder ayudarles más a través de sus comentarios.

About these ads

29 comentarios en “Grabar ISO de Canaima GNU/Linux en un Pendrive USB

  1. Funciona perfecto canaima 3.1 x 32 bit, pero traté de hacerlo con ubuntu 14.04 x 64 bit y al hacer cp -rvf /mnt/* /media/PENDRIVE

    me sale este error: “cp: no se puede crear el enlace simbólico «/media/usb/ubuntu»: Operación no permitida”

    • Perdón no copie el error completo dice así

      cp: no se puede crear el enlace simbólico «/media/usb/ubuntu»: Operación no permitida:
      «/mnt/wubi.exe» -> «/media/usb/wubi.exe»

    • El problema que tienes con ubuntu es que seguramente dentro del contenido del CD hay un “enlace simbólico”, y los sistemas FAT32 comunes en los pendrives no soportan estos enlaces.

      Lo que te puedo recomendar es que para ese caso de ubuntu formatees el pendrive con un formato que soporte enlaces simbólicos, puedes escoger entre ext4, ext3, ext2, etc, son varios que lo soportan, el más común ahorita es ext4.

      • Hola erickcion, soporta el formato pero no trabaja con syslinux solo aguanta usb con fat, fat32. me tira un error, pasa solo con ubuntu, con canaima va 100%. estoy en ubuntu 12.04

  2. Esto esta perfecto! tengo una duda haber si me puedes aclarar por favor:
    cual es la diferencia de montar una iso en /mnt/ a montar iso /mnt, osea sin el ultimo (/)
    Ejemplo:
    mount -o loop Descargas/canaima-popular-4.0~a1_i386.iso /mnt/
    mount -o loop Descargas/canaima-popular-4.0~a1_i386.iso /mnt

    ¿que hacen los comandos -rvf ?
    tenía 2 días intentando bootear desde la usb sin programas y con tu tutorial lo conseguí fácilmente sin usar el unetbootin,

    ¡Gracias de antemano!

    • Saludos, ¡que bueno que te sea de utilidad!

      1.- La diferencia entre /mnt/ y /mnt es ninguna, el sistema hará exactamente lo mismo.

      2.- La opción -rvf se refiere a tres parametros que se le están pasando a el comando “cp”
      -r Copia Recursiva: copia el contenido y las sub-carpetas presentes.
      -v Verbose: Muestra información de lo que está haciendo el comando.
      -f Forzar: Sobreescribe archvivos sin preguntar.

      • Casual ayer estaba leyendo el “man cp” en la terminal y me enteré de lo que me estas diciendo ahora, Gracias nuevamente.
        En cuanto a agregar un (/) o no esto al final de una carpeta, lo había usado para rsync y creo que es lo mismo para “cp” si esta presente el (/*) al final de la carperta, se copiaran todos los archivos que hay dentro de ella mas no la carpeta, y si no presente el (/*) al final se copiara todo..es decir la carpeta y todos los archivos que hayan dentro de ella.
        Creo que así.

  3. disculpen mi ignorancia o si es q no he leido todos los comentarios, pero yo quiero pasar el sistema canaima a un pendrive desde winXP y no logro conseguir la manera. yo no tengo linux. q programa puedo utilizar?

    • utiliza esta aplicacion es la mejor para grabar imanes ISO de tu linux a un pendrive y tambien desde un cd al pedrive tambien para descargar la imagen y para colmo crea una particion de persistencia po si quieres guardar datos cuando utlices tu linux desde el pendrive bueno esta es la herramienta http://www.linuxliveusb.com

  4. Tremenda ridiculez…

    ¿Cual es el chiste de hacer esto desde linux?

    Abtes con UnetBootin desde Windows todo era mas facil, yo necesito copiar el ISO de canaima desde WINDOWS al USB.

  5. $ cp -rvf /mnt/* /media/ERICK_PENDRIVE en esta parte de la receta aparece el mensaje bash:$: no se encontro la orden. DE igual manera para el comando $ lsblk

    • No debes colocar el “$”… ese simbolo de dolar en linux significa que el comando lo puedes hacer como ussuario normal sin provilegios administrativos del sistema, y cuando veas “#” significa que si necesitas privilegios de administración.

      Ten cuidado con los comandos que ejecutas, si no lo sabes usar podrías dañar tu sistema.

  6. Pingback: Controladores de dispositivos de Hardware | luis97so
  7. Erick,

    Agradezco la receta. Mis condimentos para hacerla más sabrosa son:

    1. En la sección Resumen, antes del primer paso incluir otro que haga mención al formateo de la unidad. Esto además guiará tempranamente el motivo por el cual se suelen usar formatos FAT32 en ocasiones de este tipo. Serie de comandos sugeridos:

    umount /dev/sdh1
    mkfs.vfat /dev/sdh1
    mount /dev/sdh1 /media/ERICK_PENDRIVE

    2. Me parece que hay un error de rutas, en la misma sección Resumen, cuando dices: cp /media/ERICK_PENDRIVE/isolinux.cfg /media/ERICK_PENDRIVE/syslinux.cfg. Al momento de desarrollar tu receta yo me conseguí esto:

    cp /mnt/isolinux/isolinux.cfg /mnt/isolinux/syslinux.cfg

    Si yo estoy en lo correcto, vos omitiste el directorio ‘isolinux’ en tu receta.


    Del resto, me parece excelente tu aporte, muy necesario para mi, ya que estoy trabajando con unas Canaimitas en un proyecto junto a Nehomar con el objeto de obtener una semilla genérica de sistema Canaima Educativo para los ocho modelos existentes.

    Saludos

    -Joaquin

    • Gracias Joaquín…

      Con relación al formateo del pendrive es un paso que no quiero referenciar precisamente porque este metodo no requiere ni siquiera borrar la información del pendrive. Es decir, si tienes un pendrive funcionanedo sólo copias los datos y lo haces booteable, listo.

      Sobre el otro error, tienes razón me comí parte de la ruta, ya lo voy a editar para corregirlo. Gracias nuevamente, no me habia dado cuenta.

      • Claro. Entiendo.

        Sin embargo, sigo pensando que es útil hacer una salvedad sobre que el sistema de archivos subyacente sea FAT32. Debe estudiarse mejor por qué otros sistemas de archivos son menos triviales de manipular en estas ocasiones. Yo no conozco las razones.

        Por otro lado, Erick, pienso que sería una exquisitez aceptable contar con rutas absolutas, es decir que en vez de esto

        syslinux -i -f -d isolinux/ /dev/sdh1

        se indique algo como esto

        syslinux -i -f -d /media/PENDRIVE/isolinux/ /dev/sdh1

        Sigo saludando tu trabajo.

        -Joaquin

    • Noooo joaquín, la opción “-d” recibe solo la ruta relativa al disco! jajaja

      Si lo probaste con una ruta absoluta y te funciono me extrañaria bastante. No se trata de una ruta del sistema sino la ruta que Syslinux usará en el CD/Pendrive para buscar la configuración cuando arranque el sistema.

    • buen aporte hay una aplicacion claro es para windows pero solo graba imagenes iso en pendrive solo sistemas Libres(GNU/LINUX) se lla ma linu live usb es exelente no se porque esta hecho para ejecutarse en windows si solo graba para linux je je bueno este es el enlace estan imagenes.iso para descargar
      http://www.linuxliveusb.com

  8. Muy bueno el tutorial. Mi duda es la siguiente: que tipo de formato (FS) debo darle al pendrive?. Gracias nuevamente por tus aportes (que ayudan bastante!).

    • Efectivamente ”dd” es un metodo mas sencillo, pero como puedes leer al inicio del articulo tiene algunos inconvenientes. Especificamente 2 inconvenientes para mi:

      – Impide que puedas guardar datos en el pendrive.
      – No funciona en algunos equipos (Ej: Laptop Canaima-Educativo Bachillerato)

Deja un comentario

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