Power Settings GPO — Управление питанием через GPO с использованием шаблонов

23.01.2010

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

В общем, стояла такая задача: приходившие в компанию новые системники IBM, имели на борту предустановленную операционку с настройками и установленным софтом. После того как их было установлено некоторое количество, обнаружилось что у пользователей стоят неправильные схемы питания. Компьютер по достижении определенного времени неиспользования уходил в ждущий режим и отрубал сетку, соответственно не отрабатывал внешний контроль и управление. Может быть, с точки зрения сохранения окружающей среды это и правильно, но мне как админу это мешало. Разобравшись в корне проблемы, я выяснил, что изначально IBM прописывает в DEFAULT профиль свою фирменную green настройку энергосбережения, в то время как мне нужна была обычная дефолтная схема «Домашний/ Настольный компьютер». Т.к. момент истины был упущен, проблема разделилась на два участка.


1. Все уже активные пользователи должны изменить настройку профиля энергосбережения (естественно это должно изменять централизованно административными методами).

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

Для изменения профилей уже существующих пользователей домена я воспользовался шаблоном GPO.

#if version <= 2
#endif

CLASS USER
CATEGORY !!WindowsComponents
CATEGORY !!PowerSettingsGPO
POLICY !!Powercheme
KEYNAME «Control Panel\PowerCfg»
#if version >= 4
SUPPORTED !!SUPPORTED_WindowXPSP1
#endif
VALUENAME «CurrentPowerPolicy»
VALUEON 0
VALUEOFF 3
END POLICY
END CATEGORY ;; PowerSettingsGPO
END CATEGORY ;; WindowsComponents

[strings]
WindowsComponents=»Control Panel»
PowerSettingsGPO=»Windows XP User Power setting GPO manage»
Powercheme=»Default power cheme»
SUPPORTED_WindowXPSP1=»XP SP1,SP2,SP3″

; These string below are used by Online Help
ADM_TITLE=»Group Policy settings for Windows Default power cheme»
COMPUTER=»Computer Configuration»
COMPUTER_EXPLAIN=»Contains settings that may only be used to configure Computers.»
SUPPORTEDON=»Requirements:»

все сохраняется в файл с расширением .adm

Структура шаблона довольная проста, последовательно описывается дерево gpo, потом определение политики, что политика делает (в какой ветке реестра и какой параметр изменяет), а в самом конце идут строковые переменные, которые будут отображаться в оснастке GPO.

Для того что бы подключить этот шаблон к GPO, необходимо в оснастке перейти в ветку User Configuration, выбрать группу Administrative Templates, правой кнопкой мыши вызвать контекстное меню и в нем через add/remove templates добавить предварительно подготовленный шаблон ADM.

После чего нужно перейти в ветку windows components, в меню view выбрать filtering и снять галочку Only show policy setting that can be fully managed

и мы увидим в ветке windows components новый параметр gpo «Windows XP Power setting GPO manage»

Теперь его можно изменять: в состоянии enabled у пользователя будет схема 0 (Домашний/ Настольный компьютер), в состоянии disabled схема 3 (вы может сами выбирать необходимую вам схему).

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

Однако эта настройка не повлияет на одного важного пользователя — .Default

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

Все дело в том, что через политики этот параметр не изменить, эта ветка реестра не доступна для изменения через GPO, дословно

«ADM files cannot reach into Registry hives other than HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER. As we talked previously, this key is under
HKEY_USERS, so you cannot address this key with ADM files.»

Т.е можно менять только HKLM и HKCU.

Соответственно необходимо, любым из доступных методов, внести изменения в ветку реестра HKEY_USERS\.DEFAULT\Control Panel\PowerCfg в параметр CurrentPowerPolicy, будь то скрипт или программка, распространенная через тот же GPO или WMI или PSEXEC и SMS. В общем, любым удобным для вас методом.

P.S. Самое неудобное в этом то, что таким маневром можно изменить только то, какой будет использоваться профиль, а вот настройки профиля изменить нельзя. Пробовать их изменить через реестр тоже вряд ли удастся. Дело в том, что они имеют бинарный вид, а информации как его толковать, в интернете крайне мало. Хотя я где то встречал описание алгоритма, можете поискать если так необходимо. Вместо всего этого можно использовать утилиту в стандартной поставке Windows. А ее возможности по управлению питанием просто офигительны (ну или около того)

Самая полезная команда POWERCFG /?

POWERCFG /LIST выводит список схем, можно создать свою и т.п.

мне нужна была определенная схема

POWERCFG /SETACTIVE «Включен постоянно»

для англоязычной версии соответствующее название.

Или powercfg /hibernate on для включения режима гибернации

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

Комментариев нет

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *