Быстрый способ проверить тип привода

10

Есть ли быстрый способ понять тип «хранилища» в Linux? Это жесткий диск или SSD (или NVMe)? Уже известно, что хост - это физическая машина, а не виртуальная машина. Первое, о чем я подумал - rotationalфлаг под /sys/block/<device>/queue/каталогом. Но по моему опыту даже для SSD-устройств оно может содержать значение «1». Вторым способом, более реалистичным и правдивым, была латентность. Это немного сложнее измерить (некоторые работают с / proc / diskstats), но выглядит более предпочтительным.

Есть ли другие способы? Важно отметить, что мне не нужно знать точную модель «хранилища», просто ее тип.

Лесовский
источник
1
Измерение задержки не является хорошим ответом, так как некоторые ротационные диски имеют огромные кэши, которые могут или не могут быть легко отличимы от твердотельных устройств с полной емкостью.
апх
2
Наряду с smartctlупомянутыми здесь другими утилитами, такими как lshwи lsblkсообщают ту же информацию. См. Также askubuntu.com/q/792814/295286
Сергей Колодяжный
1
для чего вы будете использовать эту информацию? Другими словами, если я дам вам программу под названием isHDDorSSD, что вы будете с ней делать
ааааа говорит восстановить Монику
Бонни ++ может показать SSD против HDD , основанный на IOPS (как это можно дд)
Warren
@ Сергей Колодяжный, я не нашел такой информации в lshw. Также lsblkполагается на rotationalфлаг в каталоге sysfs, поэтому я не могу доверять ему. smartctlиспользует вызов ioctl и запрашивает информацию напрямую с устройства.
Лесовский

Ответы:

13

Как насчет чего-то вроде sudo smartctl -a /dev/<device> | grep Rotation- если это вернется Rotation Rate: Solid State Device, то это SSD. Не уверен, что этот пуленепробиваемый метод тоже.

Янне Пиккарайнен
источник
1
Выглядит хорошо, работает даже с дисками, подключенными через карты RAID.
Лесовский
@lesovsky, я бы не рассчитывал на то, что он работает через карту RAID. У меня нет каких-либо SSD-дисков, подключенных к RAID, которые я могу протестировать, но он показывает неправильные скорости вращения для вращающихся дисков (каждый диск в массиве отображается как 10 КБ, когда они все фактически 7,2 КБ).
Марк