Cómo detectar el nombre de tu pendrive en Linux sin equivocarte

  • Identificar el pendrive en Linux pasa por comprobar primero si el hardware se reconoce con herramientas como lsusb y dmesg.
  • Comandos como sg_map, sg_scan, fdisk -l y mount permiten asociar con precisión el pendrive a su dispositivo /dev y punto de montaje.
  • Las etiquetas del pendrive pueden cambiarse fácilmente desde consola usando dosfslabel o mlabel del paquete mtools.
  • Si el sistema no detecta el USB ni a bajo nivel, es probable que exista un fallo físico en el pendrive que requiera reparación especializada.

Detecta el nombre de tu pendrive en Linux sin equivocarte

Si usas Linux a diario, tarde o temprano te va a tocar averiguar cómo se llama tu pendrive dentro del sistema. Y no, no me refiero al nombre bonito que ves en el escritorio, sino al famoso /dev/sdX que necesitas para montarlo a mano, grabar una imagen o cambiarle la etiqueta sin cargarte otro disco por error.

A veces el entorno gráfico hace su trabajo y monta la memoria USB sin rechistar, pero en otras ocasiones (sobre todo en ciertos escritorios como KDE, configuraciones peculiares o situaciones de rescate) toca sacar la terminal y hacer de detective. En este artículo vamos a ver, con todo detalle, cómo detectar correctamente el nombre de tu pendrive en Linux y no equivocarte de dispositivo, además de cómo cambiarle la etiqueta y algunos trucos extra que te vendrán de lujo.

Por qué es tan importante identificar bien tu pendrive

En Linux, cada dispositivo de almacenamiento se representa con un archivo en /dev, y ahí es donde empiezan las confusiones: /dev/sda, /dev/sdb, /dev/sdc…, cada uno con sus particiones /dev/sda1, /dev/sdb1, etc. Si te equivocas y, por ejemplo, grabas una imagen sobre /dev/sda pensando que es el pendrive cuando en realidad es tu disco duro, has firmado la sentencia de muerte de tus datos.

Por eso, antes de montar nada, formatear o volcar una ISO, es fundamental identificar con total seguridad cuál es el dispositivo que corresponde a tu memoria USB. Vamos a apoyarnos en varias herramientas: desde comandos de bajo nivel como sg_map o sg_scan, hasta utilidades más amigables como mount, lsusb, fdisk -l o incluso aplicaciones gráficas como CPU-G que te ayudan a ver todo de un vistazo.

Detectar si el pendrive es reconocido por el sistema

Lo primero es averiguar si el sistema operativo, al menos, ve el dispositivo USB cuando lo conectas. Antes de meternos en nombres de /dev, comprueba que el kernel lo detecta como dispositivo físico.

Una herramienta muy cómoda para este primer paso es el comando lsusb, que sirve para listar todos los dispositivos USB que el sistema tiene conectados en ese momento. En una situación típica, tras conectar tu memoria, podrías ver algo como:

Bus 003 Device 002: ID 13fe:1d00 Kingston Technology Company Inc. DataTraveler 2.0 1GB Flash Drive
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

En este caso, lsusb lista claramente una memoria Kingston DataTraveler, con su identificador de fabricante y producto. Esto nos dice que el puerto USB y el dispositivo se están viendo, aunque el escritorio (por ejemplo, KDE) no lo monte automáticamente, cosa que sí puede estar haciendo GNOME o entornos similares.

Este mismo método te viene genial no sólo para memorias USB, sino también para modems USB, lectores de tarjetas, etc.. Si no aparece nada nuevo en lsusb al conectar el pendrive, ya sabes que el problema es de detección física o de hardware, y no de nombres de dispositivos.

Usar sg3-utils para mapear el pendrive a un dispositivo /dev

Cuando el entorno gráfico no monta el pendrive pero el sistema sí lo ve, toca pasar a herramientas algo más técnicas. Una de las formas más completas de localizar cómo identifica Linux tu memoria es usando el paquete sg3-utils, que incluye utilidades para tratar dispositivos SCSI genéricos (lo que, en la práctica, también incluye muchos USB de almacenamiento).

Primero tendrás que instalar sg3-utils si no lo tienes aún en tu distribución basada en Debian/Ubuntu:

sudo apt-get install sg3-utils

Una vez instalado, el comando sg_map te muestra el mapeo entre los dispositivos SCSI genéricos /dev/sgX y los dispositivos de bloque típicos como /dev/sda, /dev/sdb, etc. Por ejemplo:

/dev/sg0 /dev/sda
/dev/sg1 /dev/scd0
/dev/sg2 /dev/scd1

En este punto, lo interesante es repetir el procedimiento antes y después de conectar el pendrive. Primero ejecutas sg_map sin el USB, apuntas el resultado, luego conectas el pendrive y vuelves a lanzar:

sg_map
/dev/sg0 /dev/sda
/dev/sg1 /dev/scd0
/dev/sg2 /dev/scd1
/dev/sg3 /dev/sdb

Ahora puedes ver claramente que ha aparecido una entrada nueva: /dev/sg3 /dev/sdb. Comparando con la salida anterior, sabes que esa nueva línea corresponde a la memoria USB que acabas de insertar, así que el dispositivo de bloque asociado será /dev/sdb.

Si además quieres más detalles, puedes usar sg_scan -i, que amplía la información de cada dispositivo SCSI:

/dev/sg3: scsi2 channel=0 id=0 lun=0
Kingston DataTraveler 2.0 PMAP

Gracias a esta salida sabes que el /dev/sg3 es tu Kingston DataTraveler, y por el mapeo anterior ya has visto que está asociado a /dev/sdb. Queda ahora localizar su partición principal, que normalmente será /dev/sdb1, aunque lo ideal es confirmarlo con otros comandos.

Consultar los últimos mensajes del kernel con dmesg

Detectar el nombre de tu pendrive en Linux sin equivocarte

Otro recurso muy práctico para verificar cómo ha detectado el sistema tu pendrive es revisar el registro de mensajes del kernel justo después de conectarlo. Para ello se usa el clásico:

dmesg | tail

Este comando te muestra las últimas líneas del log, donde suelen aparecer mensajes del tipo:

sd 3:0:0:0: 8060928 512-byte hardware sectors (4127 MB)
sd 3:0:0:0: Write Protect is off
sdb: sdb1
sd 3:0:0:0: Attached SCSI removable disk
sd 3:0:0:0: Attached scsi generic sg3 type 0

Aquí se aprecia que el kernel ha detectado un nuevo disco y, lo más importante, una partición sdb1. Eso significa que el dispositivo que nos interesa montar o manipular normalmente será /dev/sdb1, no el disco completo /dev/sdb, salvo que vayas a hacer operaciones de muy bajo nivel (como volcar una imagen sobre todo el dispositivo).

El mensaje Attached SCSI removable disk confirma que se trata de un disco extraíble (un pendrive o similar), y la línea que menciona sg3 encaja con lo que hemos visto al usar las utilidades de sg3-utils. Cruzar esta información te da una certeza bastante alta de que no te estás equivocando de dispositivo.

Montar el pendrive manualmente en Linux

Una vez que tienes claro cuál es el nombre de la partición correspondiente a tu pendrive, el paso lógico es montarlo para poder acceder a su contenido. Siguiendo el ejemplo anterior, si hemos determinado que se trata de /dev/sdb1, bastará con crear (si no existe) un punto de montaje y usar el comando mount.

Imagina que quieres montarlo en /media/usb. Podrías hacerlo así:

sudo mkdir -p /media/usb
sudo mount /dev/sdb1 /media/usb

La sintaxis general del comando es muy sencilla: mount dispositivo ruta_donde_montar. A partir de este momento, ya puedes navegar por el contenido del pendrive entrando en /media/usb desde el gestor de archivos o la propia terminal.

En la mayoría de distribuciones modernas no tendrás que hacer esto a mano, porque los entornos de escritorio suelen detectar y montar automáticamente la memoria USB. Sin embargo, si algo falla en la capa gráfica o estás trabajando en modo consola, estos pasos te garantizan acceso a tus datos siempre que el hardware funcione correctamente.

Encontrar tu pendrive en el árbol de directorios

Puede darse el caso, muy habitual al empezar en Linux, de que conectes el pendrive y no sepas dónde narices lo ha montado el sistema. Ni idea de si está en /media, en /run/media o en alguna ruta con el nombre del usuario.

En muchos escritorios, cuando pinchas la memoria, aparece un icono en el panel lateral del gestor de archivos y, debajo, ves el nombre del dispositivo que se está usando como etiqueta. Si haces clic derecho y miras las propiedades, también suele indicarte la ruta de montaje, algo como /media/USUARIO/NOMBRE_PENDRIVE.

Si prefieres línea de comandos, hay una técnica muy simple: conecta el pendrive, espera a que se monte automáticamente y lanza el comando mount filtrando por el nombre de la carpeta asociada. Por ejemplo, si en el escritorio ves que aparece como DISK_IMG, puedes hacer:

mount | grep DISK_IMG

La salida mostrará algo del estilo:

/dev/sdb1 on /media/USUARIO/DISK_IMG type vfat (...)

De este modo sabes a la vez cuál es el dispositivo real (/dev/sdb1) y dónde está montado (/media/USUARIO/DISK_IMG). Si no tienes muchos dispositivos conectados, otra opción es simplemente ejecutar mount y revisar manualmente la lista hasta encontrar tu memoria, pero con grep acotas muchísimo la búsqueda.

Listar discos y particiones con fdisk -l

Una forma muy clásica y efectiva de localizar tu pendrive es usar fdisk -l, que lista todos los discos y particiones detectados por el sistema. Eso sí, se ejecuta como administrador, ya que muestra información de bajo nivel.

El uso típico sería:

sudo fdisk -l

La salida que obtendrás puede ser larga, pero lo importante es fijarse en el tamaño y el tipo de partición y, para un diagnóstico avanzado, la monitorización de discos y SMART. Por ejemplo, si tienes un disco duro de 500 GB y, de repente, ves un dispositivo /dev/sdd con una única partición /dev/sdd1 de 8 GB en formato FAT32, lo más probable es que ese sea tu pendrive.

Muchos usuarios se apoyan en esto cuando tienen varios discos internos y externos conectados. Mirar el tamaño, el sistema de archivos (FAT32, exFAT, NTFS, etc.) y la etiqueta ayuda a no confundirse. En ocasiones, el pendrive será la única unidad en FAT32, lo que facilita aún más la identificación.

Cambiar el nombre (etiqueta) de tu pendrive desde la terminal

Una vez que tienes localizada la partición correcta, puede interesarte ponerle un nombre identificativo para saber en todo momento qué pendrive tienes conectado. Esto es especialmente útil si manejas varias memorias USB y quieres diferenciarlas sin volverte loco.

Hay varias formas de cambiar la etiqueta en Linux. Una de las más sencillas con sistemas de archivos tipo FAT es el comando dosfslabel. Recuerda que necesitarás permisos de administrador y que es muy recomendable hacer esto con el pendrive desmontado para evitar errores.

Suponiendo que tu memoria sea /dev/sdd1, podrías renombrarla así:

sudo dosfslabel /dev/sdd1 COZORELLO

En este ejemplo, COZORELLO es el nuevo nombre del pendrive. Debes sustituir /dev/sdd1 por la partición real de tu dispositivo y, por supuesto, elegir la etiqueta que te apetezca. Eso sí, hay algunas limitaciones típicas de estos sistemas de archivos:

  • No se permiten tildes ni la mayoría de símbolos especiales.
  • El nombre suele limitarse a 11 caracteres; si te pasas, se recorta.
  • En algunos casos no se aceptan minúsculas, por lo que es más seguro usar mayúsculas para evitar problemas.

Si haces el cambio mientras el pendrive está montado, puede que el comando devuelva algún error, pero al extraer y volver a conectar la memoria lo habitual es que ya aparezca con la nueva etiqueta. Aun así, la práctica recomendada es siempre desmontar el dispositivo antes de renombrarlo.

Renombrar el pendrive usando mtools y mlabel

Otra alternativa muy interesante para cambiar la etiqueta de tu memoria USB es el paquete mtools, pensado originalmente para manejar sistemas de archivos tipo MS-DOS sin necesidad de montarlos, pero muy útil todavía para estas tareas.

Para empezar necesitarás instalarlo con tu gestor de paquetes. En Debian/Ubuntu se hace de esta forma:

sudo aptitude install mtools

Una vez instalado, hay un pequeño paso de configuración: copiar el archivo mtools.conf a tu carpeta personal y renombrarlo como .mtoolsrc para que quede oculto. Por ejemplo, si tu usuario se llama usuario:

cp /etc/mtools.conf /home/usuario/.mtoolsrc

Después, tendrás que editar el archivo .mtoolsrc con tu editor favorito, por ejemplo:

gedit /home/usuario/.mtoolsrc

En la primera línea del archivo añade la instrucción:

mtools_skip_check=1

Con esto indicas a mtools que se salte ciertas comprobaciones previas, evitando avisos innecesarios al trabajar con dispositivos extraíbles. A partir de aquí ya puedes ponerte a jugar con mlabel, que es la herramienta que gestiona las etiquetas.

Lo siguiente es asegurarte de nuevo de cuál es el dispositivo correcto. Puedes recurrir a sudo fdisk -l para localizar de nuevo, por ejemplo, que tu memoria está en /dev/sdf1. Como medida adicional de seguridad, conviene consultar la etiqueta actual antes de cambiarla:

sudo mlabel -i /dev/sdf1 -s ::

Esto mostrará algo como la etiqueta vigente en el pendrive. Una vez verificado que no te has equivocado de dispositivo, ya puedes asignar una nueva:

sudo mlabel -i /dev/sdf1 ::PenDrive

Tras ejecutar el comando, puedes volver a comprobarlo con:

sudo mlabel -i /dev/sdf1 -s ::

De esta forma te aseguras de que el nombre se ha cambiado correctamente. A partir de entonces, cada vez que el sistema monte el dispositivo, utilizará la nueva etiqueta (PenDrive en este caso), y te resultará mucho más sencillo identificarlo a simple vista tanto en el escritorio como en los listados de particiones.

Usar herramientas gráficas como CPU-G para identificar el USB

Detectar el nombre de tu pendrive en Linux sin equivocarte

Si no te apetece pelearte siempre con la línea de comandos, también existen aplicaciones gráficas que muestran de forma clara qué dispositivo es cada cosa. Un ejemplo curioso es CPU-G, una herramienta de información del sistema similar a CPU-Z, que incluye una pestaña llamada Discos en la que puedes ver los dispositivos de almacenamiento y sus particiones.

En esta pestaña se listan las distintas particiones montadas, indicando su nombre de dispositivo (/dev/sdXn), el punto de montaje, la capacidad y el uso. De un solo vistazo puedes saber qué partición corresponde al pendrive y dónde está montada, lo que reduce mucho el riesgo de confusión al grabar imágenes o formatear.

Además de esto, CPU-G ofrece información adicional, como el estado de la batería en portátiles (voltaje, carga, diseño, corriente, etc.), datos que permite saber si se está deteriorando y cuándo conviene ir pensando en reemplazarla. En equipos de escritorio, donde no hay batería, las últimas versiones han corregido errores para que, simplemente, no aparezca la pestaña correspondiente y no se produzcan fallos.

Del mismo modo, se han solucionado problemas al obtener la versión de Xorg en ciertos sistemas, mejorando la estabilidad general de la aplicación. Para instalar CPU-G en Ubuntu puedes usar un PPA específico:

sudo add-apt-repository ppa:atareao/atareao
sudo apt update
sudo apt install cpu-g

Una vez instalado, basta con abrirlo y revisar la pestaña de Discos para localizar visualmente tu pendrive y ver su ruta real en /dev sin necesidad de recordar comandos.

Situaciones reales: cuando el pendrive no aparece

En la práctica, uno de los escenarios más frecuentes es el del usuario que llega de Windows, trae un archivo de texto con enlaces en un pendrive, lo conecta en su nuevo equipo con Linux y, de repente, no ve la memoria por ningún lado.

En distribuciones como POP!_OS en equipos System76, el funcionamiento general debería ser que el pendrive se monta automáticamente y aparezca en el panel lateral del gestor de archivos. Pero si no lo ves, tienes varios frentes de comprobación: lsusb para saber si el hardware se reconoce, dmesg | tail para ver qué dice el kernel justo al conectarlo, y fdisk -l o lsblk para comprobar si se ha detectado un nuevo dispositivo de bloque; y si necesitas más referencias, consulta herramientas esenciales para diagnóstico.

Si el sistema reconoce el USB pero no está montado, puedes montarlo manualmente con los pasos que hemos visto, eligiendo un punto de montaje como /media/usb o similar. Si no aparece ni en lsusb ni en los mensajes del kernel, entonces el problema apunta más a un fallo físico en la memoria o en el puerto USB que a Linux en sí.

Cuando el pendrive está físicamente dañado

No siempre que un pendrive falla es culpa del sistema operativo. A veces, sencillamente, el dispositivo tiene un problema físico. Un ejemplo típico es el de una memoria USB 3.0 que no da ninguna señal de vida al conectarla y cuyo contenido hay que recuperar a toda costa.

En estos casos, un analista forense o técnico especializado suele comenzar desmontando físicamente el pendrive, retirando la carcasa con mucho cuidado (a menudo vienen pegados con resinas epoxi) hasta acceder a la placa interna y al conector USB.

Al examinar la placa se pueden encontrar sorpresas desagradables, como que los pines de conexión del bus USB 3.0 (los azules) estén literalmente rotos o desoldados. Si las piezas que deberían estar unidas físicamente están separadas, el dispositivo es incapaz de establecer comunicación con el puerto USB del ordenador.

En un escenario así, la única forma razonable de intentar recuperar la información es reparar el hardware: volver a soldar las pistas, sustituir el conector o, en casos extremos, trasplantar el chip de memoria a otra placa compatible. Esto ya se sale del uso normal que pueda darle un usuario doméstico y entra de lleno en el terreno del laboratorio y la electrónica fina.

Por tanto, si has probado todas las herramientas de software (lsusb, dmesg, fdisk, montajes manuales, etc.) y el pendrive sigue como si no existiera, hay bastantes papeletas de que el fallo sea físico y no lógico, por lo que tal vez sea buena idea recurrir a un profesional si los datos son realmente importantes.

Como has visto, Linux ofrece un abanico bastante amplio de herramientas para identificar sin equivocarte el nombre de tu pendrive, comprobar si el sistema lo reconoce, montarlo manualmente y hasta cambiarle la etiqueta para tener todo mejor organizado. Desde comandos como sg_map, sg_scan, dmesg, lsusb, fdisk -l, mount o mlabel, hasta utilidades gráficas como CPU-G, tienes recursos de sobra —incluyendo guías de clonado y restauración de discos y usbs— para enfrentarte tanto a un simple pendrive rebelde como a configuraciones con varios discos y memorias en paralelo; y cuando ni siquiera así aparece, es cuando conviene empezar a sospechar que el problema está ya en el propio hardware de la memoria y no en tu Linux.

USB booteable
Artículo relacionado:
Cómo crear un USB booteable desde la línea de comandos en cualquier sistema

Add as preferred source