Жесткий диск WD просыпается через несколько секунд после перевода в режим ожидания

У меня есть рейд ZFS с двумя дисками. Хоумсервер работает 24/7 и диски тоже. Поэтому я хотел бы перевести их в режим ожидания после некоторого простоя. В нескольких сообщениях рекомендуется проверить это с помощью параметра -C

# hdparm -y /dev/sda

/dev/sda:
 issuing standby command
# hdparm -C /dev/sda

/dev/sda:
 drive state is:  standby
# hdparm -C /dev/sda

/dev/sda:
 drive state is:  standby
# hdparm -C /dev/sda

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

. Я перезапускаю команду hdparm -C /dev/sdaкаждую секунду. Почему диск проснулся через несколько секунд? Я остановил все приложения, обращающиеся к этому диску (это не диск ОС). И с помощью fatraceя не смог найти ни одной операции ввода-вывода. И я также попробовал этот обходной путь ядра, а затем перезагрузку правил, что должно избежать пробуждения диска с помощью hdparm.

Кроме того, я попробовалsmartctl -i -n standby /dev/sda |grep "^Power mode". Кажется, это пробуждает диск при втором запуске.

# hdparm -y /dev/sda

/dev/sda:
 issuing standby command
# smartctl -i -n standby /dev/sda|grep "^Power mode"
# smartctl -i -n standby /dev/sda|grep "^Power mode"
Power mode is:    ACTIVE or IDLE

Диск /dev/sdaпредставляет собой диск WD Red 8 ТБ:

# smartctl -i /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.41-1-pve] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Red
Device Model:     WDC WD80EFZX-68UW8N0
Serial Number:    xxx
LU WWN Device Id: 5 000cca 263c7a3f7
Firmware Version: 83.H0A83
User Capacity:    8,001,563,222,016 bytes [8.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Form Factor:      3.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2, ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sat May 30 09:41:56 2020 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Я использую Proxmox, так что это дистрибутив на основе Debian с Debian Buster. (10).

Изменить: Попытка hd-idle

Я попробовал hd-idle, но диск не перешел в режим ожидания. Поскольку в журналах не было записей, я выполнил его вручную с флагом отладки

hd-idle -i 0 -a /dev/sda -i 120 -l /var/log/hd-idle.log -d

. Это показало увеличение количества чтений при каждой проверке

probing sda: reads: 12760648, writes: 3174104
probing sda: reads: 12763720, writes: 3174104
probing sda: reads: 12765256, writes: 3174104
probing sda: reads: 12766792, writes: 3174104

Я ожидаю, что вообще не будет чтений, как описано в это сообщение в блоге (это для RPI, но я думаю, что это не имеет отношения здесь).Большая часть программного обеспечения работает в контейнерах Docker, поэтому я остановил демон, но чтение продолжается. В настоящее время существует только одна виртуальная машина Proxmox. Он расположен на системном SSD, поэтому не может вызывать чтения.

0
30.05.2020, 21:15
1 ответ

Проблема была вызвана службой pvestatd. :Она собирает информацию о состоянии, такую ​​как загрузка ЦП, использование диска и другие данные, отображаемые в веб-интерфейсе. Согласно Proxmox, это применимо только к хранилищу, сконфигурированному в /etc/pve/storage.cfg. Я больше не настраивал там пул ZFS, но раньше он был там. Кажется, это заставляет pvestatdвсе еще сканировать тот пул, который будит мои диски.

Чтобы исправить это, мне нужно исключить устройства в /etc/lvm/lvm.conf. В global_filterесть фильтр, где я применил "r|/dev/sda"для каждого диска. rозначает, что этот диск исключен из проверки.

После перезагрузки диски, как и ожидалось, перешли в режим ожидания.

0
18.03.2021, 23:31

Теги

Похожие вопросы