Comandos para identificar y gestionar la tarjeta SD en Linux

  • Linux identifica la tarjeta SD como un dispositivo de bloque en /dev y la monta en rutas como /media o /mnt, accesibles mediante comandos como lsblk y df.
  • Herramientas como Hardinfo, lshw, dmidecode, lsusb y lspci permiten obtener información detallada del hardware y diagnosticar problemas de detección.
  • Utilidades específicas de almacenamiento y pruebas como fdisk, lsscsi, pydf, hdparm y F3 ayudan a verificar el estado de la tarjeta SD y su fiabilidad.
  • La combinación de comandos de sistema, recuperación y acceso remoto (Samba, SFTP, SSH) facilita trabajar con tarjetas SD en Linux desde distintos entornos.

Comandos para identificar la tarjeta SD conectada en Linux

Si vienes de Windows y te acabas de topar con Linux, es bastante habitual que te preguntes dónde demonios está tu tarjeta SD. No ves tus típicas unidades C: y D:, no encuentras nada en /mnt y la ruta /media te suena a chino. Abres un emulador, RetroArch, o cualquier otro programa que te pide elegir “Cargar contenido” y te quedas mirando la pantalla pensando: ¿pero dónde está mi tarjeta SD en este sistema tan raro?

Además, la cosa se complica cuando empiezas a ver rutas kilométricas tipo /var/.local/loquesea/otracarpeta/mascarpetas, directorios ocultos que no aparecen en el explorador de archivos salvo que los escribas a mano y comandos que parecen diseñados para asustar a cualquiera. Tranquilo: debajo de toda esa capa de nombres raros, Linux tiene una lógica muy clara para identificar, montar y gestionar la tarjeta SD, y con unos cuantos comandos bien escogidos podrás localizarla, revisarla, probar su estado, recuperar sus datos e incluso verificar si la memoria es fiable.

Cómo identifica Linux una tarjeta SD y por qué no ves C: ni D:

En Linux no existen letras de unidad como en Windows; todo se gestiona como archivos y directorios bajo la raíz /. Cada dispositivo de almacenamiento (discos duros, SSD, USB, tarjetas SD…) se presenta como un archivo especial dentro de /dev/, y luego se “monta” en un punto del sistema de archivos, que suele estar en /media o /run/media según la distribución.

Cuando insertas una tarjeta SD, el kernel detecta un nuevo dispositivo de bloque, generalmente con nombre /dev/sdX (donde X es una letra: a, b, c…) o en algunos equipos integrados como /dev/mmcblk0. Cada partición de esa tarjeta se representa como /dev/sdX1, /dev/sdX2, etc. y, si la distribución lo tiene configurado, se monta automáticamente en una ruta tipo /media/USUARIO/ETIQUETA.

Es aquí donde empiezan las dudas: muchos emuladores, gestores de archivos o programas antiguos no muestran directamente /media, o estás acostumbrado a ver “Disco extraíble” y ahora todo son nombres en /dev y rutas interminables. Por eso es fundamental conocer los comandos clave para listar el hardware de almacenamiento y localizar la dichosa tarjeta SD.

SD Card

Comandos básicos para localizar la tarjeta SD conectada

El primer paso para dejar de pelearte con rutas absurdas es aprender a preguntar al sistema qué dispositivos tiene conectados. Linux ofrece varias herramientas de consola que enumeran discos, particiones y puntos de montaje de forma bastante clara una vez les pillas el truco.

El comando más cómodo en la mayoría de distribuciones es lsblk. Ejecuta en la terminal:

lsblk

Con este comando verás una tabla con nombres como sda, sdb, sdc, sus particiones (sdb1, sdb2…) y columnas con el tipo de dispositivo, tamaño y, muy importante, el PUNTO DE MONTAJE. La tarjeta SD suele aparecer como el dispositivo más pequeño “extra” respecto a tu disco duro principal. Por ejemplo, si tienes un SSD interno sda de 512 GB y enchufas una SD de 16 GB, es probable que la veas como sdb con 14-16G de tamaño.

Si quieres ver directamente todos los puntos de montaje y sistemas de archivos, puedes usar:

df -h

Este comando muestra dónde están montados los dispositivos, con rutas como /media/USUARIO/NOMBRE_SD. Es especialmente útil cuando el entorno gráfico ha montado la tarjeta de forma automática y solo necesitas saber qué ruta tienes que seleccionar en RetroArch o cualquier otra aplicación para llegar a tus ROMs o archivos.

Otra forma clásica de listar las particiones disponibles es:

sudo fdisk -l

Este comando enseña todas las tablas de particiones de los discos detectados. Verás algo como /dev/sdb: 14.8 GiB, tipo de partición, sistema de archivos, etc. Es más verboso que lsblk, pero muy útil cuando sospechas que la tarjeta está dañada, no tiene tabla de particiones o quieres ver detalles de bajo nivel.

En algunos casos (sobre todo en portátiles o placas tipo Raspberry Pi) tu tarjeta puede aparecer como:

/dev/mmcblk0, /dev/mmcblk1…

con particiones /dev/mmcblk0p1, /dev/mmcblk0p2, etc. El comando lsblk también detecta estos dispositivos, así que es la opción más amigable para el día a día.

Dónde se monta la tarjeta SD y cómo llegar a ella desde aplicaciones

Una vez identificada la tarjeta, la duda siguiente suele ser: “vale, sé que es /dev/sdb1, pero ¿dónde están mis archivos exactamente dentro del sistema de directorios?”. Aquí entran en juego los puntos de montaje.

En escritorios modernos (Ubuntu, Debian, Mint, etc.), lo normal es que el sistema monte las tarjetas SD de forma automática en:

/media/TU_USUARIO/ETIQUETA_DE_LA_TARJETA

Si no estás seguro, combínalo con:

lsblk -f

Esta variante muestra también la etiqueta (LABEL) y el UUID de cada partición, y la columna MOUNTPOINT te dice el directorio exacto donde está montada. Esa es la ruta que tienes que buscar luego desde RetroArch, un gestor de archivos o cualquier programa que te pida seleccionar una carpeta. En lugar de “Unidad D:”, pensarás “/media/usuario/Mi_SD”.

Si por lo que sea tu entorno no monta automáticamente la tarjeta, tendrás que hacerlo de forma manual. Un flujo típico sería:

sudo mkdir -p /mnt/misds
sudo mount /dev/sdb1 /mnt/misds

Tras eso, podrás navegar a /mnt/misds para acceder a los archivos. Si tu tarjeta SD lleva una partición con otro sistema de archivos (por ejemplo exFAT), puede que necesites instalar antes los controladores adecuados (por ejemplo, exfat-fuse o paquetes similares según la distribución).

Respecto a los directorios “ocultos” como .local que no ves en el explorador de archivos, recuerda que en Linux todo lo que empieza por un punto se considera oculto. Si tu explorador está configurado para ocultarlos, no verás /var/.local aunque exista. Es normal en Linux manejar un montón de rutas largas bajo /var, /home/.config, /usr/local, etc., pero tu tarjeta SD no tiene por qué estar enterrada ahí: casi siempre estará en algún subdirectorio de /media o /mnt.

linux sd card

Ver información detallada del sistema y del hardware (incluida la SD)

Si ya te manejas con lo básico y quieres profundizar más, Linux dispone de herramientas muy completas para inspeccionar el hardware y el sistema. Son especialmente útiles cuando necesitas soporte en foros, diagnosticar problemas de detección de la tarjeta SD o simplemente conocer a fondo tu equipo.

Una opción gráfica muy cómoda es Hardinfo, una aplicación disponible en la mayoría de repositorios de distribuciones GNU/Linux. Puedes instalarla desde el centro de software, con Synaptic o vía terminal con el gestor de paquetes de tu sistema. Una vez instalada, la lanzas desde el menú de aplicaciones o ejecutando hardinfo en una terminal.

Hardinfo organiza la información en cuatro bloques principales: Equipo, Dispositivos, Red y Benchmarks. En la sección de Equipo verás datos sobre el sistema operativo, versión del kernel, módulos cargados, sistemas de archivos, usuarios, compiladores, variables de entorno y otros muchos detalles que suelen pedirte cuando preguntas en un foro técnico.

En la pestaña Dispositivos encontrarás procesador, memoria RAM, dispositivos PCI y USB, almacenamiento (discos y controladoras), sensores, batería, dispositivos de entrada, placa base y más. Tu tarjeta SD aparecerá habitualmente en el apartado de almacenamiento, mostrándote el modelo detectado por el kernel y otros parámetros.

Por último, Hardinfo también incluye una sección de benchmarks que te permite estresar el sistema para medir rendimientos y temperaturas, algo útil si sospechas de una tarjeta o un lector que se comportan de forma inestable bajo carga.

Comandos de consola para conocer software, kernel y arquitectura

Más allá de saber dónde está la tarjeta SD, en muchas ocasiones necesitas datos del sistema para resolver problemas de compatibilidad o pedir ayuda. Aquí tienes algunos comandos clave relacionados con software y entorno:

Para ver la versión del kernel en uso:

uname -r

Si lo que quieres es conocer la arquitectura de tu sistema (por ejemplo, para saber qué paquetes descargar):

uname -m

Para comprobar el nombre y versión de la distribución (especialmente útil al seguir tutoriales):

lsb_release -a (en distros que lo incluyan) o leer el contenido de /etc/os-release.

Para ver el usuario actual con el que estás trabajando:

whoami

Y para mostrar el nombre de la máquina (hostname):

hostname

Si alguna guía te pide listar los módulos cargados en el kernel, especialmente cuando hay problemas con controladores de almacenamiento o USB, usa:

lsmod

En el contexto del almacenamiento, también es relevante conocer la configuración de la memoria de intercambio (swap), que puedes consultar con:

swapon –show

Y si necesitas ver el UUID de todas las particiones (identificadores únicos que algunas distribuciones usan en /etc/fstab para montar discos y tarjetas SD de forma persistente):

blkid

linux sd card

Comandos para listar y gestionar el hardware

Cuando ya has comprobado que tu tarjeta SD “existe” pero sospechas de problemas de hardware, hay comandos que te dan una visión panorámica del equipo. lshw es uno de los más completos:

sudo lshw | less

Este comando lista todo el hardware en un formato muy detallado. La salida es larga, por eso se suele paginar con less o redirigir a un archivo de texto para revisarla con calma:

sudo lshw > hardware.txt

Si quieres una salida más compacta, puedes pasarle opciones como -short:

sudo lshw -short

Otra herramienta muy habitual para describir el hardware expuesto por la BIOS/UEFI es dmidecode:

sudo dmidecode -q >> hardware.txt

La información que ofrece dmidecode es extensa y a veces algo críptica, pero te puede ayudar a identificar el modelo de placa, controladores y otros elementos que influyen en cómo se detecta la tarjeta SD.

Herramientas específicas para dispositivos de almacenamiento

Para centrarnos en discos, SSD, USB y tarjetas SD, además de lsblk, df y fdisk, hay utilidades adicionales muy prácticas. lsscsi lista dispositivos SCSI/SATA (entre ellos muchos lectores y tarjetas SD):

sudo apt install lsscsi
lsscsi

Con ello verás una lista de dispositivos de almacenamiento y unidades ópticas. Tu tarjeta SD puede aparecer ahí si el lector la expone como un dispositivo SCSI/SATA hacia el sistema.

Para ver el uso del espacio de forma amigable, puedes usar pydf, una versión mejorada de df en Python que muestra información con colores:

sudo apt install pydf
pydf

Otra herramienta avanzada es hdparm, que permite consultar y ajustar parámetros de discos. Es potente y conviene usarla con cuidado, pero para solo ver información puedes ejecutar:

sudo hdparm -I /dev/sdX

reemplazando sdX por el dispositivo que corresponda a tu tarjeta. Obtendrás datos sobre el modelo, capacidades, modos de transferencia y más. No es imprescindible para el día a día, pero viene bien saber que existe.

Comprobar memoria RAM, dispositivos PCI y USB

Aunque no tenga que ver directamente con la tarjeta SD, la salud general del sistema influye en cómo se comportan los dispositivos de almacenamiento. Para revisar rápidamente la memoria RAM disponible y el uso de la swap, utiliza:

free -m

Esto te mostrará la memoria total, usada, libre y la swap en megabytes. Útil si sospechas que el sistema se queda sin recursos mientras copias archivos grandes a la SD.

Para listar dispositivos PCI (tarjetas de red, controladoras, gráficas, etc.):

lspci

Y para revisar dispositivos USB conectados, incluidos muchos lectores de tarjetas SD externos:

lsusb

Con lsusb puedes confirmar rápidamente si el lector USB detecta algo. Si al conectar la tarjeta no aparece ningún cambio en lsusb ni en dmesg (lo veremos ahora), es posible que el lector o la propia tarjeta estén dañados.

Tarjeta SD que no se detecta: uso de dmesg y casos de corrupción

Un problema muy frecuente es desconectar la tarjeta mientras se está escribiendo sobre ella, por ejemplo usando dd para llenarla de ceros o crear una imagen. Si la extraes en mitad del proceso, puedes acabar con una tarjeta que ya no se monta ni aparece en lsblk o fdisk. Por eso conviene saber cómo proteger un USB o una tarjeta SD contra la escritura.

Cuando esto ocurre, lo primero es consultar los mensajes del kernel con dmesg. En lugar de buscar un archivo /var/log/dmesg (que en muchas distribuciones no existe como fichero independiente), basta con ejecutar en la terminal:

dmesg | tail -n 50

Justo después de insertar la tarjeta SD. Ahí verás si el kernel ha detectado algún error al intentar leerla: mensajes de I/O error, problemas de la controladora, avisos de que no se ha podido leer la tabla de particiones, etc.

Si dmesg no muestra absolutamente nada nuevo al insertar la tarjeta, pero sí detecta otras tarjetas o USB, es probable que la tarjeta esté físicamente dañada y no haya mucho que hacer salvo hacer pruebas con otros lectores y, si sigue igual, darla por perdida.

Cuando la tarjeta sí aparece en dmesg, pero no en fdisk -l o lsblk, puedes intentar con herramientas de bajo nivel (por ejemplo, forzar la lectura con ddrescue) para intentar clonar lo que se pueda a otro soporte, aunque si la electrónica interna se ha corrompido, las opciones son muy limitadas.

Recuperación de datos de una tarjeta SD en Linux

Si el problema no es que la tarjeta haya “muerto” sino que has perdido archivos, carpetas han desaparecido o el sistema de archivos se ha estropeado, todavía tienes bastantes opciones desde Linux para recuperar información.

Lo primero es no entrar en pánico: cada escritura nueva sobre la tarjeta reduce tus posibilidades de éxito. Lo ideal es dejar de usarla inmediatamente y, si es posible, hacer una copia completa de la tarjeta a un archivo de imagen con dd o herramientas similares (por ejemplo, ddrescue) y trabajar sobre esa imagen. Si piensas reutilizarla, quizá debas formatear la tarjeta SD tras recuperar los datos.

Antes de iniciar la recuperación, asegúrate de que la tarjeta está montada (o al menos visible como dispositivo en /dev). Para comprobar si la distribución la reconoce, ya sabes: lsblk, fdisk -l y dmesg son tus aliados.

Hay varios métodos y herramientas para recuperar datos, desde utilidades de consola hasta aplicaciones con interfaz gráfica. En Linux, muchas de las soluciones de recuperación son de terminal, a diferencia de Windows, donde predominan las herramientas gráficas. No obstante, la lógica suele ser la misma: escanear el dispositivo en bruto, buscar firmas de archivos, reconstruir estructuras y copiar a otro soporte.

Además, siempre es recomendable extraer primero toda la información que aún sea accesible de forma normal (copiar archivos que todavía se vean, hacer imágenes, etc.) antes de comenzar un proceso de recuperación profundo, ya que este puede estresar más la tarjeta y acelerar un posible fallo total.

Verificar si una tarjeta SD o pendrive es falso o defectuoso (F3)

Otro escenario que quizá te suene, sobre todo si has comprado tarjetas baratas en sitios tipo eBay, es sospechar que la capacidad que anuncian no es real o que se corrompen los datos a la mínima. Para esto existe una herramienta fantástica para Linux llamada F3 (Fight Flash Fraud).

F3 está compuesta principalmente por dos binarios: f3write y f3read. La idea es sencilla pero muy efectiva: f3write llena el sistema de archivos de la tarjeta con archivos de 1 GB llamados NNNN.fff (0001.fff, 0002.fff…) hasta ocupar todo el espacio libre; luego, f3read verifica el contenido de esos archivos. Si todo se valida correctamente, la memoria tiene la capacidad real que anuncia y no corrompe datos. Si hay sectores corruptos o capacidad falsa, saldrá a la luz.

Para usar F3, primero tienes que descargar el código fuente desde su web y compilarlo. Por ejemplo, puedes descargar el archivo zip en /tmp, luego crear un directorio de trabajo:

mkdir -p ~/src/f3
cd ~/src/f3
unzip /tmp/f3v2_1.zip

Asegúrate de tener instalado el paquete de compilación (por ejemplo build-essential en Debian/Ubuntu) y compila:

make linux

En pocos segundos tendrás en el directorio los binarios f3write y f3read. Ahora sí, con la tarjeta SD montada (por ejemplo en /media/10DF-6679/), ejecutas:

./f3write /media/10DF-6679/

Verás cómo va creando archivos 0001.fff, 0002.fff, etc., y al final te indicará el espacio libre y la velocidad media de escritura. Cuando termine, toca validar con:

./f3read /media/10DF-6679/

La salida mostrará, para cada archivo, cuántos sectores están correctos, corruptos, ligeramente modificados u sobrescritos, así como un resumen final con la cantidad de datos válidos y perdidos. Si ves que todo es OK y no hay sectores corruptos ni datos perdidos, puedes estar bastante tranquilo con esa tarjeta para llevártela de viaje y confiar en que no es “basura digital”.

Acceder a la SD de una Raspberry Pi u otro dispositivo desde Windows

Si usas una Raspberry Pi u otro miniPC con Linux y trabajas normalmente en Windows, puede que quieras manipular archivos en la tarjeta SD sin estar arrancando y apagando equipos cada dos por tres. Aquí tienes varias opciones bastante cómodas.

La más flexible es habilitar algún servicio remoto en la Raspberry (o equipo Linux) y acceder por red desde Windows. Algunas posibilidades:

– Montar carpetas compartidas con Samba, para que aparezcan como recursos de red en el Explorador de archivos de Windows.
– Utilizar SFTP (por ejemplo con WinSCP) para conectarte al servidor SSH del dispositivo y arrastrar/soltar archivos.
– Conectarte por SSH si lo que quieres es editar configuraciones y trabajar directamente en la terminal.

Si prefieres evitar tocar configuraciones de red, otra opción es usar un LiveUSB de Linux en tu PC con Windows. Arrancas desde el USB, la distribución detectará la tarjeta SD de la Raspberry, y podrás trabajar sobre ella con todas las herramientas habituales de Linux. Si necesitas crear el USB, puedes aprender a crear un USB booteable desde la terminal.

La tercera vía es instalar una máquina virtual con Linux (VirtualBox, VMware, etc.) en Windows y pasarle la tarjeta SD como dispositivo USB. Así la VM la verá como un disco más y podrás montar y modificar su contenido sin tener que apagar tu sistema principal.

Comandos relacionados con gráficos, sonido y red (para un diagnóstico más completo)

Aunque a primera vista parezca que estas áreas no tienen relación con tu tarjeta SD, en muchas ocasiones problemas de rendimiento, drivers o cuelgues durante copias de archivos se deben a aspectos más generales del sistema, como la tarjeta gráfica, el audio o la configuración de red.

Para listar las tarjetas de vídeo PCI/PCIe puedes usar:

lspci | grep -i vga

Si quieres comprobar el rendimiento gráfico, existe la clásica prueba de engranajes (glxgears), que puedes lanzar durante un tiempo limitado con:

timeout 60 glxgears

Durante 60 segundos verás una ventana con la animación de tres engranajes y, en la terminal, los fotogramas por segundo (FPS) promedio. No es un benchmark serio, pero sirve para comprobar de forma rápida que el servidor gráfico está respondiendo.

Para ver la resolución y frecuencia actual de tu pantalla, puedes ejecutar:

xrandr

Este comando también lista todas las resoluciones soportadas por tus monitores, algo útil si vas a usar el equipo como centro multimedia desde el que acceder al contenido de la SD en un televisor o pantalla externa.

En cuanto al sonido, Linux ofrece utilidades para probar los altavoces en distintas configuraciones: mono, estéreo o sistemas 5.1. Por ejemplo, con herramientas como speaker-test puedes lanzar pruebas para verificar la disposición de canales y ajustar volúmenes y conexiones mientras escuchas los sonidos de prueba.

En el apartado de red, puedes listar tarjetas alámbricas PCI con:

lspci | grep -i ethernet

y las tarjetas inalámbricas con:

lspci | grep -i wireless o similar, según el caso.

Si necesitas ver la tabla de enrutamiento para entender por qué tu equipo no accede correctamente a recursos de red (por ejemplo, una NAS donde guardas copias de la SD), puedes usar:

ip route

Todo este conjunto de comandos, aunque no estén centrados en la tarjeta SD, te ayuda a tener un diagnóstico global del sistema, lo cual es clave cuando sospechas de problemas de estabilidad o cuelgues durante operaciones intensivas de copia o recuperación de datos.

Después de recorrer todo este abanico de herramientas y comandos, se ve más claro que lidiar con una tarjeta SD en Linux no es cuestión de magia negra, sino de entender dónde se ven los dispositivos (/dev), cómo se montan en el sistema de archivos (/media, /mnt), qué utilidades tienes para ver el estado del hardware (lsblk, fdisk, lshw, dmidecode, lsusb, lspci), cómo recuperar datos cuando algo se tuerce y, si encima sospechas de memorias falsas, cómo ponerlas a prueba con F3; con ese conjunto de conocimientos, moverse por rutas largas, manejar RetroArch o revisar por qué no aparece tu SD deja de ser desesperante y pasa a ser simplemente una cuestión de aplicar el comando adecuado en el momento justo.

tarjeta sd
Artículo relacionado:
Cómo formatear una tarjeta SD