Назад | Перейти на главную страницу

Как определить время остановки диска

Я могу установить время APM и время вращения с помощью команды:

hdparm -S 246 -B 128 /dev/sda

К сожалению, я могу найти только значение APM в выводе информации:

hdparm -I /dev/sda | grep Advanced

Как я могу увидеть значение времени замедления? Я подозреваю, что мой диск игнорирует мою ценность. Я бы хотел это увидеть. Пробовал smartctl, но безуспешно, помогите.

Обновление: Оказалось, тюнингованный очень агрессивный. Когда я его выключил, мои диски не тормозят. Он что-то там устанавливал.

Опция -B 128 запрещает вращение, поэтому ваша опция -S бесполезна. Посмотри на man hdparm. Spindown возможен только при параметре -B 127 и меньше.

Кажется, нет способа запросить это значение с помощью hdparm, однако вы можете увидеть, находится ли диск в режиме ожидания или в активном состоянии ...

> sudo hdparm -C /dev/sdb

/dev/sdb:
 drive state is:  standby

> sudo hdparm -C /dev/sda

/dev/sda:
 drive state is:  active/idle

Выход из 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 также указано.

Если у вас есть диск 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.