En este artículo aprenderemos a formatear una memoria sd card desde ubuntu, primero veremos algunas definiciones y los programas que usaremos, luego realizaremos el paso paso de como realizar este formateo con comandos desde la terminal de ubuntu.
Programas y materiales
- Ubuntu 2022
- Memoria SD card de 32Gb
Definiciones
Antes de iniciar, debemos entender los siguientes conceptos sobre el tema.
- eMMC: "embedded MultiMediaCard" es un tipo de almacenamiento flash que se utiliza en muchos dispositivos integrados. Funciona de manera similar a una tarjeta SD, pero está integrado directamente en la placa del dispositivo.
- MMC: "multiMediaCard" es un estándar de tarjeta de memoria flash que incluye tarjetas SD (Secure Digital). Sin embargo, en el contexto de dispositivos Linux, cuando ves mmcblk0, generalmente se está haciendo referencia a un dispositivo de almacenamiento interno tipo eMMC.
- lsblk: "list block devices" listar dispositivos de bloques, se utiliza para listar información acerca de los dispositivos de bloques, como discos duros y particiones.
- fdisk: se usa para gestionar las tablas de particiones en discos duros, puedes realizar tareas como crear, eliminar, modificar y mostrar información sobre particiones en un disco.
- p: listar particiones
- d: eliminar particiones
- w: escribir los cambios realizados
- mmcblk0: es un nombre de dispositivo que se refiere a una tarjeta de memoria flash embebida, como una tarjeta de memoria SD o eMMC. Este nombre de dispositivo se utiliza para acceder a la tarjeta de memoria y puede estar asociado con la unidad de almacenamiento en el sistema.
- mmcblk0p1: es una partición en una tarjeta de memoria flash embebida. El nombre "mmcblk0" se refiere al dispositivo de almacenamiento en sí, mientras que "p1" indica la primera partición en ese dispositivo.
- mkfs: se utiliza para crear un sistema de archivos en un dispositivo de almacenamiento. El término "mkfs" significa "make file system" (crear sistema de archivos). Este comando se utiliza para formatear dispositivos de almacenamiento, como discos duros, particiones, tarjetas SD, unidades flash USB, etc., con un sistema de archivos específico.
Formatear sd Card desde Ubuntu
Para realizar el formateo, debemos identificar la SD card en el sistema de archivos de linux para ello, realizamos los siguientes pasos:
Listar y desmontar particiones
Revisamos con lsblk que SD Card están conectadas
lsblk
El resultado será:
mmcblk0 179:0 0 29,1G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /media/ce/bootfs
└─mmcblk0p2 179:2 0 28,9G 0 part /media/ce/rootfs
Donde podemos ver que tenemos la SD con mmcblk0 y esta a su vez tiene dos particiones montadas, mmcblk0p1 y mmcblk0p2.
Lo que vamos a hacer es desmontar estas particiones, si la SD solo tuviese una sola partición, es la única que desmontamos.
Para desmontar las particiones usamos las siguientes instrucciones:
sudo umount /dev/mmcblk0p1
sudo umount /dev/mmcblk0p2
Volvemos a revisar con `lsblk` donde no están montadas las particiones
mmcblk0 179:0 0 29,1G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part
└─mmcblk0p2 179:2 0 28,9G 0 part
Eliminar particiones
Para eliminar las tablas de partición de la SD, debemos ingresar con el comando fdisk, a la SD para realizar los cambos en la particiones de la SD:
sudo fdisk /dev/mmcblk0
Respuesta
Bienvenido a fdisk (util-linux 2.37.2).
Los cambios solo permanecerán en la memoria, hasta que decida escribirlos.
Tenga cuidado antes de utilizar la orden de escritura.
Listamos las particiones del disco de la siguiente forma:
Orden (m para obtener ayuda): p
Respuesta
Disco /dev/mmcblk0: 29,12 GiB, 31267487744 bytes, 61069312 sectores
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: 0x0f77a18a
Dispositivo Inicio Comienzo Final Sectores Tamaño Id Tipo
/dev/mmcblk0p1 8192 532479 524288 256M c W95 FAT32 (LBA)
/dev/mmcblk0p2 532480 61069311 60536832 28,9G 83 Linux
Ahora que sabemos cuantas particiones tiene la SD y que números son, procedemos a eliminarlas de la siguiente forma, escribimos (d) y luego el número de partición a eliminar.
Orden (m para obtener ayuda): d
Número de partición (1,2, valor predeterminado 2): 2
Se ha borrado la partición 2.
Realizados los pasos para eliminar las particiones, procedemos a escribimos los cambios con (w) como se muestra a continuación.
Orden (m para obtener ayuda): w
Se ha modificado la tabla de particiones.
Llamando a ioctl() para volver a leer la tabla de particiones.
Se están sincronizando los discos.
Completado lo anterior, cerramos fdisk.
Volvemos a listar los dicos y la sd fdisk, donde ya podemos ver que solo esta la SD sin particiones:
mmcblk0 179:0 0 29,1G 0 disk
Formatear SD
Formateamos la SD con el siguiente comando
sudo mkfs -t ext4 /dev/mmcblk0
Resultado
mke2fs 1.46.5 (30-Dec-2021)
Se ha encontrado una tabla de particiones dos en /dev/mmcblk0
¿Continuar de todas formas? (s,N) s
Descartando los bloques del dispositivo: hecho
Se está creando un sistema de ficheros con 7633664 bloques de 4k y 1908736 nodos-i
UUID del sistema de ficheros: 997083cc-b172-4c83-a1ba-e1ee19572a1f
Respaldos del superbloque guardados en los bloques:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Reservando las tablas de grupo: hecho
Escribiendo las tablas de nodos-i: hecho
Creando el fichero de transacciones (32768 bloques): hecho
Escribiendo superbloques y la información contable del sistema de archivos: 0/hecho
Por ultimo montamos la unidad nueva
sudo mkdir /mnt/mmcblk0
sudo mount /dev/mmcblk0 /mnt/mmcblk0