Una forma rápida de verificar el tipo de unidad


10

¿Hay alguna forma rápida de entender un tipo de "almacenamiento" en Linux? ¿Es un HDD o SSD (o NVMe)? Ya se sabe que el host es una máquina física y no una VM. Lo primero que pensé fue sobre la rotationalbandera en el /sys/block/<device>/queue/directorio. Pero en mi experiencia, incluso para dispositivos SSD, puede contener el valor "1". La segunda forma y más realista y veraz fue una latencia. Es un poco más difícil de medir (algunos funcionan con / proc / diskstats), pero parece más preferible.

¿Hay alguna otra forma? Es importante mencionar que no necesito saber el modelo exacto del "almacenamiento", solo su tipo.


1
La medición de la latencia no es una buena respuesta, ya que algunos discos giratorios vienen con grandes cachés que pueden o no ser fáciles de distinguir de los dispositivos de estado sólido de plena capacidad.
ansioso

2
Junto con lo smartctlmencionado aquí, otras utilidades como lshwe lsblkinforman la misma información. Ver también askubuntu.com/q/792814/295286
Sergiy Kolodyazhnyy

1
¿para qué utilizarías esta información? En otras palabras, si te doy programa llamado isHDDorSSD ¿qué vas a hacer con él
aaaaa dice Restablecer Mónica

Bonnie ++ puede mostrar SSD vs HDD basado en IOPS (como puede dd)
warren

@Sergiy Kolodyazhnyy, no he encontrado esa información en lshw. También se lsblkbasa en la rotationalbandera en el directorio sysfs, por lo tanto, no puedo confiar en él. smartctlutiliza la llamada ioctl y solicita información directamente desde el dispositivo.
lesovsky

Respuestas:


13

¿Qué tal algo así sudo smartctl -a /dev/<device> | grep Rotation? Si esto regresa Rotation Rate: Solid State Device, entonces es un SSD. No estoy seguro si este método a prueba de balas, tampoco.


1
Se ve bien, funciona incluso con unidades conectadas a través de tarjetas RAID.
lesovsky

@lesovsky, no contaría con que funcione a través de una tarjeta RAID. No tengo ningún SSD conectado a RAID con el que pueda probar, pero muestra velocidades de rotación incorrectas para los discos giratorios (cada disco en la matriz aparece como 10k, cuando en realidad son todos 7.2k).
Mark
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.