Парковка головок жесткого диска. Последствия неправильной настройки Mikrotik и критического бага в RouterOS. ⇡ WD Black и терабайтные пластины

Парковка головок жесткого диска. Последствия неправильной настройки Mikrotik и критического бага в RouterOS. ⇡ WD Black и терабайтные пластины

08.03.2019

Проблема была следующая: В игре (в игре Smite) наблюдались периодические лаги (примерно раз в 15 секунд), подвисание буквально на пол секунды, секунду лаги. По отзывам, такие же лаги наблюдаются у во многих играх, таких как Call of Duty, Call of Duty ww2, Вattlefield 1, Вattlefield 3, Вattlefield 4 и многих других.

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

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

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

Решение проблемы:

1. Если у Вас есть другой жесткий диск, попробуйте переставить игру на него.

Но если нет или у вас все диске компании Western Digital (WD), как это было у меня, то переходим ко второму пункту.

2. И так, у Вас Western Digital (WD) (обязательно убедитесь в этом)

— Первым делом, то, что нужно сделать – это зайти в биос и поменять режим работы диска с AHCI на IDE.
— Смотрим S.M.A.R.T. вашего жесткого диска, любой программой, умеющей это делать, например, AIDA64, Everest, Victoria и т.п. Нас интересует параметр 193 Load/Unload Cycle count, он показывает количество парковок головки. Сравниваем цифру на против этого параметра с цифрой напротив параметра 12 Power Cycle Count (количество циклов отключения питания). Если значения отличаются в десятки или сотни раз, то это наш случай!
— Нам потребуется утилита что бы сделать загрузочную флешку, такая как HP USB Disk Storage Tool и MS-DOS
— Далее Скачиваем программу WDIdle3.
— Далее: делаем загрузочную флешку DOS, распаковываем туда архив с нашей программой, перезагружаем компьютер, загружаемся с флешки, путем нажатия клавиши F8, при перезагрузке компьютера и у нас появится командная строка для работы с жесткими дисками.
— В эту строку мы вводим следующие команды.
— Первым делом команда wdidle3 /r она покажет текущее значение таймера в секундах. Т.е. через сколько времени бездействия головка паркуется. Вот там то обычно и стоит 12,8 – 15 секунда. Те 15 секунда через которые вы наблюдали лаги!
— Что бы совсем отключить парковку головки вводим команду wdidle3 /d.
— Что бы установить какое-либо значение, нам потребуется команда wdidle3 /s50, где s50 – будет число, отвечающее за колчество секунд, через которое головка будет парковаться.
Тут помните, что значения от 8 до 12,7 секунд можно устанавливать с точностью 0,1 с. Значения от 12,8 до 30 таймер ставится только на 30. Значения от 30 до 300 – с точностью по 30 с. Максимальное значение 300. Нажимаем enter.
— Проверяем, установилось ли значение wdidle3 /r
— Выходим перезагружаемся, проверяем в игре, лагов должно не быть! Ура!

PS: Бывает такое, что после данных манипуляций на компьютере появляются частые вылеты в синий экран и подобная нестабильная работа. Я вас рекомендую сначала полностью убрать парковку головки, проверить в игре, если лаги ушли – то оставить так и забыть, ничего диску не будет, но если уж вы хотите поставить какое-нибудь значение – ставьте 300, проверяйте, если вылетов нет – оставляйте и наслаждайтесь игрой!

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

Так же хочу заметить, что никаких криминальных и фатальных последствий в этом нет, доказано на личном опыте!

Всем добра!


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

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

Убедиться в наличии проблемы можно по быстро растущему значению параметра Load/Unload Cycle Count в S.M.A.R.T такого накопителя. Если значение данного параметра в сотни или тысячи раз отличается от параметра Start/Stop Count , то, очевидно, ваш винчестер подвержен данной проблеме.

Для насильственного отключения парковки в системе, работающей под управлением ОС Windows, воспользуемся портированной версией Linux-утилиты hdparm и стандартным Windows-планировщиком.

Скачать сборку hdparm для Windows можно в нашем архиве.

Для начала необходимо выяснить, как в терминологии linux называется препарируемый диск. Запускаем командную строку (cmd.exe ) с правами администратора и через нее вызываем hdparm.exe -i /dev/sdX :

C:\>"c:\Program Files (x86)\Tools\hdparm\hdparm.exe" -i /dev/sda /dev/sda: Model=ST1000DM003-1CH162 , FwRev=CC49, SerialNo= S1D85MBP Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4 BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=off CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455

Итак, в нашем случае диск Seagate обозначен через /dev/sda . Если бы он являлся вторым в системе, то его обозначение было бы /dev/sdb , если третьим – /dev/sdc , и т.д.

Теперь открываем Планировщик заданий (taskschd.msc ) и создаем новую задачу. На первой странице указываем произвольное название задачи, выбираем пользователя SYSTEM и указываем, что задача должна выполняться с максимальными правами доступа:

На закладке триггеров создаем триггер для выполнения задачи при загрузке системы:

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

Затем переходим на закладку действий и добавляем запуск hdparm.exe с ключом -B 255 /dev/sda , который отключит парковку на диске sda:

На этом настройка завершена – сохраняем созданную задачу и для проверки вручную запускаем ее из библиотеки заданий планировщика. Затем нажимаем на F5 для обновления библиотеки – если все прошло успешно, то в столбце с результатом последнего запуска нашего задания будет указан код “0x0″ .

Теперь можем открыть какую-либо утилиту мониторинга состояния диска – например, CrystalDisk Info – и убеждаемся, что APM на выбранном винчестере отключен. Данная задача будет запускаться при каждом включении компьютера или выходе его из режима сна, и, тем самым, поддерживать автопарковку отключенной.

ЗЫ: Пользуясь случаем, передаем большой привет прошивкописателям Seagate. Чтоб вам там всем икалось.

Работая в сервисном центре я всё чаще начал сталкиваться с поломками жестких дисков в ноутбуках. А странным совпадением в этой ситуации было то, что 80% этих дисков были объёмом в 500GB. Я даже перестал советовать своим друзьям и клиентам покупать диски этого объёма. И так продолжалось пару месяцев, пока я не обратил внимание на мой собственный жесткий диск (винчестер) в своём домашнем ноутбуке. А что же странное я заметил? Ответ простой. Периодические посторонние звуки. Звуки, которые были слышны только если очень хорошо прислушаться и только тогда, когда ноутбук стоял и я на нём ничего не делал.

Скажу сразу, у меня был жесткий диск Western Digital 640GB BLUE SATA2 2.5" WD6400BEVT и подозрений в его ненормальной работе до этого не возникало, регулярно мною просматривались значения S.M.A.R.T., с ними было всё впорядке, плохих и переназначенных секторов на жестком диске нет и небыло. Так что же это за тихие звуки, которые издавал жесткий диск? Я задался целью и начал искать подобные жалобы в интернете и сразу же нашел в чём проблема.

Оказывается, у современных жестких дисков имеется технология парковки блока головок при простое. Зачем? Для экономии ресурса самих головок, пластин диска и электроэнергии. Висящие над пластинами головки создают дополнительное аэродинамическое сопротивление, т.к. диски вращаются на довольно высокой скорости, то и воздух в банке вовлекается во вращение вместе с ними, а блок головок тормозит эти потоки воздуха. Получаемые при этом хаотические "порывы ветра" в свою очередь создают дополнительное сопротивление для вращения пластин и энергопотребление растёт, от этого увеличивается температура, которая вредна для головок. Для примера скажу, для дисков размером 3.5 дюйма, со скоростью вращения 7200 об/мин линейная скорость краёв пластин составляет примерно 120 км/час, а на таких скоростях воздух уже вполне осязаем, в чём вы можете лично убедиться высунув руку из машины. Так вот, когда компьютер отдыхает от работы, и жесткий диск вместе с ним, то через некоторое время вступают в работу функции управления экономией энергии (Advanced Power Management) и они то и паркуют головки жесткого диска. Всё бы ничего, но это самое время простоя до активизации функции энергосбережения в некоторых дисках составляет всего несколько секунд, в итоге выходит что диск паркует головки очень часто. Производители дисков утверждают что диски могут выдерживать без проблем до 1 миллиона парковок (в зависимости от модели диска), однако на практике количество парковок набирается очень быстро и через пол года работы диска это число может перевалить за 200 тысяч!

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

Так вот вернёмся, как говорится, к нашим баранам. У меня на моём диске WD6400BEVT за каждый день происходило около двух тысяч парковок, и за каких-нибудь два года он бы точно помер от постоянных парковок. Не знаю почему эта проблема была у моего диска, он был "СИНИЙ" BLUE, хотя обычно этим страдают модели "ЗЕЛЁНОЙ" GREEN серии дисков, главной целью которых какраз и является экономия электроэнергии.

Итак. Как же проверить ваш диск на предмет наличия подобной "болезни"? Ответ прост. Нужна программа, которая покажет вам параметры S.M.A.R.T.. Это может быть, например, программа AIDA64 (Everest) или подобная. AIDA64 (Everest) - программа мониторинга железа, в данном случае нас будет интересовать информация как на картинке.

Нас интересует прежде всего параметр С1 Load/Unload Cycle count - количество парковок головок, если этот параметр в несколько раз больше (или десятков раз) чем параметр 0С Power Cycle Count - количество циклов отключения питания диска (можно считать количеством раз включения компьютера если диск стоял в нём изначально). То это наш случай!

Что же нам поможет? А поможет нам маленькая программка под названием WDIdle3 . Она работает только с дисками Western Digital, хотя данная проблема встречается не только у дисков Western Digital. На скриншете, что вы видели выше, показатели S.M.A.R.T. жесткого диска Hitachi HTS721010A9E630 1TB 2.5" 7200об/мин. - он тоже страдает от частой парковки головок, но ему данная программа НЕ помогает. С дисками Hitachi ситуация немного сложнее и описывать её в этой статье я не буду.

Так вот. Для начала необходимо подготовить наш компьютер к "лечению", а если быть точнее, то:

  1. Переключить в биосе режим работы диска в IDE, если у вас установлен AHCI. На некоторых ноутбуках нельзя выставить IDE, поэтому диск необходимо извлечь и подключить к настольному компьютеру.
  2. Создать загрузочную дискету или USB-флэшку с DOS. Прочитайте как создать загрузочную флешку с DOS если не умеете этого делать.
  3. WDIdle3 - собственно сама утилита версии 1.05 , утилита создана для очень ограниченного набора дисков, на которых впервые проявилась эта проблема, но работает со всеми дисками WD.

Если все три пункта Вы уже сделали, то распаковываем из архива WDIdle3 и переписываем его на флешку или на дискету (смотря что вы используете). Рекомендуется отключить физически все другие диски, кроме того, с которым вы планируете работать и конечно же не забыть сделать бэкап данных (но кто же его будет делать то:) Итак, загружаемся с флэшки и в командной строке вводим:

wdidle3 /r

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

Итак, время таймера парковки головок узнали и запомнили либо записали. Теперь нам надо установить новое, большее время или вообще отключить таймер. Для этого запускаем программу командами:

wdidle3 /d

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

wdidle3 /s210

Команда устанавливает таймер на 210 сек. Необходимо помнить, при установке таймера от 8 до 12.7 секунды можно устанавливать с точностью 0.1 секунды, при установке от 12.8 до 30 секунд таймер всегда устанавливается на 30 секунд. Значения от 31 до 300 секунд устанавливаются с точностью в 30 секунд.

Справку по использованию утилиты можно получить командой:

wdidle3 /?

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

После изменения параметров нужно опять набрать:

wdidle3 /r

Тем самым мы можем убедиться что новое значение прописалось и уже после этого обязательно ВЫКЛЮЧИТЬ ПИТАНИЕ КОМПЬЮТЕРА подержав нажатой кнопку включения питания 3-5 секунд.

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

Буквально сегодня изменял время парковки головок на двух "ЗЕЛЁНЫХ" дисках Western Digital 2TB WD20EZRX и Western Digital 2TB WD20EARX - проблема исчезла, было время 8 секунд на каждом, стало 240:) Диски работают и не паркуются так часто, как это было до этого! Ура!

Несмотря на относительно большой объем материалов по Mikrotik в этом блоге, он не перекрывает и десятой части основных возможностей применения RouterOS и Mikrotik для домашних и офисных целей.

Помимо изложенных материалов, настоятельно рекомендую ознакомиться с основами сетевых технологий (basic), в будущем это здорово упростит вам жизнь при работе с оборудованием Mikrotik или любого другого вендора. Кто внимательный, тот наверняка заметил, что в верхней части сайта размещен большой горизонтальный банер, в котором предлагается пройти аналог курса по MTCNA. Если вы новичок, перед тем, как приступать к изучению материалов, направленных на сдачу экзамена MTCNA, я бы порекомендовал изучить краткий курс по основам сетевых технологий от того же автора.

Если вы хоть раз использовали самоподписные сертификаты на Mikrotik (пункт #5), тогда точно сталкивались с тем, что современные браузеры откажутся принимать такой сертификат, выдавая ошибку.

В сети предприятия, такой сертификат все же лучше, чем его отсутствие. Сегодня мы поговорим о том, как установить полноценный сертификат для WebFig и/или HotSpot. Для того, чтобы браузеры «не ругались» на сертификат, он должен быть валидным, необходимо соблюсти ряд условий.


Не успели на рынке появиться первые решения с поддержкой стандарта 802.11ad, как вслед за ними Qualcomm представил чипы с поддержкой новейшего стандарта 802.11ay.

Как вы помните, в середине 2017-го нам стало известно о тесном сотрудничестве Qualcomm и Mikrotik при внедрении стандарта 802.11ad. Все эти полтора года в Mikrotik активно работали над совершенствованием своих решений 60 ГГц. Как видим, в этом направлении идет достаточно активная работа. Буквально на днях мне на глаза попался интересный пресс-релиз компании Qualcomm, в котором идет речь о выпуске чипов с поддержкой стандарта 802.11ay.


Не успели Mikrotik анонсировать Newsletter 86 , как уже представлен 87-й релиз. В то же время, анонсированный ранее PWR-Line AP еще даже не поступил в розницу, на этом фоне 87-й релиз вызывает некоторое негодование.

Как показывают предыдущие анонсы и отдельные темы на официальном форуме, в Mikrotik всерьёз занялись за выпуск решений с поддержкой скоростей 10 Гбит/сек. То ли в компании решили не отставать от Ubiquiti с их решениями XG, то ли рынок действительно подрос уже и готов к внедрению скоростей 10 Гбит.

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

Конечно, это временная мера. В ближайшей перспективе я установлю в ноутбук SSD и жесткий диск будет использоваться лишь для хранения данных. Но сути вопроса это не отменяет. При работе от батареи диск слишком часто отключается, что не есть хорошо. Во-первых, это замедление работы системы. А во-вторых, снижение ресурса диска. Да, может небольшое, но снижение. Поэтому, наша задача заставить его работать всегда. Возможно, это снизит автономность, но не думаю, что настолько чтобы сожалеть об этом.

Самый простейший путь — использование настроек энергопитания в Windows. Но это не всегда работает. Например, в моем случае.

Будем решать эту проблему радикально, раз и навсегда. Для этого нам понадобится утилита hdparm . Ее надо скачать (исходя из битности вашей системы) и установить. Данная утилита хороша тем, что она универсальная и работает со всеми моделями дисков всех производителей. Затем идем в папку c:\Program Files (x86)\hdparm\ и настраиваем совместимость для hdparm.exe.

Затем где-нибудь в укромном месте сохраняем bat-файл следующего содержимого. Если надо применить настройку ко второму диску — замените hda на hdb. К третьему — замените hdb на hdc и т.д.

MS DOS

@echo off cd c:\Program Files (x86)\hdparm\ hdparm -B 255 hda exit

@echo off

cd c: \ ProgramFiles(x86) \ hdparm\

hdparm -B 255hda

exit

И файл с расширением vbs.

Visual Basic

Set WshShell = CreateObject("WScript.Shell") WshShell.Run chr(34) & "D:\alex\!!System\NoAPM.bat" & Chr(34), 0 Set WshShell = Nothing

Set WshShell = CreateObject ("WScript.Shell" )

WshShell . Run chr (34 ) & "D:\alex\!!System\NoAPM.bat" & Chr (34 ) , 0

Set WshShell = Nothing

После этого предполагается, что у нас получится два файла с именами NoAPM.bat и NoAPM.vbs. Обратите внимание, что в файле vbs надо указать актуальный путь к файлу с расширением bat!

Что же мы сделали? А мы сделали первый шаг к решению проблемы частых парковок головки жесткого диска. Утилита hdparm переключает режим APM (Advanced Power Management) жестокого диска в режим минимальной экономии и отключает пресловутую парковку при каждом случае. Теперь нам надо автоматизировать процесс применения данной настройки при загрузке компьютера и при выходе из спящего режима или гибернации. Тут все просто, используем встроенный в Windows планировщик.

Создаем задачу с настройками как на скриншоте.

Важно обратить внимание на несколько нюансов. На самой первой вкладке надо поставить галку «Выполнить с наивысшими правами». На вкладке с триггерами добавить два триггера: первый на активацию задачи при входе в систему любого пользователя, второй при событии в журнале «Система». Источник события указываем Power-Troubleshooter, а в качестве кода события 1. Действие у нас — запуск того самого vbs-файла. Это избавит от назойливого окна командной строки, который будет появляться на секунду при загрузке или выходе из сна. Теперь на вкладке «Условия» надо снять галку на пункте «Запускать только при работе от электросети». И наконец на последней вкладке снять галку «Останавливать задачу, выполняемую дольше».

Вот и все. Наша проблема решена. Теперь при запуске системы и входе любого пользователя будет принудительно отключаться энергосбережение у жесткого диска раз и навсегда. Аналогично после сна и/или гибернации. Проверить это можно, например, после загрузки, сна или гибернации вот так через утилиту CrystalDiskInfo.

P.S. Не забудьте отключить автозапуск hdparm в настройках Windows!



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows