En mi último post hablé de cómo usar una Raspberry Pi Zero para monitorizar un SAI Salicru con NUT y Telegram, evitando esos molestos unsafe shutdowns que tanto dañan los SSD o las SD cards. Pues bien, todo empezó porque tenía un SSD Kingston A400 240GB conectado por USB 3.0 en mi Raspberry Pi 5, y quería saber si estaba sano, rápido y bien configurado.
Hoy os cuento el proceso paso a paso que usé para chequearlo todo: desde identificar el adaptador USB-SATA hasta medir velocidad real y ver la salud interna del disco con SMART. Estos comandos son oro puro para cualquiera que use boot desde SSD USB, NAS casero, backups o simplemente quiera exprimir su Pi sin sorpresas.
¿Por qué molestarse en hacer esto?
- Saber si tu SSD (o HDD) está sano: Evitas perder datos por fallos silenciosos (bad blocks, sectores reasignados, desgaste excesivo).
- Medir rendimiento real: Muchos enclosures USB baratos limitan a 30-50 MB/s o caen a USB 2.0. Con UASP bien configurado, un SSD SATA puede volar a 300-400 MB/s en Pi 5.
- Detectar problemas de hardware: Chipset malo (Realtek vs ASMedia), alimentación inestable, cables defectuosos o quirks del kernel.
- Beneficios prácticos: Boot mucho más rápido que microSD, menos corrupción de filesystem, alertas tempranas si la vida del SSD baja, y tranquilidad total (sobre todo si usas el Pi 24/7).
Los comandos que usé (y qué hace cada uno)
- Lista todos los dispositivos USB conectados.
En mi caso:
vigilante@raspberrypi:~ $ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 003: ID 04d9:0006 Holtek Semiconductor, Inc. Wired Keyboard (78/79 key) [RPI Wired Keyboard 5]
Bus 001 Device 004: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 002: ID 14b0:0206 StarTech.com Ltd. SA400S37240G
→ Identifica el VID:PID del adaptador (14b0:0206 es StarTech con chipset ASMedia ASM105x, de los mejores). Si ves Realtek (0bda:xxxx), ojo, pueden ser más problemáticos.
- Muestra el árbol USB con drivers y velocidades.
vigilante@raspberrypi:~ $ lsusb -t
/: Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/2p, 480M
|__ Port 002: Dev 002, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 001: Dev 003, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 001: Dev 003, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 002: Dev 004, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
/: Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/: Bus 003.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/2p, 480M
/: Bus 004.Port 001: Dev 001, Class=root_hub, Driver=xhci-hcd/1p, 5000M
|__ Port 001: Dev 002, If 0, Class=Mass Storage, Driver=uas, 5000M
→ Driver=uas y 5000M (USB 3.0) → ¡UASP activo! Esto es lo que queremos: bajo uso CPU, mejor rendimiento secuencial. Si ves «usb-storage» en vez de «uas», es más lento y usa más CPU.
- Instalar herramientas (si no las tienes):
sudo apt update
sudo apt install hdparm smartmontools
hdparm para tests de velocidad, smartmontools para SMART (salud del disco).
- Identifica el disco:
vigilante@raspberrypi:~ $ lsblk -o NAME,SIZE,TYPE,MODEL
NAME SIZE TYPE MODEL
loop0 2G loop
sda 223,6G disk KINGSTON SA400S37240G
├─sda1 512M part
└─sda2 223,1G part
zram0 2G disk
vigilante@raspberrypi:~ $ sudo fdisk -l | grep -i disk
Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram1: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram2: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram3: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram4: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram5: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram6: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram7: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram8: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram9: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram10: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram11: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram12: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram13: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram14: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/ram15: 4 MiB, 4194304 bytes, 8192 sectors
Disk /dev/loop0: 2 GiB, 2147483648 bytes, 4194304 sectors
Disk /dev/sda: 223,57 GiB, 240057409536 bytes, 468862128 sectors
Disk model: SA400S37240G
Disklabel type: dos
Disk identifier: 0xc7a2c28e
Disk /dev/zram0: 2 GiB, 2147483648 bytes, 524288 sectors
→ Confirma que /dev/sda es tu SSD (no la SD de boot ni zram).
- Test de velocidad de lectura real (sin caché).
Mi resultado:
vigilante@raspberrypi:~ $ sudo hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 1026 MB in 3.02 seconds = 339.63 MB/sec
→ Brutal para un SSD SATA en USB 3.0 en Pi 5. El Kingston A400 nativo hace ~500 MB/s, pero con overhead USB + enclosure, 340 MB/s es top. Si sale <100 MB/s → problema (cable, chipset, alimentación, o sin UASP).
- Muestra TODA la info SMART (salud interna).
Lo más interesante de mi disco:
vigilante@raspberrypi:~ $ sudo smartctl -a -d sat /dev/sda
smartctl 7.4 2023-08-01 r5530 [aarch64-linux-6.12.62+rpt-rpi-2712] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: Phison Driven SSDs
Device Model: KINGSTON SA400S37240G
Serial Number: 50026B7785211E3B
LU WWN Device Id: 5 0026b7 785211e3b
Firmware Version: SBFKB1H5
User Capacity: 240.057.409.536 bytes [240 GB]
Sector Size: 512 bytes logical/physical
Rotation Rate: Solid State Device
TRIM Command: Available
Device is: In smartctl database 7.3/5528
ATA Version is: ACS-3 T13/2161-D revision 4
SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: Mon Mar 9 19:15:15 2026 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 0) The previous self-test routine completed
without error or no self-test has ever
been run.
Total time to complete Offline
data collection: (65535) seconds.
Offline data collection
capabilities: (0x11) SMART execute Offline immediate.
No Auto Offline data collection support.
Suspend Offline collection upon new
command.
No Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
No Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 1) minutes.
Extended self-test routine
recommended polling time: ( 2) minutes.
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x0032 100 100 000 Old_age Always - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 9090
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 154
148 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0
149 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0
167 Write_Protect_Mode 0x0000 100 100 000 Old_age Offline - 0
168 SATA_Phy_Error_Count 0x0012 100 100 000 Old_age Always - 0
169 Bad_Block_Rate 0x0000 100 100 000 Old_age Offline - 17
170 Bad_Blk_Ct_Lat/Erl 0x0000 100 100 010 Old_age Offline - 0/12
172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0
173 MaxAvgErase_Ct 0x0000 100 100 000 Old_age Offline - 67 (Average 51)
181 Program_Fail_Count 0x0032 100 100 000 Old_age Always - 0
182 Erase_Fail_Count 0x0000 100 100 000 Old_age Offline - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
192 Unsafe_Shutdown_Count 0x0012 100 100 000 Old_age Always - 149
194 Temperature_Celsius 0x0022 024 048 000 Old_age Always - 24 (Min/Max 17/48)
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
199 SATA_CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0
218 CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0
231 SSD_Life_Left 0x0000 094 094 000 Old_age Offline - 94
233 Flash_Writes_GiB 0x0032 100 100 000 Old_age Always - 7476
241 Lifetime_Writes_GiB 0x0032 100 100 000 Old_age Always - 4094
242 Lifetime_Reads_GiB 0x0032 100 100 000 Old_age Always - 11006
244 Average_Erase_Count 0x0000 100 100 000 Old_age Offline - 51
245 Max_Erase_Count 0x0000 100 100 000 Old_age Offline - 67
246 Total_Erase_Count 0x0000 100 100 000 Old_age Offline - 392144
SMART Error Log Version: 1
No Errors Logged
SMART Self-test log structure revision number 1
No self-tests have been logged. [To run self-tests, use: smartctl -t]
Selective Self-tests/Logging not supported
The above only provides legacy SMART information - try 'smartctl -x' for more
Lo más interesante de mi disco
- Overall-health self-assessment test result: PASSED → Perfecto.
- Power_On_Hours: 9090 (~1 año encendido).
- Unsafe_Shutdown_Count: 149 → Apagados bruscos (lo solucioné con el SAI + NUT del post anterior).
- Reallocated_Event_Count: 0 → Ningún sector malo reasignado.
- SSD_Life_Left: 94% → Aún le queda 94% de vida (TBW ~80 TB, yo ~4 TB escritos).
- Temperature_Celsius: 24 (Max 48) → Fresco.
- Lifetime_Writes_GiB: 4094 (~4.1 TB escritos). El bridge USB (StarTech) pasa SMART completo → gran ventaja vs enclosures baratos que lo truncan.
¿Qué aprendí y recomendaciones?
- Mi combo Kingston A400 240GB + enclosure StarTech (ASMedia UAS) es ganador: rápido, estable, SMART full y salud excelente.
- Si usas SSD USB en Pi → prioriza chipsets ASMedia (ASM1153/1053), evita Realtek baratos si puedes.
- Alimentación: Usa powered hub o fuente externa para HDD/SSD grandes.
- Monitorea periódicamente: Pon un cron mensual con
smartctl -ay alerta por Telegram si vida <80% o temp >55°C. - Beneficio final: Boot Pi en 10-15s vs 30-60s en microSD, apps más fluidas, menos corrupción, y sabes exactamente cómo está tu hardware.
Si estás montando un NAS, media center o server casero con Raspberry Pi, haz estos tests YA. Te ahorras disgustos y descubres si tu setup vuela o cojea.
¿Has probado boot desde SSD USB? ¿Qué velocidades te salen? ¡Cuéntame en comentarios!
Próximo post: script para alertas automáticas de SMART por Telegram.
¡Un saludo, linuxetes! 🚀🔧