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.

Grabar ISO de Canaima GNU/Linux en un Pendrive USB

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

  1. caremys dijo:

    Hola! tengo una canaima modelo EF10MI2, con sistema operativo canaima 4 y quiero actualizar a canaima 5.0, quisiera saber si puedo seguir estos mismos pasos o se debe hacer diferente,

  2. eddy sandoval dijo:

    gracias por este aporte erick, resolvi lo que la paritcion no me funcionaba al instalar el mbr le dejaba en nro de particion, me funciono y instale en 1 canaimita liceo el canaima 4, un consulta como revierto la instalacion del install mbr para que me quede igual que antes revise las opciones y utilice reset y zero; y me siguio buscando iniciar el canaima4 es para poder reutilizar de nuevo el pendrive para que bootee con otros sistema ejm: canaima3 utilice unetbootin y no me funciono no hay manera que la pase por encima al mbr instalado por comando, tambien quisiera que fueran mas detallados en la explicacion de los formatos para los pendrive de grande capacidad tengo 1 de 16gb, gracias de antemano.

  3. eddy sandoval dijo:

    saludos y gracias por este gran aporte tengo mucho tiempo tratando de hacer esto, pero tengo un pen de 16 gb y al terminar el proceso me sale la particion como desconocida y no bootea, igualmente para hacerme un canaima 4 personalizado ya que tuve problemas con canaima semilla en canaima4, utilice el metodo de modificar el squashfs y bootea fino en modo vivo pero me da falla al terminar de instalar el gestor de arranque, alguna idea?

  4. Bien el problema es simple es Windows Vs Linux. a muchos les gusta linux a muchos les gusta windows. Linux represa un retorno al lenguaje de programa, antes de Dos. un lenguaje mucho mas complicado. La revolucion de Windows fue ocultar todos esos comandos y llevarlo a algo simplemente grafico o una interfase mas amigable, y simplemente por eso se paga, y es lo que se conoce como un sofware privado. linux simplemementes es engorroso.

    1. we esconde para tener una escusa y poder sacarle dinero a los flojos y los que carecen de tiempo.. un negocio lucrativo del cual se nutren mucho y si mejor que sea engorroso, los guindoserviven formateando y yo siempre gente trabajo obviamente con gente como tu..

      si no hubiera la necesidad no existiera la solución… ja js js

  5. Lic. Yolman Mejia dijo:

    Buen día, necesito ayuda…
    necesito hacer este pendrive para intentar reparar canaimita de mis estudiantes de una zona rural…
    esto sucede en el primer paso…. como lo puedo solucionar?

    aptitude install syslinux mbr
    Se instalarán los siguiente paquetes NUEVOS:
    mbr syslinux syslinux-common{a}
    Se configurarán los siguientes paquetes que están ahora parcialmente instalados:
    libpython2.7{b}
    Se RECOMIENDAN los siguientes paquetes, pero NO se instalarán:
    libcrypt-passwdmd5-perl
    0 paquetes actualizados, 3 nuevos instalados, 0 para eliminar y 52 sin actualizar.
    Necesito descargar 0 B/1.055 kB de ficheros. Después de desempaquetar se usarán 3.462 kB.
    No se satisfacen las dependencias de los siguientes paquetes:
    libpython2.7 : Depende: python2.7 (= 2.7.3-6+deb7u2) pero 2.7.3-6 está instalado y retenido.
    Las acciones siguientes resolverán estas dependencias

    Eliminar los paquetes siguientes:
    1) canaima-multimedia-gnome
    2) canaima-ofimatica-gnome
    3) eog
    4) gedit
    5) gedit-plugins
    6) gir1.2-peas-1.0
    7) libpeas-1.0-0
    8) libpython2.7
    9) librhythmbox-core6
    10) libtotem0
    11) python-uno
    12) rhythmbox
    13) totem
    14) totem-mozilla
    15) unoconv

    ¿Acepta esta solución? [Y/n/q/?]n
    Las acciones siguientes resolverán estas dependencias

    Actualizar los paquetes siguientes:
    1) python2.7 [2.7.3-6 (now) -> 2.7.3-6+deb7u2 (estable)]
    2) python2.7-minimal [2.7.3-6 (now) -> 2.7.3-6+deb7u2 (estable)]

    ¿Acepta esta solución? [Y/n/q/?]y
    Se instalarán los siguiente paquetes NUEVOS:
    mbr syslinux syslinux-common{a}
    Se actualizarán los siguientes paquetes:
    python2.7 python2.7-minimal
    Se configurarán los siguientes paquetes que están ahora parcialmente instalados:
    libpython2.7
    Se RECOMIENDAN los siguientes paquetes, pero NO se instalarán:
    libcrypt-passwdmd5-perl
    2 paquetes actualizados, 3 nuevos instalados, 0 para eliminar y 50 sin actualizar.
    Necesito descargar 0 B/5.457 kB de ficheros. Después de desempaquetar se usarán 3.181 kB.
    ¿Quiere continuar? [Y/n/?] y
    (Leyendo la base de datos … 119140 ficheros o directorios instalados actualmente.)
    Preparando para reemplazar python2.7-minimal 2.7.3-6 (usando …/python2.7-minimal_2.7.3-6+deb7u2_i386.deb) …
    Desempaquetando el reemplazo de python2.7-minimal …
    dpkg: error al procesar /var/cache/apt/archives/python2.7-minimal_2.7.3-6+deb7u2_i386.deb (–unpack):
    intentando sobreescribir `/usr/lib/python2.7/lib-dynload/_hashlib.so’, que está también en el paquete python2.7 2.7.3-6
    dpkg-deb: error: el subproceso copiado fue terminado por la señal (Tubería rota)
    Se encontraron errores al procesar:
    /var/cache/apt/archives/python2.7-minimal_2.7.3-6+deb7u2_i386.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    Un paquete no se pudo instalar. Intentado recuperarse:
    dpkg: problemas de dependencias impiden la configuración de libpython2.7:
    libpython2.7 depende de python2.7 (= 2.7.3-6+deb7u2); sin embargo:
    La versión de `python2.7′ en el sistema es 2.7.3-6.

    dpkg: error al procesar libpython2.7 (–configure):
    problemas de dependencias – se deja sin configurar
    Se encontraron errores al procesar:
    libpython2.7

  6. nestor dijo:

    Perdón, pero según lo que entiendo todos estos pasos o instrucciones que ud. comparte tan detalladamente son para LINUX, Canaima, en este caso… Pero yo tengo Windows, y quiero, precisamente, instalar Canaima en mi pc… No tengo unidad de CD en mi pc, por lo que me es necesario instalarlo desde el pendrive, pero partiendo desde Windows, que el S/O que tengo, señor…

    ¿Podría ayudarme?

  7. victor dijo:

    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»

    1. victor dijo:

      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»

    2. 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.

      1. victor dijo:

        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

  8. victor dijo:

    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!

    1. 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.

      1. victor dijo:

        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í.

  9. ireluc dijo:

    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?

    1. vobes dijo:

      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

  10. Martin Tovar y Tovar dijo:

    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.

  11. raquelyn dijo:

    $ 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

    1. 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.

  12. 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

    1. 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.

      1. 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

    2. 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.

    3. Luis dijo:

      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

  13. Jose Luis Gonzalez dijo:

    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!).

      1. vobes dijo:

        cuando el pendrive pasa de 4gb tienes que darle un formato diferente sino te dura poco tiempo despues de usrlo muchas veces experiencia propia

    1. 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