Управление питанием жесткого диска

Обновлено: 06.07.2024

По умолчанию в Windows 8.1 и 10 доступны две основных и одна дополнительная схема электропитания. К основным относятся «Сбалансированная» и «Высокая производительность», к дополнительным — «Экономия энергии». Есть также скрытая схема «Максимальная производительность», включить показ которой можно командой powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61 , выполненной в запущенной от имени администратора командной строке или консоли PowerShell .

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

Но это так, куда больше в плане настройки плана предлагает опция изменения дополнительных параметров электропитания. В окошке дополнительных параметров вы можете установить время отключения разных устройств, включать и отключать разные функции, «программировать» действия при закрытии крышки ноутбука и нажатии кнопок питания и прочее, и прочее. Опций действительно много, но некоторые из них по умолчанию скрыты, таковыми, например, являются политики простоя устройств и настройки управления питанием процессора. Причина, по которой в Microsoft их решили скрыть проста — настройки эти являются по большей части специфическими, большинству рядовых пользователей неинтересными.

Для управления скрытыми настройками администраторы обычно используют консольную утилиту Powercfg, но это не очень удобный инструмент, было бы лучше, если бы изменять дополнительные параметры электропитания можно было из графического интерфейса, включив их отображение в окне дополнительных параметров питания с помощью нехитрых твиков реестра.

Настройки powercfg хранятся в ключе реестра HKLM\SYSTEM\CurrentControlSet\ControlPower\PowerSettings . Последний подраздел содержит пару десятков или около того каталогов с уникальными 32-значными именами, среди которых:

Уникальные 32-значные имена

В свою очередь каждый из таких разделов содержит один, два, три или более вложенных папок, каждой из которых соответствует та или иная настройка.

RegEdit

За отображение настройки в GUI отвечает параметр Attributes, расположенный в правой части окна редактора.

Attributes

Единица в качестве этого параметра означает, что настройка скрыта, ноль — что настройка доступна через GUI окошка дополнительных параметров. Здесь же находится название настройки на английском (параметр FriendlyName) и ее описание (Desсription) .

По ссылке disk.yandex.ua/d/UpmhEjMgJhsC5A вы можете скачать архив с твиками реестра, включающими отображение некоторых дополнительных параметров.

Политика простоя устройства

Одноименный твик включает отображения политик простоя устройства. Данная настройка пригодится владельцам портативных компьютеров — ноутбуков, нетбуков и планшетов. Она позволяет экономить заряд батареи, снижая потребление энергии во время простоя.

Хранится она в подразделе 4faab71a-92e5-4726-b531-224559672d19 .

Твик простоя устройства

Твик меняет значение параметра Attributes на 0.

Электропитание

Дополнительные настройки параметров питания жесткого диска

Изменив значение параметра Атрибуты в подразделе dab60367-53fe-4fbc-825e-521d069d2456 , можно включить настройку AHCI Link Power Management — Adaptive, регулирующую изменение время простоя канала AHCI , прежде чем он будет переведен в состояние слумбер, или режим минимального энергопотребления.

AHCI Link Power Management — Adaptive

Изменение этого же параметра в подразделе 0b2d69d7-a2a1-449c-9680-f91c70521c60 включит отображение настройки AHCI Link Power Management — HIPM/DIPM.

AHCI Link Power Management — HIPM/DIPM

Дополнительные параметры электропитания

Дополнительные настройки спящего режима

За отображение дополнительных настроек режима сна отвечают ключи реестра, которые вы можете видеть на приложенном скриншоте.

Сон

Здесь также найдутся интересные опции, например, время ожидания, по истечении которого разбуженный компьютер вновь погрузится в сон. Интерес представляет настройка, разрешающая компьютеру переходить в сон, если в открытые удаленно файлы не производилась запись в течении заданного времени.

Дополнительные параметры питания экрана

Твик включает отображение таких дополнительных настроек питания экрана как «Адаптивное отключение экрана», «Адаптивная регулировка яркости», «Время ожидания раздраженности пользователя» и так далее.

Экран

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

Дополнительные настройки питания процессора

Это самый большой по объему раздел, хранящий более тридцати самых разных дополнительных настроек питания процессора.

Питание процессора

Мы не будем их здесь разбирать, если вам интересно, можете применить соответствующий твик, а затем изучить список доступных опций. Именно изучить, а не применять сходу только ради того, чтобы посмотреть, что из этого выйдет, хотя изменение оных настроек не столь уже и критично. Если назначение настройки вам непонятно, то лучше оставить ее в покое.

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


Как выключить внутренний жесткий диск: 3 способа

Отключение внутреннего жесткого диска с помощью средств Windows

Самое разумное - после определенного периода бездействия перевести жесткий диск в спящий режим. В этом случае он почти не потребляет энергию, но при необходимости быстро возобновляет работу.

  • Откройте панель управления и выберите там категорию «Система и безопасность».
  • В ней выберите «Электропитание» и слева нажмите «Настройка перехода в спящий режим».
  • Нажмите «Изменить дополнительные параметры питания», откроется небольшое окно.
  • В категории «Жесткий диск» теперь вы можете выбрать, через сколько минут оборудование перейдет в режим ожидания.
  • Кликните по кнопке ОК, чтобы сохранить ваши настройки.

Через BIOS и специальные программы

BIOS: в некоторых версиях BIOS вы можете отключить питание жесткого диска после определенного периода бездействия. Однако это работает не в каждой модификации BIOS.

Программное обеспечение: гораздо удобнее включать и выключать жесткий диск с помощью определенных программ. Например, инструмент HotSwap! интегрируется в панель задач и позволяет выключать и снова включать жесткие диски одним щелчком мыши. Аналогично работает программа revoSleep.

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

Жёсткий диск потребляет меньше энергии во время спящего режима (sleep mode). Поэтому разумно активировать возможности сохранения энергии, когда жёсткий диск не используется некоторое время. Есть два различных способа сделать это. Первый, (laptop-mode) будет сберегать больше всего энергии за счёт предотвращения или, по крайней мере, задержки записи на диск. Обратной стороной медали является повышенный риск потери данных при сбое питания или аварии ядра; чтобы уменьшить масштабы возможной аварии, убедитесь, что не запущенно часто пишущих на диск процессов. В качестве альтернативного, второго способа вы можете включить сохранение энергии на диске с помощью hdparm.

5.1. Увеличение времени покоя (idle time) – laptop-mode

Последние 2.6-ядра включают одноимённый laptop-mode. Когда он активирован, "грязные" буферы (dirty buffers) пишутся на диск при вызовах чтения (read calls) или после 10 минут (вместо 30 секунд). Это минимизирует время, которое тратится на раскручивание диска.

Листинг 24. Автоматический старт laptop-mode

Настройки пакета laptop-mode-tools хранятся в файле /etc/laptop-mode/laptop-mode.conf . Отредактируйте его на свой вкус – он отлично документирован. Выполните rc-update add laptop_mode battery, чтобы он запускался автоматически.

Последние версии (1.11 и позже) этого пакета включают полезный инструмент lm-profiler. Он следит за использованием диска и запущенными сетевыми сервисами и предлагает отключить ненужные. Вы можете отключить их как используя встроенную в laptop-mode-tools поддержку уровней запуска (которая будет переопределена /sbin/rc ), так и через созданные вами уровни запуска default/battery (рекомендуется).

Листинг 25. Пример вывода lm-profiler

После наблюдения за вашей системой в течении 10 минут, lm-profiler выведет список сервисов, которые могли вызвать обращения к диску за этот промежуток времени.

Листинг 26. lm-profiler предлагает отключить некоторые сервисы

Чтобы отключить atd, как предлагается в примере выше, выполните rc-update del atd battery. Будьте осторожны, не отключите жизенноважные сервисы – lm-profiler частенько выдает не совсем правильные данные. Не отключайте что-либо, если вы полностью не уверены в ненужности сервиса.

5.2. Ограничение доступа на запись

Листинг 27. Выключение cups из уровня запуска battery

Вы также может использовать lm-profiler из laptop-mode-tools (см. выше), чтобы найти неугодные сервисы. Если вы истребили их всех, то можно переходить к настройке hdparm.

5.3. hdparm

Вторая возможность – использование hdparm. Пропустите этот шаг, если вы используете laptop-mode. Иначе, откройте /etc/conf.d/hdparm и добавьте следующие строки для ваших жёстких дисков. Этот пример предполагает, что ваш диск именуется hda:

Листинг 28. Использование /etc/conf.d/hdparm для засыпания диска

Это включит управление питанием для вашего жесткого диска. Если вы когда-нибудь решите отключить управление питанием, то просто измените значение в /etc/conf.d/hdparm на -q -S0 или выполните hdparm -q -S0 /dev/hda.

Обратитесь к man hdparm за другими опциями. Хотя вы всегда можете запускать hdparm вручную командой /etc/init.d/hdparm start, намного проще автоматизировать её запуск и остановку. Чтобы сделать это, добавить hdparm в уровень запуска battery.

Листинг 29. Автоматизация засыпания диска

Внимание: Будьте осторожны с настройками засыпания/остановки (sleep/spin down) вашего жёсткого диска. Установление слишком низких значений может быстро "износить" ваш диск, что приведёт к потере гарантии. (Прим. пер.: вспомните историю про Ubuntu)

5.4. Другие "типы и трюки"

Ещё один способ достижения светлой цели снижения энергопотребления состоит в отключении свопа (swap) в режиме питания от батареи. Перед тем, как писать переключатель swapon/swapoff, убедитесь, что у вас достаточно оперативной памяти и своп существенно не используется, иначе вы рискуете приобрести большие проблемы.

Если вы не хотите использовать laptop-mode, то можно уменьшить обращение к диску, монтируя некоторые директории как tmpfs – запись на такие разделы хранится не на диске, а в ОЗУ, и поэтому пропадает после отмонтирования. Зачастую удобно примонтировать /tmp таким образом, так как она в любом случае очищается при каждой перезагрузке. Правда, стоит убедиться, что у вас достаточно памяти и что нет программ (таких, как менеджеры закачек и архиваторы), которым требуется экстремально много места в /tmp . Чтобы сделать это, включите поддержку tmpfs в ядре и добавьте подобную следующей строку в /etc/fstab :

Листинг 30. Редактирование /etc/fstab, чтобы сделать /tmp более отрешённым от диска (volatile)

Предупреждение: Обратите внимание на параметр (32 m), и подстройте его под вашу систему. Если вы не уверены, не пробуйте это вообще – это может сильно уменьшить производительность. Если вы хотите подмонтировать /var/log таким же образом, убедитесь, что файлы сохраняются на диск перед размонтированием. Они необходимы. Не пытайтесь примонтировать /var/tmp таким образом – он используется Portage при сборке пакетов.

Столкнулся в Windows 10 с проблемой: жёсткий диск не останавливается по истечении времени, указанного в панели управления электропитанием компьютера. HDD установлен вторым, а Windows расположен на диске SSD. Дело именно в жёстком диске, в данном случае у меня ноутбучный диск TOSHIBA формата 2,5”. До него стоял HDD Western Digital, и такой проблемы не наблюдалось.

Проблема в том, что постоянно крутящийся шпиндель издаёт лишний шум, иногда даже единственный шум из ноутбука. Также, изнашивается механизм диска и расходуется энергия, что особенно заметно при работе от аккумулятора.

Почему жёсткий диск не останавливается

Для начала давайте удостоверимся, что все понимают, о чём идёт речь. Заходим в «Панель управления -> Электропитание» и нажимаем «Настройка схемы электропитания» активной схемы:

электропитание настройка схемы управления

Далее жмём «Изменить дополнительные параметры питания» :

изменить дополнительные параметры питания

Теперь мы попадаем в искомое окно. Находим подменю «Жёсткий диск», разворачиваем и выставляем время отключения при работе от батареи и от сети. Теперь, по идее, если никакая программа не работает с жёстким диском в течении указанного времени, крутящийся шпиндель должен остановиться.

параметры отключения жесткого диска

Иногда диск не засыпает никогда, либо засыпает через произвольный промежуток времени, например, через 15 минут, независимо от настроек электропитания Windows. Всё бы ещё нечего, но операционная система так работает, особенно Windows 10, что периодически происходит обращение к диску и он начинает вращаться, и останавливается снова только через 15 минут. Проблема усугубляется, если второй HDD используется редко, но зато постоянно шумит.

Принято считать, что диск не останавливается в том случае, если какая-то программа, и правда, время от времени обращается к диску, и он, закономерно, не уходит в спящий режим. Рекомендую вспомнить после чего началось такое поведение. Может быть вы обновили драйвера ноутбука, получили обновления Windows или установили новые программы? Временно удалите программы, откатите обновления и драйвера. Проще всего создать точку восстановления системы и временно откатиться на прежнюю точку восстановления, если она есть.

Статья о том случае, когда дело не в программах, а по каким-то причинам Windows 10 не умеет выключать шпиндель винчестера. Т.е., система APM (Automatic Power Management) винчестера не полностью совместима с Windows… Не стоит путать APM с AAM (Advanced Acoustic Management). AAM нужен для регулирования уровня шума, создаваемого перемещением считывающих головок.

Как вручную и автоматически останавливать HDD

К сожалению, перебирая различные настройки Windows и применяя правки реестра, решить проблему не удалось. Но есть и хорошая новость – можно отправлять HDD в режим сна с помощью маленькой утилиты «HDParm». Скачиваем программу в соответствии с разрядностью своей ОС.

HDParm это консольная утилита, т.е. программа работающая в режиме командной строки. У неё нет графического интерфейса, мы будет запускать её вручную из командного файла (батника). Для автоматического применения новых параметров мы добавим командный cmd-файл в автозапуск Windows. Также, понадобится активировать запуск утилиты после выхода из режима сна, т.к. после засыпания Windows, параметры APM стираются.

Мой файл «remove.cmd» имеет такое содержание:
"c:\Program Files (x86)\hdparm\hdparm.exe" -i hda|findstr /C:"TOSHIBA"
if not errorlevel 1 (
"c:\Program Files (x86)\hdparm\hdparm.exe" -S 12 hda
) else "c:\Program Files (x86)\hdparm\hdparm.exe" -S 12 hdb
mountvol D: /D
mountvol F: /D

Теперь разберёмся по порядку для чего нужна каждая строчка. Сперва нужно определить, как жёсткий диск обзывается в системе: hda или hdb. По неизвестным мне причинам, в разное время запуска «hdparm.exe», наименование hda, hdb, hdc и т.д. могут меняться местами. Первая команда:

hdparm.exe -i hda

выводит на экран информацию о первом HDD «hda». Вторая часть первой строчки:

Ищет в полученной информации имя «TOSHIBA». Если у вас другой жёсткий диск, то нужно посмотреть в чистой командной строке, как он правильно называется. Запустите командную строку и вставьте туда команду:

Если ничего не найдено, то вместо hda пробуйте hdb или hdc (если установлено три SSD/HDD накопителя). В общем, суть в том, что если «TOSHIBA» не найдено на «hda», то скрипт будет использовать «hdb».

mountvol D: /D
mountvol F: /D

убирают буквы дисков из системы. Я использую второй батник, когда нужно поработать со вторым винчестером. Содержимое моего файла «enable.cmd»:

"c:\Program Files (x86)\hdparm\hdparm.exe" -i hda|findstr /C:"TOSHIBA"
if not errorlevel 1 (
"c:\Program Files (x86)\hdparm\hdparm.exe" -S 180 hda
) else "c:\Program Files (x86)\hdparm\hdparm.exe" -S 180 hdb
mountvol D: \\?\Volume\
mountvol F: \\?\Volume\

Команды все те же самые, только таймаут остановки жёсткого диска выбран «180», что соответствует 15 минутам. Для назначения буквенного доступа к дискам необходимо указать желаемую букву диска и номер тома HDD, который нужно узнать перед отключением буквенных соответствий. Чтобы получить VolumeID, введите в командную строку название программы «mountvol» без параметров:

Вы увидите, каким буквам дисков назначен какой VolumeID:

номер тома жёсткого диска

Удаление букв дисков не полностью спасает от периодического просыпания HDD, из-за особенностей Windows 10. Полностью исключить этот момент можно лишь отключив устройство в «Диспетчере задач», и это тоже можно автоматизировать из командной строки. Но проблема в том, что иногда для этой операции требуется перезагрузка, иногда не требуется. В общем, требование перезагрузки нивелирует всё удобство от быстрого добавления и удаления режима сна и буквы жёсткого диска.

На этом всё, теперь вы можете добавить скрипт в автозагрузку любым удобным способом. Если вы пользуетесь режимом сна компьютера или ноутбука, то вам понадобится включать запуск скрипта после каждого «просыпания».

Читайте также: