Общий анализ проблемы
В связи с широким применение комьютеров на предприятиях возникает проблема
администрирования и менеджмента большого компьютерного парка. В частности
возникает проблема учета установленного на всех копьютерах программного
обеспечения. Эта проблема крайне актуальна для предприятий, на которых такой
учет не велся ранее. Поэтому мною было принято решение разработать средство,
позволяющее автоматизировать процедуру сбора этой информации. Это возможно т.к.
вся информация о всем установленном в системе программном обеспечении хранится
в реесте Windows. В качестве сетевой среды для получения информации с
удаленного компьютера вполне стественно использовать широко распространенный
стек протоколов TCP/IP. Возможны следующие решения данной проблемы
-- разработка программного коплекса типа
клиент/сервер. Причем клиент, находящийся на удаленном компьютере получает
сведения из локалього реестра о установленном программном обеспечении и
пересылает их серверу. Таким образом у сервера в итоге получается список всего
установленного ПО на всех машинах. Недостаток данного метода: необходимость
установки клиента на все рабочие станции. Хотя этот процесс также можно
автоматизировать (например автоматически загружая клиент в ADMIN$ на удаленной
машине и запуская его там, но тогда клиент должен быть реализован в виде
службы) но это только усложняет разработку.
-- более оптимальным является написание
скрипта с использованием WMI. WMI (Windows Management Instrumentation)
реализация Микрософтом концепции управления предприятием, основанной на
веб-технологиях. Более подробно о WMI вы можете узнать в (1) В принципе
технолоия WMI поддерживается всеми языками программирования, которым доступна
технология ActiveX. В данном случае использовался именно VBscript из-за его
простоты, отсутсвии необходимости компиляции и т.п.
Разработка скрипта
Исходный текст разработанного скрипта содержится в файле soft.vbs
. Скрипт последовательно подключается к компьютерам из списка (см. ниже)
получает список установленно программного обеспечения и сохраняет его в виде
таблицы в формате Excel
Скрипт интерпретируется(выполняется) стандартным командным процессором Windows
следующей командой:
cscript soft.vbs
Для работоспособности скрипта необходимо следующее:
1. На удаленной машине должен быть активен и настроен сервис WMI. Возможно
использование настроек по умолчанию
2. На удаленной и на машине администратора должен быть пользователь с
одинаковым именем и паролем. Т.е. администратор должен выполнить локальный вход
на своей машине под такой учетной записью, которая присутсвует на удаленной
машине (там может выполнить локальный вход и другая учетная запись)
3. На удаленной машине локальная политика сетевой безопасности: модель
совместного доступа и безопастности для локальных учетных записей должна быть
установлена в ОБЫЧНУЮ: локальные пользователи удостоверяются как они сами
4. На локальной машине должен быть установлен Microsotf Excel для формирования
фалйа отчета с именем soft.xls, который появиться после исолнения скрипта в
папке "мои документы" текущего пользователя
5. Текстовый файл с именем complist.txt, в котором содержится список
комьютеров, следующего формата
NetBIOS-имя или IP-адрес компьютера
NetBIOS-имя или IP-адрес компьютера
NetBIOS-имя или IP-адрес компьютера
.
.
.
Например complist.txt
Ссылки
журнал <Системный администратор DESIGNTIMESP=14267> за
декабрь 2005 года
Как эффективно провести инвентаризацию установленного софта Автор: Андрей
Бирюков