Существует немало утилит, которые показывают состояние диска по технологии S.M.A.R.T. Все они не пригодны для использования в командной строке и скриптах, и, соответственно, в SCCM.
Тем не менее есть внутри Windows средство получения состояния диска – это WMI класс MSStorageDriver_FailurePredictStatus (его описание на текущий момент недоступно по какой-то причине, тем не менее он существует). Этот класс отображает только предупреждение о грядущем отказе диска. На практике этого достаточно для создания Compliance и своевременного реагирования технического персонала для замены диска.
Вот пример создания Compliance. Обратите внимание, что на целевом компьютере дисков может быть несколько и WMI класс возвращает в общем случае не одно, а несколько значений (String Array), и это надо учитывать при анализе (All of):
Существуют также классы для вывода таблиц фактических и пороговых значений S.M.A.R.T., но пользы от них нет без расшифровки, а расшифровка толком до сих пор не стандартизирована и может зависеть от производителя диска. Ниже по ссылкам вы можете найти примеры расшифровки. И если вам нужно, например, следить за температурой дисков конкретного производителя, то в принципе это можно сделать.
Полезные ссылки:
https://gallery.technet.microsoft.com/Get-FailingDrive-a9f8277c
http://www.cyberforum.ru/csharp-beginners/thread1099026.html
http://itknowledgeexchange.techtarget.com/powershell/smart-disks/
https://msdn.microsoft.com/en-us/library/windows/hardware/ff560587(v=vs.85).aspx
Filed under: Configuration Manager, Windows | Tagged: ConfigMgr, Configuration Manager, SCCM, Windows |
У меня проблема при применении подобного Compliance. Вижу ошибку 0x80041005 применения.
Когда разбирался с параметром PredictFailure WMI через утилиту, оказалось, что что параметр недоступен, не смотря на запуск из-под аккаунта с правами локального админа. Потребовалось запускать ее с UAC (run as administrator), тогда все ок.
Как заставить агент поступать так же? Или у меня где-то проблемы в начальной настройке?
SCCM клиент обычно запускается от учетной записи System — для нее нет проблем с доступом к классам WMI. Если у вас клиент SCCM запушен под иной учетной записью, то ей нужно предоставить соответствующие права на нужный класс WMI.
Да ошибся, под отдельным аккаунт агент устанавливается, работает он под system. Тем не менее получаю ошибку:
0x80041005 Type mismatch.
При ручном запросе параметров ситуация та, что описана.
Менять права, конечно, можно. Меня смущает то, что у вас все работает, насколько я понимаю, без специальных телодвижений. Да и глобально это делать …
Возможно влияет версия клиента https://social.technet.microsoft.com/Forums/en-US/81773f83-4a77-4e5d-accb-4105050e960e/type-mismatch-error-80041005-source-wmi?forum=configmanagersecurity
У меня 5.00.82239.1403 он же 2012 R2 SP1 CU3
Вы тогда тему на Technet-RU создайте для траблешутинга: тут не самое подходящее место для этого.
Тоже получил аналогичную ошибку, отчет ругается на несоответствие типа данных, если посмотреть WMI то у параметра тип Boolean, а на скрине String Array.
String Array потому что физических дисков может быть несколько, и запрос вернет не один объект, а несколько. При этом типа Boolean Array нет — есть только String Array. Возможно не во всех версиях SCCM это срабатывает, но всегда можно использовать для запроса скрипт и там точно соблюсти все нюансы.
[…] https://isazonov.wordpress.com/2016/05/24/sccm-check-disk-health/ […]
[…] https://isazonov.wordpress.com/2016/05/24/sccm-check-disk-health/ […]
[…] реализаций конечно же уже описаны, например, https://isazonov.wordpress.com/2016/05/24/sccm-check-disk-health/ https://habrahabr.ru/company/microsoft/blog/277999/ И много где ещё… Но в […]
[…] https://isazonov.wordpress.com/2016/05/24/sccm-check-disk-health/ […]
[…] https://isazonov.wordpress.com/2016/05/24/sccm-check-disk-health/ […]
Илья, пробовали ли вы вот это:
wmic diskdrive get status
Нет, не пробовал. Это по сути тоже самое.
Илья, таки проверил, «Data Type»
Правильно отрабатывает запрос, когда Data Type = Boolean и несколько дисков в системе. (CCM 1511/1606/1610)
[…] SCCM – контроль здоровья дисков. Интересный пример использования SCCM в качестве инструмента для централизованного анализа состояния S.M.A.R.T. на дисках Windows-компьютеров. […]