[РЕШЕНО] Подскажите команду определения ssd

Какой командой можно определить что устройство /dev/sdX является ssd или флешкой.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
Что смог найти это проверить атрибут /sys/block/sdX/queue/rotational
если 0 то это ssd,
но почему то на флешку выдает 1
а проверить на винте ssd нет возможности (((
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
Флешки нет, проверить не могу. Для системного ссд:
gluk ~ $ cat /sys/block/sda/queue/rotational
0

Или же юзать "grep Rotation\ Rate":
gluk ~ $ sudo smartctl -i /dev/sda
smartctl 6.0 2012-10-10 r3643 [i686-linux-3.6.10-1-pae] (local build)
Copyright (C) 2002-12, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Device Model:     KINGSTON SVP200S360G
Serial Number:    50026B7221072761
LU WWN Device Id: 5 0026b7 221072761
Firmware Version: 332ABBF0
User Capacity:    60 022 480 896 bytes [60,0 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS, ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Wed Jan 23 10:54:49 2013 EET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Плеер, подключен по юсб, определяется как флешка:
gluk ~ $ cat /sys/block/sdb/queue/rotational
1
спс, значит все таки ssd винт определяется, это уже хорошо.
вот бы еще флешку правильно определить было бы вообще замечательно. )))
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
Нет у меня SSD, но логика подсказывает следующее:
  • Флешка это либо устройство USB mass storage, и тогда оно имеет соответствующий драйвер и подключается через USB, либо это MMC/SD/MemoryStick/xD/..., подключается к картридеру и тоже имеет соответствующий драйвер.
  • SSD подключается к контроллеру SCSI/SATA/SAS и имеет соответствующий шине драйвер, но при этом не является лазерным дисководом или жестким диском.
Получается, что отличать SSD надо скорее не от флешки, а от жесткого диска.

Что касается
cat /sys/block/sda/queue/rotational
то у меня оно выдаёт 1 и на флешки, и на винчестер.
udevadm info --query=property --name=sdX | grep 'ID_BUS=' | sed 's/ID_BUS=//'
Возвращает куда подключен
если usb то это или флешка или внешний винт
Осталось вычислить что это именно флешка... или отсеять винт...

Получается, что отличать SSD надо скорее не от флешки, а от жесткого диска.
Ну ssd винт вроде проверяется выше правильно...
Только для флешки это не работает
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
Стоп.
Если речь о том, что флешка это тоже SSD – нет, флешка это НЕ SSD, по крайней мере формально не SSD.
Другой контроллер, другая скорость обмена, и даже другие микросхемы флеш-памяти, хотя обычно и того же типа.

Если погуглить, в сети находятся забавные рецепты, как сделать подобие SSD из нескольких флешек :)
Для достижения скорости обмена как у SSD, предлагается объединить несколько флешек в программный RAID0-массив (с чередованием).
Natrio, тут все проще
Дело в том что к флешкам и ssd применяются одни и те же параметры монтирования,
для файловой системы ext4 это discard, для btrfs ssd
Так вот я делаю автомат который определит флешку или ssd и в зависимости от файловой системы подставит нужное.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
То есть надо отличить не SSD, а отличить USB-флешку от USB-винчестера. Надо было так и сказать.

У меня есть USB-винчестер. Когда я подключал его (и пару чужих в разное время) к компьютеру, у меня было ещё старое правило udev для отнесения всяких флешек в группу storage, которое работало в основном по атрибуту "removable", и в результате USB-винчестер в эту группу не попадал – у него removable=0, как ни странно:
[email protected]:~# cat /sys/block/sda/removable 
0
А вот у USB-флешек там всегда единица.
спс, вот это то что нужно было, а то я уже не один день решаю задачу )))

Получалась такая зависимость
/sys/block/sdX/queue/rotational
если 0 то это ssd,
/sys/block/sdX/removable
если 1 то это флешка
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
 
Зарегистрироваться или войдите чтобы оставить сообщение.