Как определить время вращения диска
Я могу установить время APM и время spindown с помощью команды:
hdparm -S 246 -B 128 /dev/sda
К сожалению, я могу найти только значение APM в выводе информации:
hdparm -I /dev/sda | grep Advanced
Как я могу увидеть значение времени spindown? Я подозреваю, что мой диск игнорирует мою ценность. Я хотел бы увидеть это. Пробовал smartctl но без везения, помогите.
Обновление: оказалось настроено очень агрессивно. Когда я выключил его, мои диски не вращаются. Он там что-то устанавливал.
3 ответа
Кажется, что нет способа запросить это значение с помощью hdparm, однако вы можете увидеть, находится ли диск в режиме ожидания или в активном состоянии...
> sudo hdparm -C /dev/sdb
/dev/sdb:
drive state is: standby
> sudo hdparm -C /dev/sda
/dev/sda:
drive state is: active/idle
Опция -B 128
запрещает вращение, поэтому опция -S бесполезна. Посмотри на man hdparm
, Откат возможен только при параметрах -B от 127 и менее.
Если у вас есть диск Seagate, который поддерживает Extended Power Controls (EPC), я предполагаю, что в основном корпоративный класс, вы можете использовать инструмент
SeaChest
Сначала возьмите ручку диска Seagate:
SeaChest_PowerControl -v 0 --scan --scanFlags sgtosd
Результат:
Vendor Handle Model Number Serial Number FwRev
ATA sg0<->sda ST1000LM049-2GH172 WN90H8BT SDM1
ATA sg1<->sdb ST1000LM049-2GH172 WN90HACK SDM1
ATA sg2<->sdc ST1000LM049-2GH172 WGS3M35X SDM1
ATA sg3<->sdd ST1000LM049-2GH172 WGS65M4X SDM1
ATA sg4<->sde ST1000NX0303 S470WNPT NN02
NVMe /dev/nvme0n1 Force MP510 184282050001276960F1 ECFM11.0
Тогда получите время ожидания:
SeaChest_PowerControl -v 0 -d /dev/sg4 --showEPCSettings
Результат:
===EPC Settings===
* = timer is enabled
C column = Changeable
S column = Saveable
All times are in 100 milliseconds
Name Current Timer Default Timer Saved Timer Recovery Time C S
Idle A *200 *10 *200 150 Y Y
Idle B 1200 *2400 1200 650 Y Y
Idle C 1300 6000 1300 4000 Y Y
Standby Z *1200 36000 *1200 15000 Y Y
(Не обращайте внимания на мои экспериментальные значения Idle_C и Standby_Z, которые очень низкие)
Вы можете получить инструмент от Seagate
Приведенный выше пример взят из Seagate Enterprise Capacity 2.5" 1 ТБ SATA (ST1000NX0343). То же самое пробовал на Seagate BarraCuda Pro 2.5" 1 ТБ SATA (ST1000LM049), и это не сработало, поскольку, по-видимому, не поддерживает EPC.
Выход из man hdparm
включает в себя следующее:
-S: перевести накопитель в режим ожидания (с низким энергопотреблением), а также установить тайм-аут в режиме ожидания (вращения) для накопителя. Это значение тайм-аута используется приводом, чтобы определить, как долго ждать (без активности диска), прежде чем отключить двигатель шпинделя для экономии энергии. При таких обстоятельствах накопителю может потребоваться до 30 секунд для ответа на последующий доступ к диску, хотя большинство накопителей работают намного быстрее. Кодирование значения тайм-аута несколько своеобразно. Нулевое значение означает "тайм-ауты отключены": устройство не будет автоматически переходить в режим ожидания. Значения от 1 до 240 определяют кратные 5 секундам, приводя к тайм-аутам от 5 секунд до 20 минут. Значения от 241 до 251 указывают от 1 до 11 единиц по 30 минут, что дает время ожидания от 30 минут до 5,5 часов. Значение 252 означает тайм-аут 21 минуты. Значение 253 устанавливает период ожидания, определенный поставщиком, от 8 до 12 часов, а значение 254 резервируется. 255 интерпретируется как 21 минута плюс 15 секунд. Обратите внимание, что некоторые старые диски могут иметь разные интерпретации этих значений.
Поэтому значение 246 будет означать 6 единиц по 30 минут (3 часа), хотя я не знаю, как значение для -B
интерпретируется когда -S
также указано.