Montar Super Grub2 Disk en un pendrive y dejar una partición FAT32 para almacenar archivos | Algo de Linux

miércoles, 29 de junio de 2016

Montar Super Grub2 Disk en un pendrive y dejar una partición FAT32 para almacenar archivos

La semana pasada vimos cómo montar Super Grub2 Disk en un pendrive. Yo lo monté en un viejo pendrive de 128Mb que conservaba desde hace tiempo. El problema de este montaje es que perdemos la posibilidad de almacenar archivos en él.

En el wiki de Super Grub2 Disk nos muestran otro método con el que montarlo y crear una partición FAT32 para poder almacenar archivos posteriormente.

Lo primero que tenemos que hacer es formatear el pendrive como FAT32. Para ello podemos utilizar gparted.


Lo formatearemos dejando un espacio sin asignar de 3Mb al principio:


Una vez hecho ésto, nos quedará más o menos así:


Bien. Pues una vez formateado, podemos cerrar gparted.

A continuación, desconectamos el pendrive y volvemos a conectarlo para que se monte. Una vez conectado, ejecutamos el comando mount para identificar el nombre del dispositivo y la partición:
# mount

Si os fijáis en la imagen anterior, veréis que en mi caso ha montado la partición /dev/sdc1 en /media/enam0000/ISOIMAGE. Con ésto, sabemos que el pendrive ha sido identificado como sdc y la partición sdc1.

Así que desmontamos la partición:
# umount /dev/sdc1
Una vez desmontada, guardamos la tabla de particiones del dispositivo:
# dd if=/dev/sdc of=/tmp/partition_table.bin bs=1 count=66 skip=446
A continuación descargamos la ISO de Super Grub2 Disk:
# wget --trust-server-name https://sourceforge.net/projects/supergrub2/files/2.02s4/super_grub2_disk_hybrid_2.02s4.iso/download
Y la "grabamos" en nuestro pendrive (Es importante destacar que perderemos el contenido del pendrive):
# dd if=/home/enam0000/Descargas/super_grub2_disk_hybrid_2.02s4.iso of=/dev/sdc
Una vez grabada, guardamos el boot code de Super Grub2 Disk:
# dd if=/dev/sdc of=/tmp/sg2d_boot_code.bin bs=446 count=1
El siguiente paso será crear un nuevo fichero en el que combinemos el boot code de sg2d y el backup de la tabla de particiones que creamos en un principio:
# cat /tmp/sg2d_boot_code.bin /tmp/partition_table.bin > /tmp/newmbr.bin
Cuando lo tengamos, lo "grabamos" en el dispositivo:
# dd if=/tmp/newmbr.bin of=/dev/sdc
Hacemos un sync:
# sync
Por último, volvemos a abrir gparted y creamos la partición FAT32 en el espacio que veremos sin asignar.
Publicado por primera vez en http://enavas.blogspot.com.es

3 comentarios:

adrian15sgd dijo...

¿Esto lo has llegado a probar? ¿Te funcionaba bien?
Eso de las 3 MB es cuando el disco de SG2D era más pequeño.
Tienes que dejar como espacio libre al principio lo que ocupa la ISO más 1 o 2 megas de margen.

Esteban M. Navas Martín dijo...

Hola, Adrián:

Sí lo he probado y me funciona perfectamente. De hecho, lo tengo montado en un pendrive de 4Gb que quería aprovechar para otras cosas. Por eso lo he escrito. En mi blog escribo todo aquello con lo que voy trabajando y quiero tenerlo documentado por si tengo que volver a montarlo.

Lo que sucede es que al grabar la imagen de SGB2, como la iso ocupa más, se pierde la partición FAT32. Por eso vuelvo a crearla al final.

Un saludo,

Esteban M.

adrian15sgd dijo...

Ese último paso me lo había saltado porque daba por sentado que seguías el procedimiento de la wiki al pie de la letra.

Pues eso que si dejas el margen que te digo al crear la partición por primera vez luego al final ya no tienes que recrear la partición de nuevo.

Por no decir que no tengo claro si gparted al recrear la partición fat32 en tu último paso toca algo más diferente que la propia partición.