Начал разбирательство. В процессах постоянно висел msiexec и интенсивно кушал процессорное время, кроме него, тем же занимался spoolsv. Сразу возникло подозрение на драйвера принтеров.
Исследование и поиск в интернете показало, что подозрения не беспочвенны :-) Какой-то, уже который год не исправленный баг в драйверах HP приводит к тому, что "The HP MSI installer creates ~1.6 MILLION registry API calls as a result of over 4000 subkeys created in the registry for every printer mapped", т.е. msi инсталлер драйверов генерирует 1,6 миллиона запросов API и как результат более 4000 ключей в реестре на каждый подключенный к пользователю принтер!
Алгоритм починки следующий:
- Останавливаем сервис Print Spooler (spoolsv)
- На x32 системах идем в папку c:\windows\system32\spool\drivers\w32x86\ на x64 системах идем в папку C:\WINDOWS\system32\spool\drivers\x64\ и там во всех папках переименовываем все встреченные нам файлы cioum32.msi, HPZBDI32.msi, HPZBDI64.msi в cioum32.msi.old, HPZBDI32.msi.old, HPZBDI64.msi.old. Если в папках с драйверами HP вы нашли другие .msi файлы, то с ними тоже стоит попробовать сделать ту же операцию.
- Создаем в тех же папках пустые файлы с именами cioum32.msi, HPZBDI32.msi, HPZBDI64.msi
- Затем следует удалить ключи в реестре, это будут HKU\ .DEFAULT\Software\Hewlett-Packard и HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Hewlett-Packard. Лучше всего это сделать политикой GPO Client Side preferences и настроить ее так, чтобы она удаляла эти ключи непрерывно.
- Потом нужно поудалять профили пользователей на сервере, т.к. там у каждого лежит кусок реестра размером в 9 Mb и более.
Сервер моментально попустило :-)
Но на этом все не закончилось. Время от времени сервер "замирал", секунд на 5-10, причем наглухо. При этом было видно, что он очень и очень занят процессом winlogon.
Покопавшись, я нашел интересную статью в Microsoft When a user logs off a Windows Server 2003 Service Pack 1 or Service Pack 2-based terminal server, the terminal server may stop responding for several seconds
Сделал заказ на этот фикс, получил его по почте, причем письмо, почему-то, было на польском, установил и все стало ок!