Pull to refresh

Устраняем щелчки винчестера Mac mini (и Macbook)

Reading time 2 min
Views 25K

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

Полез искать решение в интернете, как оказалось, это не только у меня и других владельцев Миников, но и у владельцев Макбуков. Во всем виноватым оказался, естественно, винчестер, который для сбережения энергии так часто паркует головки. В англоязычной версии эти звуки называются Marble drop (падение мрамора), что довольно точно описывает ощущение от звука — как-будто мрамор падает в песок.

Самое страшное, что эти парковки ощутимо изнашивают ресурс винчестера. Всего допускается 300.000 парковок головок. У меня же за полтора года уже было отщелкано почти 200.000 раз!


Из всех вариантов решений мне подошел этот:
Волшебная программа declunk. Раз в пять секунд создает и через это же время удаляет файл в папке /tmp. Благодаря этому винчестер не успевает «подумать», что можно спокойно припарковаться и щелчки исчезают!

С сайта Kiza's place я скачал программу declunk. Она оказалась скомпилированной под процессоры PowerPC, но, благо с программой идут исходники, то я очень просто перекомпилировал ее под Intel и изменил время с 5 секунд на 1 секунду — у меня даже за 2 секунды винчестер иногда успевает «уронить мрамор» :)

Итак, рецепт изготовления:

1. Скопируйте содерживое скачанного образа диска куда-нибудь в свой домашний каталог. Я скопировал в /Users/alf/declunk.

2. Запустите терминал, и выполните:
$ cd /Users/alf/declunk/source && make

3. В папке /Users/alf/declunk появился файл declunk — наша скомпилированная программа.

4. Теперь запустите файл install.command прямо из Finder двойным щелчком. В окне терминала вас просят ввести пароль root! Будьте к этому готовы.

5. Если в процессах появился declunk, то у вас все получилось!

В случае, если винчестер продолжает ронять мрамор :), то попробуйте в исходном файле ./source/declunk.c поменять значение в строке
int interval = 5;

на
int interval = 1;

или на свое, подобранное опытным путем. Затем перекомпилируйте и установите заново.

Удачи!
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

UPDATE:


Гениальный комментарий господина aOcean сподвиг меня копнуть глубже в поисках решения этой проблемы без «костылей». И для моего винчестера (FUJITSU MHV2060BHPL) решение оказалось таким:
1. Скачиваем с этой страницы порт hdparm под Windows (Как раз установил в BootCamp Windows XP для игры SPORE)
2. Устанавливаем и запускаем. В окне консоли пишем команды установки режима работы винчестера:
hdparm -B 254 hda
hdparm -M 254 hda

3. Выключаем и включаем компьютер.
Ура! Костыли declunk нам больше не нужны! Спасибо всем за дельные советы!

UPDATE2:


Для пользователей Linux появилась статья пользователя Decoyс расширенной информацией о решении проблем в данной ОС, и находится по этому адресу:
http://habrahabr.ru/blogs/ubuntu/43059/
Tags:
Hubs:
+45
Comments 85
Comments Comments 85

Articles