NMT-200 ЧаВо

Уменьшаем акустические шумы от HDD

Статья WildFlexy от 02.08.2010
Редакция от 24.09.2010

Большинство нареканий у пользователей NMT вызывают звуки, издаваемые при работе HDD. Даже на A-200 при его штатном кулере, шум слышнее именно от HDD, если его не настроить правильно.

Есть 2 основные причины шумов: энергосбережение и установленный режим производительности HDD (HDD с вибрацией шпинделя не считаем — их сразу в морг).
С первой связаны звуки остановки, парковки и раскручивания пластин HDD по причине такого перерыва при обмене с HDD, при котором он считается неактивным и может быть отключен для наибольшего энергосбережения. То есть паркуются головки, останавливается двигатель, крутящий диски. Возобновление обмена приводит к обратному процессу.
На NMT-200 с установленными и активными штатными Приложениями NMT или сторонними приложениями, запущенными как службы и требующими периодического обмена с HDD (Torrent-клиент), переход в режим Standby не останавливает данные службы. Следовательно, если обмен минимален, то HDD подвергается явному «насилию» — засыпанию-просыпанию без необходимости.
Уменьшить или ликвидировать подобную проблему можно отключив или отрегулировав режим Standby на HDD.
Решается это с помощью команды hdparm (в пакете busybox или utils), например:

hdparm -S 0 /dev/sda

отключает на первом SATA режим Standby.
Еще на современных HDD имеются свои проприетарные средства повышения эффективности сохранения энергии (Advanced Power Managment), которые действуют в обход штатных средств управления и выключают в режиме неактивности как неиспользуемые блоки электроники HDD, так и привод пластин (опять парковка!).
Eсть и на них метод, например:

hdparm -B 255 /dev/sda

отключает на первом SATA режим APM (если HDD позволяет управлять собой через стандартный метод — то есть не на всех HDD это возможно).
Можно два флага на HDD подать одной командой:

hdparm -S 0 -B 255 /dev/sda

Вторая причина акустических шумов — режим повышенной производительности HDD, который регулируется параметром AAM (Automatic Acoustic Managment). Данный параметр обычно имеет два работающих значения — включено шумоподавление или включена производительность. Работает с hdparm только из комплекта utils. Включить шумоподавление:

hdparm -M 128 /dev/sda

Включить производительность:

hdparm -M 254 /dev/sda

Рассмотрим на моем примере работу с hdparm:

Ищем имя устройства, нам необходимого:

mount | grep sd

/dev/sdb1 on /nmt type ext3 ...
/dev/sda3 on /opt/sybhttpd/localhost.drives/SATA_DISK_A3 type ext3 ...
/dev/sdb4 on /opt/sybhttpd/localhost.drives/SATA_DISK type ext3 ...
/dev/sdb3 on /persistfs type ext3 ...

То есть — у меня 2 HDD — /dev/sda и /dev/sdb — система на sdb — так как именно там раздел /nmt.

Можно посмотреть параметры/переменные HDD:

hdparm -I /dev/sdb

или краткая версия вывода:

hdparm -i /dev/sdb

Убрать на HDD спящий режим (чтоб он не останавливался совсем), и выставить максимальную производительность (мы же не на батарейке работаем):

hdparm -S 0 -B 254 /dev/sdb

Вытяжки из man по hdparm:

    -S
    Set the standby (spindown) timeout for the drive. This value is used by the drive to determine how long to wait (with no disk activity) before turning off the spindle motor to save power. Under such circumstances, the drive may take as long as 30 seconds to respond to a subsequent disk access, though most drives are much quicker. The encoding of the timeout value is somewhat peculiar. A value of zero means «timeouts are disabled»: the device will not automatically enter standby mode. Values from 1 to 240 specify multiples of 5 seconds, yielding timeouts from 5 seconds to 20 minutes. Values from 241 to 251 specify from 1 to 11 units of 30 minutes, yielding timeouts from 30 minutes to 5.5 hours. A value of 252 signifies a timeout of 21 minutes. A value of 253 sets a vendor-defined timeout period between 8 and 12 hours, and the value 254 is reserved. 255 is interpreted as 21 minutes plus 15 seconds. Note that some older drives may have very different interpretations of these values.

    -B
    Set Advanced Power Management feature, if the drive supports it. A low value means aggressive power management and a high value means better performance. A value of 255 will disable apm on the drive.

Например, для своего WDC 640 Blue Scorpio параметр -B я выставил в 254, но на каждом HDD свои нюансы. Число 255 вообще выключает Advanced Power Managmeng. Можно пойти и на это.

Приведенные команды убрали стук при парковке и звуки раскрутки HDD во время засыпания/просыпания при невысокоскоростном обмене с диском.

А вот ключика -M для установки AAM(Automatic Acoustic Managment), или снижения уровня акустических шумов, в BusyBox почему-то нет как класса.

Glass подсказал решение для AAM — пакет utils, устанавливающийся через NMT CSI, после инсталляции даст более умный hdparm, у которого не обрезан ключ -M.
Вытяжки из man по hdparm:

    -M
    Get/set Automatic Acoustic Management (AAM) setting. Most modern harddisk drives have the ability to speed down the head movements to reduce their noise output. The possible values are between 0 and 254. 128 is the most quiet (and therefore slowest) setting and 254 the fastest (and loudest). Some drives have only two levels (quiet / fast), while others may have different levels between 128 and 254. At the moment, most drives only support 3 options, off, quiet, and fast. These have been assigned the values 0, 128, and 254 at present, respectively, but integer space has been incorporated for future expansion, should this change.

Кладезь полезных утилит в utils расположена по пути /share/Apps/utils/sbin/

Установка шумодава выполяется как:

/share/Apps/utils/sbin/hdparm -M 128 < устройство>

Например, приглушить первый SATA:

/share/Apps/utils/sbin/hdparm -M 128 /dev/sda

Как справедливо отметил Jan Bezus, параметры HDD, взведенные через hdparm, живут до следующего рестарта NMT. Но прописку параметров при запуске NMT можно автоматизировать.

Но ни один из hdparm’ов не работает с USB-носителями, а жаль!


Выгрызка из статьи Мертвые с косами и тишина — 2, или Тихие винчестеры с сайта ferra.ru. Примите во внимание - далекий декабрь 2000 года! Но про AAM рассказано вполне доступно.

    Звуки при перемещении головок

    При позиционировании головок (поиске информации на разных дорожках диска) шум создается вследствие рассеивания энергии, которая прикладывается к приводу головок и обеспечивает их перемещение, а также за счет вибрации и резонансных явлений в дисковом накопителе при перемещении привода головок. Есть ряд механических способов снижения шума позиционирования. Можно внести изменения в конструкцию определенных компонентов накопителя таким образом, чтобы они поглощали большую часть шумов (демпфирующие покрытия, изменение типа материала конструкций и др.). Тем самым улучшаются акустические характеристики накопителя как в режиме позиционирования головок, так и на холостом ходу. Так, например, новейшие модели дисков Maxtor благодаря применению технологии шумопонижения Maxtor Silent Store имеют шум поиска всего на 1 дБА больше шума вращения.

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

7 комментариев к этой записи

  • Николай

    А на какой уровень пользователей Linuxа расчтина эта статья? Подразумевается что все знают как пользоваться пакетами busybox и utils? И какой смысл всех действий, если после перезагрузки они не сохраняются («Но прописку параметров при запуске NMT можно автоматизировать» — только не написано как). Если статья рассчитана на профи — так она им вряд ли пригодится. Если на чайников (таких как я), то наверно нужны более развернутые примеры (в том числе по пользованию пакетами busybox и utils), как автоматизировать прописку параметров.

    З.Ы. А за труд автора спасибо большое!

  • VaniaLSD

    1) Загружаем в любой удобной форме прогу «WD Align» отсюда http://www.wdc.com/ru/products/advancedformat/

    У меня загрузочный диск с образом Acronis отказался работать, а вот в виде программы для Win 7 всё отлично сработало.

    Форматируем диск полностью (желательно из под Win 7) в один раздел.

    Натравливаем эту прогу на диск и ждём пока она выровняет сектора.

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

    Потом разбиваем диск так, как удобно.

    2) Увеличиваем время парковки головок с 8 секунд до 63 минут, пошаговые действия:

    1. скачиваем программу wdidle3.zip (версии 1.03)

    взять можно отсюда http://files.hddguru.com/download/Software/Western%20Digital/

    2. Создаем загрузочную флешку с DOS, инструкция здесь http://acerfans.ru/index.php?newsid=1030 (либо пользуемся флоппиком, если он ещё есть в наличии) и кидаем wdidle3.exe в корень флэшки

    3. Загружаемся с флешки и запускаем wdidle3 спараметром /d , то бишь вводим в командной строке «wdidle3.exe /d» без кавычек и жмём Enter

    После этих телодвижений диск у меня работает один в системе с Win 7 (качалка-файлопомойка) в качестве системного и хранилища. Тормозов практически нет. По быстродействию сравним с Hitachi HDT725032VLA360 (320 Гб, 7200 об/мин). Вот скрин бенчмарка HDTune, запущенный из-под винды с этого самого диска

    http://img180.imageshack.us/img180/9035/hdtunewd15ears.png

    А можно так?

    • WildFlexy

      Для С-200 манипуляции с параметрами SATA-дисков Standby time, а также с Advanced Power, выполненные до загрузки в плеер, неэффективны. C-200 не зря назван самым экономичным — он выставляет при загрузке свои значения (если может).
      Смотри приведенное замечание по тексту от Jan Bezus.
      Твой совет применим только для дисков, подключенных через USB-соединения — их С-200 «не трогает».

  • VaniaLSD

    Что-то я не очень понял.
    Так как после перезагрузки все сбрасывается — надо в файле startscript.sh прописать hdparm -M 128 /dev/sda для то чтобы было максимально тихо и чтобы диск прожил дольше. Я правильно понял?

    • WildFlexy

      параметр M как раз и не сбрасывается — сносятся B и S

      hdparm -S0 -B254 -M128 /dev/sda.
      И желательно не в стартскрипт — а в user.script.sh, который с пакетом Linux Term Utils идет
      Потому как стартскрипт может перетереться CSI, а user.script.sh — только руками юзера.

  • VaniaLSD

    Значит в user.script.sh прописываю
    hdparm -S0 -B254 -M128 /dev/sda
    и все?

2010–2017 © NMT-200 ЧаВо