• Windows Server 2003 – Пустой список установленных программ в Add/Remove Programs и ошибки исполнения сценариев VBScript

    Столкнулся с ситуацией, когда на одном из серверов с Windows Server 2003 перестало отображаться содержимое списка установленных программ:

    image

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

    image

    Уловить момент, когда и по какой причине начались эти проблемы по логам, - не представилось возможным и поэтому осталось хотя бы попробовать победить «последствия».

    В статье KB266668 - Add/Remove Programs tool displays installed programs incorrectly было найдено описание одной из имеющихся проблем и методов её решения. В итоге получился вот такой командный файл перерегистрации некоторых системных компонент, запуск которого с последующей перезагрузкой ОС вернул сервер к работоспособному состоянию:

    regsvr32 "%systemroot%System32Appwiz.cpl"

    regsvr32 "%systemroot%System32Mshtml.dll"

    regsvr32 "%systemroot%System32Jscript.dll"

    regsvr32 "%systemroot%System32VBscript.dll"

    regsvr32 "%systemroot%System32Msi.dll"

    regsvr32 "C:Program FilesCommon FilesSystemOle DBOledb32.dll"

    regsvr32 "C:Program FilesCommon FilesSystemAdoMsado15.dll"

    regsvr32 "%systemroot%System32Mshtmled.dll"

  • Windows Server 2008 как централизованный сервер факсов

    imageНе смотря на то, что на сегодняшний день такие вещи как Email и IM достаточно плотно вошли в систему информационного обмена между организациями, использование факсов по-прежнему имеет место быть. Мне самому несколько раз приходилось сталкиваться на практике с ситуацией, когда возникала необходимость отправлять факс через факс-аппарат. Последний опыт использования аппарата с некорректно работающим захватчиком бумаги был совсем «грустным». Чтобы сделать работу с факсами в организации более удобной и общедоступной (чтобы любой пользователь корпоративной сети не имеющий физического доступа к факс-аппаратам или факс-модемам мог самостоятельно, как отправить, так и принять факс) мы можем воспользоваться встроенным функционалом Windows Server и развернуть централизованный сервер факсов. В качестве опорной платформы для построения сервера факсов я в своём примере выбрал ОС Windows Server 2008 Standard 32-bit по причине того, что имеющаяся на руках мульти-модемная плата Digi AccelePort RAS 4 не имеет на сегодняшний день драйверов для 64-битных систем Windows, о чем отмечалось ранее.

    Читать далее...

  • Windows XP SP3 - настраиваем путь к дистрибутиву через GPP

    В некоторых случаях может возникнуть необходимость пакетного добавления каких-либо системных компонент Windows XP на большом количестве клиентских компьютеров. В ходе этого процесса Windows XP может потребовать доступ к дистрибутивному носителю ОС.

    Воспользуемся механизмом Group Policy Preferences для централизованной раздачи таким клиентам сведений о месторасположении дистрибутивных файлов в сети. Информация о пути, использованном для установки ОС и её компонент, Windows XP может хранить в значениях ключей реестра SourcePath и ServicePackSourcePath в ветке HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionSetup.

    Сделаем на файловом сервере каталог общего доступа и перепишем в него содержимое дистрибутивного носителя ОС (понадобится дистрибутив с последним интегрированным пакетом обновлений)

    Откроем редактор доменной групповой политики, распространяемой на наши клиентские компьютеры, в разделе Computer Configuration > Preferences > Windows Settings > Registry и вызовем мастер создания новой записи реестра.

    image

    В мастере выберем подключение к любому клиентскому компьютеру с Windows XP для того чтобы взять с него информацию об интересующих нас ключах реестра

    image

    После нажатия кнопки Finish мастер в виде вложенных папок скопирует структуру контейнеров реестра и добавит два интересующих нас ключа. Откроем свойства этих элементов и установим тип действия (Action) – Update, а в поле значения (Value data) введём сетевой путь к общему каталогу с дистрибутивом ОС для параметра SourcePath:

    clip_image005

    Также указываем аналогичное значение для параметра ServicePackSourcePath (подразумевается, что мы имеем дистрибутив с интегрированным в него пакетом исправлений):

    clip_image006

    Небольшое замечание:
    В ходе использования мастера добавления ключей реестра, я заметил один интересный глюк. Дело в том что, по завершению работы мастер сам заполняет значения полей Hive и Key Path, однако если после создания мастером такого элемента не зайти в его свойства и в ручную не выбрать раздел реестра (Hive), оно останется фактически пустым…

    image

    Это выяснилось после того как на клиентах упорно не хотел обновляться указанный ключ реестра, зато вместо этого создавался подобный ключ в пользовательском разделе реестра, который, как мы понимаем, никакой силы не имеет. После того как я открыл свойства элемента реестра, созданного мастером в GPP и вручную выбрал раздел HKEY_LOCAL_MACHINE… политика заработала так, как мы этого от неё ждали.

    image

    Если данная групповая политика применяется к общей массе клиентских компьютеров, в составе которых есть не только Windows XP, мы можем ограничить применение данной настройки реестра по версии ОС. Для этого откроем свойства корневой папки иерархии папок, сделанной мастером добавления, и на закладке Common включим режим нацеливания Item-level targeting

    image

    По кнопке Targeting добавим новое условие, означающее то, что данная настройка реестра будет применяться только компьютерам с ОС Windows XP

    clip_image012

    Если же по каким-то причинам в вашей организации не используются механизмы Group Policy Preferences, то можно настроить данный параметр и другими способам, например импортом нужной информации в реестр через логон-скрипт из *.reg файла с содержимым примерно следующего содержания:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionSetup]

    "SourcePath"="\\server\Sources\winxp_pro_sp3_x86_ru"

    "ServicePackSourcePath"="\\server\Sources\winxp_pro_sp3_x86_ru"

  • SharePoint 2010–прячем RecentChangesMenu

    При использовании встроенных средств создания и правки страниц через веб-интерфейс SharePoint 2010 создаёт специальную библиотеку документов в которой сохраняются такие веб-страницы.

    image

    Если в главном меню сайта (меню «Быстрый запуск») мы создадим ссылку на такую страницу, то при переходе по этой ссылке главное меню будет смещаться появляющимся меню последних изменений..

    image

    Такое динамическое поведение интерфейса смущает многих пользователей, и поэтому мы отключим появление данного блока меню. Для этого на сервере SharePoint 2010 найдём файл wkpst.aspx в каталоге C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14TEMPLATEDocumentTemplates. В файле найдём блок кода:

    <asp:Content ContentPlaceHolderId="PlaceHolderLeftActions" runat="server">

          <SharePoint:RecentChangesMenu runat="server" id="RecentChanges"/>

    </asp:Content>

    …и добавим в него признак отключения визуализации, добавив visible="false":

    <asp:Content ContentPlaceHolderId="PlaceHolderLeftActions" runat="server">

          <SharePoint:RecentChangesMenu runat="server" id="RecentChanges" visible="false"/>

    </asp:Content>

  • Работа с томами NTFS с помощью Gnome Partition Editor (GParted)

    В процессе подготовки к развёртыванию SP1 на Windows Server 2008 R2 на одном из серверов обнаружилась нехватка свободного места на системном диске. При этом единственный имеющийся диск на этом сервере был разбит таким образом, что после системного тома был сделан том, используемый для работы приложений.

    image

    Используя встроенные средства консоли управления дисками в данной конфигурации, расширить том с ОС не представлялось возможным, так как опция расширения в данном случае попросту недоступна

    image

    В данной ситуации, фактически нам требовалось сместить раздел с данными в конец диска для того, чтобы сделать возможным расширение системного тома с использованием высвободившегося смежного пространства. Для решения такого рода задач конечно существуют коммерческие продукты такие как Acronis Disk Director, но за частую нам нужно решать подобные задачи «здесь и сейчас» не имея при этом лицензий на подобные вещи. В качестве альтернативного метода был выбран продукт Gnome Partition Editor (GParted) свободно распространяемый по лицензии GNU General Public License.

    Получить подробную информацию о функциональных возможностях GParted и загрузить текущую стабильную версию можно с домашней страницы проекта. Здесь можно скачать загрузочный образ диска (в нашем случае это файл gparted-live-0.8.0-1.iso размером около 116 Mb), который при необходимости можно записать на CD с помощью ещё одной довольно качественной свободно распространяемой программы ImgBurn.

    Выполняем загрузку системы с полученного загрузочного диска и при загрузке выбираем параметр по умолчанию GParted Live

    image

    В появившемся меню управления раскладками клавиатуры оставляем значение по умолчанию «Don`t touch keymap»

    image

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

    image

    Далее выбирая значение 0 (по умолчанию), соглашаемся с тем что загружаемая система автоматически попытается настроить параметры графической среды:

    image

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

    image

    Первым делом, нам нужно выполнить смещение раздела с данными в конец физического диска. Для этого, откроем контекстное меню на разделе с данными и выберем пункт Resize/Move

    image

    В открывшейся диалоговой форме мышью перетащим раздел в конец диска.

    image

    При этом значения свободного места до и после тома должны измениться соответственным образом. Нажимаем ставшую доступной кнопку Resize/Move

    image

    При этом мы получим информационное предупреждение о том, что проведение некоторого рода манипуляций над загрузочными томами может привести к невозможности последующей загрузки ОС и о том, что описание того как в таких случаях поступать для восстановления загрузчика можно найти в разделе FAQ сайта GParted

    image

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

    image

    В открывшейся диалоговой форма изменения системного тома с помощью мыши растянем том на всё имеющееся в наличии доступное место…

    image

    Таким образом, мы лишь создали последовательность задач, которые мы хотим поручить GParted. Задачи будут последовательно выполняться в том порядке в котором мы их настраивали и как они отображаются в нижней части главного диалогового окна GParted. Для запуска выполнения последовательности задач нажимаем кнопку Apply.

    image

    Нас в последний раз спрашивают о том, не сошли ли мы с ума, и сделали мы резервную копию данных, которые мы можем потерять…

    image

    После нашего утвердительного ответа открывается диалоговое окно, подробно отображающее ход выполнения всех операций…

    image

    После того как все операции успешно выполнены, извлекаем загрузочный диск GParted и загружаемся в ОС на системном томе. В процессе загрузке ОС Windows определит изменение конфигурации логических разделов и автоматически запустит процедуру проверки каждого изменённого тома…

    image

    После успешной проверки (а я очень надеюсь, что у вас она будет успешной :)) мы получаем необходимый нам результат:

    image

    Обратите внимание на то, что данный пример успешной работы GParted описан на продуктивной виртуальной машине развёрнутой на гипервизоре Hyper-V c диском VHD фиксированного размера.

  • System Center DPM 2010 QFE Rollup 2 KB2465832 (3.0.7707.0)

    Стал доступен для загрузки накопительный пакет обновлений для DPM 2010 RTM – System Center DPM 2010 QFE Rollup 2 (KB2465832) который изменяет версию DPM до 3.0.7707.00

    Описание: Description of the hotfix rollup package for System Center Data Protection Manager 2010: March, 2011
    URL для скачивания: QFE Rollup Package 2 for System Center Data Protection Manager 2010

    Данный пакет применим ко всем языковым версиям DPM 2010.
    После установки данного обновления перезагрузка DPM сервера не потребуется. Обновление клиентов DPM можно сделать как с консоли DPM так и вручную (обе процедуры описаны в разделе “Installation instructions” по первой ссылке). После обновления клиентов DPM перезагрузка защищаемых серверов не потребуется.

    Для установки QFE Rollup 2 на DPM 2010 работающий на базе Windows Server 2008 R2 необходимо обеспечить наличие в системе установленного обновления KB2223201 - Event ID 82 may be logged in the System log after you extend the protected dynamic volume on a Windows 7-based or Windows Server 2008 R2-based computer. Установка этого обновления потребует перезапуска сервера DPM. Если вы уже успели установить SP1 для Windows Server 2008 R2, то предустановка этого обновления не потребуется так как оно входит в состав SP1. Полный список обновлений, входящих в состав SP1 для Windows Server 2008 R2 можно найти по ссылке Documentation for Windows 7 and Windows Server 2008 R2 Service Pack 1 (KB976932) в документе “Hotfixes and Security Updates included in Windows 7 and Windows Server 2008 R2 Service Pack 1.xls”.

    Для установки QFE Rollup 2 на DPM 2010 работающий на базе Windows Server 2008 необходимо обеспечить наличие в системе установленного обновления KB2279787 - Event ID 82 may be recorded in the System log after you extend the protected dynamic volume on a computer that is running Windows Vista or Windows Server 2008

    Стоит отметить, что с недавнего времени список продуктов обновляемых через WSUS расширился значением “Microsoft System Center DPM 2010” и это подразумевает то, что теперь выходящие накопительные пакеты обновлений будут будут доступны через службу WSUS. По крайней мере, после включения этого продукта, на моём сервере WSUS появился DPM 2010 QFE Rollup 1.

  • Windows Server 2008 - MMC could not create the snap-in

    Развернул свежую Windows Server 2008, установил, как полагается, на неё все текущие обновления с WSUS и после перезагрузки обнаружил проблему с работой mmc.exe. При попытке использования сборных оснасток, таких как Server Manager или некоторых отдельных типа Event Viewer система стала возвращать ошибку «MMC could not create the snap-in»

    image

    В логе ServerManager.log расположенном в C:WindowsLogs не удалось обнаружить никаких событий, происходящих после установки всей пачки последних обновлений. Чтобы проверить то, что проблема заключается не в повреждении файлов какого-либо из обновлений, пришлось прибегнуть к помощи средства System Update Readiness Tool. Описание и ссылки на свежие версии этой утилиты можно найти в статье KB947821 - Description of the System Update Readiness Tool for Windows Vista, for Windows Server 2008, for Windows 7, and for Windows Server 2008 R2

    В процессе установки System Update Readiness Tool выполняет проверку всех установленных обновлений и создаёт лог-файлы из которых можно узнать результат проверки:

    • %SYSTEMROOT%LogsCBSCheckSUR.log
    • %SYSTEMROOT%LogsCBSCheckSUR.persist.log

    В моём случае проверка не выявила никаких проблем с файлами обновлений:

    image

    В большом количестве источников в интернете можно найти информацию о подобной проблеме, её корнях и способах решения. Есть даже такие кардинальные, как например, описано в одном блоге: Jared Heinrichs Blog - MMC error 18ea3f92-d6aa–41d9-a205-2023400c8fbb

    Jared Heinrichs предлагает произвести замену конфигурационного файла Framework в каталоге C:WindowsMicrosoft.NETFrameworkv2.0.50727CONFIG (для 64-битных систем соответственно - C:WindowsMicrosoft.NETFramework64v2.0.50727CONFIG). А именно имеющийся файл machine.config (который в большинстве случаев и является источником проблемы) переименовать machine.config.bad а файл machine.config.default скопировать в эту же папку с новым именем machine.config, то есть восстановить старый конфигурационный файл по умолчанию.

    Из других источников выяснилось, что при установке .NET Framework 3.5 в файл machine.config в указанном каталоге могут быть внесены некорректные данные и поэтому я решил попробовать удалить эту версию .NET Framework 3.5 штатным способом. Итак, используя оснастку установки/удаления программ, был удалён пакет Microsoft .NET Framework 3.5 Service Pack 1 (KB951847) и сразу после этого все оснастки mmc заработали.

    После запроса к WSUS, система опять предложила установить данное обновление. Устанавливаем его..

    image

    Сразу после этого делаем повторный запрос к WSUS и устанавливаем несколько доступных обновлений к переустановленной версии .NET Framework 3.5 SP1:

    image

    После этого все оснастки работают, так что можно считать этот метод ещё одним работающим вариантом штатного решения проблемы.

  • Digi AccelePort RAS 4 не работает на Windows x64

    Имеется на руках интересная железка - Мультимодемная плата Digi AccelePort RAS 4 Europe (4 x Modem RJ-11 ports) PCI (P/N #77000617).

    image

    В былые времена она использовалась для организации сервера служб RAS, теперь появилось желание заюзать её для организации сервера факсов. Разумеется, первым делом я пошёл на сайт разработчика,… и с огорчением для себя обнаружил что поддержка этой платы уже прекращена и к тому же из списка доступных драйверов для платформы Windows самыми “свежими” является драйвер версии 5.0.314.0 (30.06.2003) для Windows Server 2003… Ни на на что особо не рассчитывая, я всё таки решил попробовать “подружить” эту железку с Windows Server 2008 R2… День мытарств, как я и предполагал, ни к чему не привёл. ОС наотрез отказалась глотать недружественный драйвер, который мало того что не имел цифровой подписи, был рассчитан на более старую систему и к тому же вообще был 32-битным. В статье Windows Hardware Developer Center - INF Requirements for 64-bit Systems нашёл описание того как же всё-таки можно попытаться насильственным способом навязать системе имеющийся в нашем распоряжении драйвер. Для этого достаточно добавить ключ реестра REG_DWORD с именем DisableDecoratedModelsRequirement в ветке HKLMSoftwareMicrosoftWindowsCurrentVersionSetup и присвоить ему значение отличное от нуля, например 1. Для вступления в силу изменений потребуется перезагрузка. После этого драйвер был таки съеден системой, однако работать так и не захотел. После изучения лог-файла установки в C:Windowsinfsetupapi.dev.log стало понятно что ОС органически не переваривает драйвер dgardxb.sys…
    Официальный форум тех.поддержки Digi оказался довольно скудным и поэтому последней надеждой стало обращение в техподдержку Digi. Разместив обращение на сайте тех.поддержки Digi я получил ответ, от которого мне совсем стало грустно.. 

    image

    На сегодняшний день, когда использование 64-битных серверных систем уже вошло в стандарт де факто, очень удивительно наблюдать подобного рода явления, когда такой серьёзный вендор (как я полагал) как Digi не имеет и даже не планирует поддержку своих устройств в 64-битных системах.

  • Запрос авторизации Outlook при переключении БД Exchange или перезагрузке ноды NLB

    imageБыло замечено, что при выполнении процедуры переключения активной копии БД Exchange Server 2010 в группе DAG с одного сервера на другой (Database Switchover), а так же при проверке механизма аварийного переключения (Database Failover) на клиентах Outlook 2007/2010 происходит кратковременный разрыв соединения с сервером Exchange, сопровождаемый появлением окна авторизации для ввода имени пользователя и пароля. При этом, если без ввода учетных данных просто перезапустить Outlook, - соединение успешно восстанавливается. После проведения изыскательных мероприятий выяснилось то, что клиент Outlook в момент кратковременной потери MAPI (RPC) соединения c активным экземпляром БД Exchange пытается использовать альтернативный метод доступа – RPC over HTTP, то есть пытается использовать встроенный механизм мобильного клиента Outlook Anywhere. И в нашем случае это происходит из-за того, что на стороне серверов клиентского доступа компонента Outlook Anywhere настроена на использование Basic Authentication.

    Одним из методов решения данной проблемы может быть отключение использования встроенного механизма Outlook Anywhere в клиентах Outlook, включённого по умолчанию. Для этого в Outlook откроем свойства учетной записи > «Другие настройки» > перейдём на закладку «Подключение» и отключим флажок «Подключение к Microsoft Exchange по протоколу HTTP»:

    image

    Если стоит задача отключить данный механизм массово на всех клиентах, то можно это выполнить, например, с помощью доменных групповых политик – GPO. При попытке использовать ADMX шаблоны групповых политик в домене Windows Server 2008/2008 R2 имеющихся в комплекте с MS Office 2007/2010 вы можете убедиться в том, что они не имеют параметров для настройки мобильного клиента Outlook.
    В базе знаний Microsoft можно найти две статьи описывающие проблему невозможности настройки параметров мобильного клиента Outlook c помощью стандартных шаблонов GPO:

    В этих статьях нам доступны для загрузки шаблоны GPO в уже устаревшем формате – *.adm. Мы можем воспользоваться средством ADMX Migrator для того чтобы сконвертировать полученные ADM файлы в формат ADMX.

    После конвертации из каждого файла *.adm мы получим по два файла – *.admx (шаблон GPO) и *.adml (файл языкового описания для шаблона GPO).
    Зададим полученным файлам соответствующие имена:

    • Для Outlook 2007: outlk12_961112.admx и outlk12_961112.adml
    • Для Outlook 2010: outlk14_2426686.admx и outlk14_2426686.adml

    Для того чтобы в консоли управления групповыми политиками наши новые шаблоны смотрелись более наглядно, чем в том виде в котором они представлены по умолчанию, внесём некоторые корректировки в языковые файлы:

    В файле outlk12_961112.adml строку, описывающую отображаемое имя раздела GPO:

    <string id="L_MicrosoftOfficeOutlook12-Article961112">Article 961112 Policy Settings</string>

    заменим на строку:

    <string id="L_MicrosoftOfficeOutlook12-Article961112">Microsoft Office Outlook 2007 KB961112</string>

    В файле outlk14_2426686.adml строку, описывающую отображаемое имя раздела GPO:

    <string id="L_MicrosoftOfficeOutlook">Microsoft Outlook 2010</string>

    заменим на строку:

    <string id="L_MicrosoftOfficeOutlook">Microsoft Outlook 2010 KB2426686</string>

    Скопируем полученные в результате шаблоны outlk12_961112.admx и outlk14_2426686.admx в каталог центрального доменного хранилища шаблонов GPO - \domain.com\SYSVOL\domain.com\Policies\PolicyDefinitions
    Языковые файлы outlk12_961112.adml и outlk14_2426686.adml скопируем в это же размещение в подкаталог en-us.

    После этого, при работе с оснасткой редактирования доменных групповых политик Group Policy Management Editor (gpmc.msc) у нас появится возможность задавать соответствующие параметры:

    image

    Для того чтобы полностью отключить попытки Outlook использовать протокол HTTP, параметр RPC/HTTP Connection Flags должен быть включён и его значение должно быть установлено в No Flags:

    image

    После вступления в силу данного параметра GPO, для всех клиентских профилей будет добавлено соответствующее значение в куст реестра HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Outlook\RPC (для Outlook 2007) или HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\Outlook\RPC (для Outlook 2010):

    image

    …а в свойствах учетной записи Outlook параметры настройки мобильного клиента Outlook станут недоступны для изменений:

    image

    В развитие темы запросов авторизации Outlook можно также отметить то, что из практики замечено то, что в некоторых случаях перезагрузка одной из нод NLB кластера, обслуживающего массив Client Access Array, так же может порождать подобную проблему. Поэтому в случае если в рабочее время нам потребуется выполнить обслуживание серверов Client Access входящих в NLB кластер с необходимостью их перезагрузки, - перед выполнением перезагрузки в оснастке Network Load Balancing Manager соответствующий сервер желательно перевести в режим DRAINSTOP

    image

    При этом после перезагрузки нода NLB будет автоматически включаться в работу кластера если в оснастке NLB Manager в свойствах этого хоста значение параметра Default state установлено в Starded:

    image

    Дополнительная информация:

    Обновление 20.02.2018

    По просьбам трудящихся, у которых не получается самостоятельно сконвертировать ADM шаблоны, добавляю ссылку на готовые файлы: KB961112 & KB2426686 ADMX

  • DPM 2010 - Резервное копирование БД Exchange Server 2010 в группе DAG

    imageРассмотрим использование DPM 2010 в качестве системы резервного копирования баз данных роли Mailbox Exchange Server 2010 на конкретном примере. В качестве исходных данных будем считать, что мы имеем два сервера Exchange Server 2010 с ролью Mailbox объединённых в группу Database Availability Group (DAG), на которых расположено шесть баз данных почтовых ящиков. Параллельно поставим перед собой задачу распределить нагрузку по двум серверам Mailbox. Читать далее...