Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

Как эффективно провести инвентаризацию установленного софта


Андрей Бирюков

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

Как правило, в сетях большинства организаций у пользователей нет прав на установку приложений, и на все машины «залит» одинаковый образ операционной системы. Однако даже в таких строго построенных сетях рано или поздно возникает необходимость в установке отдельным пользователям программ, которые требуются им для работы. Так, например, бухгалтерам нужны различные конфигурации 1С, а менеджерам нужна определенная система управления проектами и так далее. Или же еще более сложная ситуация: ваша компания объединилась с другой, а у той организации корпоративным стандартом антивируса является, к примеру, Symantec, а в вашей – Trend Micro, и вам необходимо узнать, сколько лицензий того и другого программного продукта необходимо продлить в следующем году. Конечно, идеальным решением во всех описанных выше ситуациях было бы четкое документирование сисадмином каждого запроса на установку программного обеспечения. Однако в реальности все обстоит не так хорошо, и администратору, особенно в крупной сети, необходимо какое-либо программное средство для автоматического сбора информации о приложениях. В данной статье для решения поставленной задачи предлагается сценарий Windows Script Host, который с помощью групповой политики Active Directory будет запускаться на клиентских машинах, собирать в текстовый файл информацию об установленных приложениях и затем сохранять ее на разделяемом сетевом ресурсе.

Теоретическая часть

Как известно, информация об установленных в ОС Windows приложениях хранится в реестре. Точнее, в разделе HKEY_LOCAL_MACHINESoftware. Если зайти в эту ветвь реестра, то можно увидеть подразделы, которые содержат информацию об установленных приложениях, в частности, название каждого подраздела соответствует установленному приложению. Конечно, можно собирать информацию о приложениях отсюда, однако это не самый лучший вариант, так как в этой ветке реестра также содержится много служебной информации, которая может существенно осложнить сбор данных и в конечном итоге замедлить работу системы. Гораздо удобнее воспользоваться веткой HKLMSoftwareMicrosoftWindowsCurrentVersionUninstall. Как парадоксально это ни выглядит, но каждое приложение после установки прописывает свои данные в эту ветку реестра. Причем все данные содержат несколько обязательных полей, например поле DisplayName, с помощью которого мы и будем идентифицировать приложения, установленные в системе. На рабочей машине это может выглядеть, например, вот так (см. рис. 1).

Рисунок 1. Содержимое ветки реестра Uninstall

Таким образом, для того чтобы собрать информацию об установленных в системе пользовательских приложениях, необходимо обойти значения ветки реестра Uninstall и получить содержимое параметра DisplayName. Этот параметр является обязательным для записей об установленных приложениях данной ветки и содержит значение строкового типа, которое удобно сохранять в текстовом файле. Если параметр ветки Uninstall не содержит поля DisplayName, то значит это не установленное приложение, а какая-то служебная информация, и заносить эти данные в отчет не требуется. Таким вот довольно простым способом можно собрать необходимую нам информацию.

Итак, рассмотрев теоретические аспекты написания данного сценария, перейдем к практической части. Исходный текст сценария, который был взят за основу, можно найти по адресу http://www.computerperformance.co.uk/ezine/ezine63.htm.

Практическая часть

Для программной реализации поставленной задачи мы традиционно воспользуемся WSH-сценарием, написанным на языке VBScript. Все собранные данные будем сохранять в текстовом файле, название которого будет состоять из имени компьютера, на котором выполнялся сценарий. Так как сохранять файлы с результатами на локальных дисках клиентских машин, а потом забирать их оттуда вручную – решение не самое удачное, особенно в больших сетях, то мы должны подготовить на сервере сетевую папку, с правами на запись для администратора. А наш сценарий должен уметь подключать эту папку в качестве сетевого диска, сохранять туда файлы с результатами и затем отключать. Сделать эти простые действия можно с помощью следующих команд VBScript:

Листинг 1. Подключение сетевого диска

 

On Error Resume Next


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147] [148]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100