Formatear y bootear un disco o pendrive

Suele pasar que se me olvida como formatear y posteriormente grabar una imagen en un pendrive, por esta razón va este post.

Formateando el pendrive

Primero que todo, es necesario revisar que puertos son los que se están utilizando, para ello tenemos

  • sudo fdisk -l
  • lsblk

Comando fdisk

Al utilizar sudo fdisk -l

entregará una respuesta como esta:

Disco /dev/sda: 931,53 GiB, 1000204886016 bytes, 1953525168 sectores
Modelo de disco: TOSHIBA xxxxxxxx
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 4096 bytes
Tamaño de E/S (mínimo/óptimo): 4096 bytes / 4096 bytes
Tipo de etiqueta de disco: gpt
Identificador del disco: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxx

Disposit. Comienzo Final Sectores Tamaño Tipo
/dev/sda1 2048 1023999 1021952 499M Entorno de recuperación de Windows
/dev/sda2 1024000 1228799 204800 100M Sistema EFI
/dev/sda3 1228800 1261567 32768 16M Reservado para Microsoft
/dev/sda4 1261568 409602047 408340480 194,7G Datos básicos de Microsoft
/dev/sda5 409602048 425226239 15624192 7,5G Linux swap
/dev/sda6 425226240 1953523711 1528297472 728,8G Sistema de ficheros de Linux

Disco /dev/sdb: 7,7 GiB, 7591690240 bytes, 14827520 sectores
Modelo de disco: USB Flash Drive
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes
Tipo de etiqueta de disco: dos
Identificador del disco: 0xc0555c47

Disposit. Inicio Comienzo Final Sectores Tamaño Id Tipo
/dev/sdb1 * 2048 60555263 60553216 7,7G c W95 FAT32 (LBA)

Comando lsblk

Al usar este comando entrega un esquema simple de los discos utilizados:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931,5G 0 disk
├─sda1 8:1 0 499M 0 part
├─sda2 8:2 0 100M 0 part
├─sda3 8:3 0 16M 0 part
├─sda4 8:4 0 194,7G 0 part
├─sda5 8:5 0 7,5G 0 part [SWAP]
└─sda6 8:6 0 728,8G 0 part /
sdb 8:16 1 7,7G 0 disk
└─sdb2 8:18 1 7,7G 0 part /media/usuario/Dispositivo

De ambos comandos podemos sacar la dirección donde se ubica el dispositivo externo (/dev/sdb1).

Para poder formatear el disco, necesitamos desmontarlo. Para ello escribiremos:

sudo umount /dev/sdb1

Podemos corroborar (opcional) que el disco está desmontado, escribiendo nuevamene lsblk y aparecerá algo como esto:

AME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931,5G 0 disk
├─sda1 8:1 0 499M 0 part
├─sda2 8:2 0 100M 0 part
├─sda3 8:3 0 16M 0 part
├─sda4 8:4 0 194,7G 0 part
├─sda5 8:5 0 7,5G 0 part [SWAP]
└─sda6 8:6 0 728,8G 0 part /
sdb 8:16 1 7,7G 0 disk
└─sdb2 8:18 1 7,7G 0 part

Donde se puede apreciar que la dirección sdb1 ya no está montada.

Ahora es posible formatear el disco, en este caso queremos hacer un disco que pueda ser leido por sistemas operativos de baja calidad como window$, con el código

sudo mkfs.fat -F 32 -n NOMBRE_USB /dev/sdb1

se formatea el disco con formato FAT. (El nombre debe estar en mayúsculas)

Booteando el pendrive

Una vez formateado el pendrive (y aún sin montar), copiaremos la información de un archivo iso al pendrive, para esto utilizaremos el programa dd.

dd permite copiar información de un punto a otro byte a byte.

en la terminal nos dirigimos a la carpeta donde se ubica el iso que utilizaremos, en este caso utilizaremos el iso con nombre Imagen.iso. Reconocido el archivo iso y la dirección del disco externo desmontado, utilizamos el programa dd con el código

sudo dd bs=4M if=Imagen.iso of=/dev/sdb1 status=progress oflag=sync

Esperamos que termine de cargar y tendremos nuestro pendrive booteable.

PD: al utilizar dd, el pendrive queda completamente utilizado, sin importar que el pendrive fuese más grande que el archivo iso.

This entry was posted in GNU/Linux. Bookmark the permalink.