eабораторная работа №...

100
Лабораторная работа № 3 по учебной дисциплине «Основы операционных систем» Тема работы: Автоматизация системного администрирования серверов на основе ОС семейства MS Windows 2k Цели работы: 1. Получить практические навыки установки и настройки серверов на основе ОС семейства MS Windows 2k. 2. Изучить на типовых примерах сценарии системного администрирования серверов на основе ОС семейства MS Windows 2k (на языках VBScript, JScript, Power Shell). 3. Разработать собственные сценарии для решения задач администрирования серверных ОС. Программа работы: 1. Используя методические указания к настоящей работе, а также рекомендованные в списке использованных источников учебные пособия, изучить основные этапы установки (из дистрибутива) ОС MS Windows 2k (серверная конфигурация) и настройки системных сервисов. 2. Используя технологию виртуальных машин (Oracle VirtualBox): создать аппаратную платформу виртуальной машины для сервера ОС MS Windows 2k, обеспечив возможность её подключения к компьютерной сети; выполнить установку (инсталляцию) сервера ОС MS Windows 2k выбранной сборки (MS Windows Server 2003 Professional Edition или MS Windows Server 2003 Enterprise Edition). 3. Изучить на учебных примерах (выполняемых с правами администратора ОС) практику настройки системных сервисов серверов ОС семейства MS Windows 2k (режим локального администрирования). 4. Используя технологию виртуальных машин (Oracle VirtualBox): импортировать в среду менеджера виртуальных машин (Oracle VirtualBox) виртуальную машину с ОС MS Windows XP (ОС MS Windows 8.1), обеспечив возможностью её подключения к компьютерной сети (при необходимости дополнить аппаратную платформу сетевым адаптером); создать сегмент виртуальной компьютерной сети с выбранным пространством IP-адресов для локальных сетей (192.168.x.x);

Upload: others

Post on 13-Aug-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Лабораторная работа № 3

по учебной дисциплине «Основы операционных систем»

Тема работы: Автоматизация системного администрирования серверов на

основе ОС семейства MS Windows 2k

Цели работы:

1. Получить практические навыки установки и настройки серверов на основе

ОС семейства MS Windows 2k.

2. Изучить на типовых примерах сценарии системного администрирования

серверов на основе ОС семейства MS Windows 2k (на языках VBScript,

JScript, Power Shell).

3. Разработать собственные сценарии для решения задач администрирования

серверных ОС.

Программа работы:

1. Используя методические указания к настоящей работе, а также

рекомендованные в списке использованных источников учебные пособия,

изучить основные этапы установки (из дистрибутива) ОС MS Windows 2k

(серверная конфигурация) и настройки системных сервисов.

2. Используя технологию виртуальных машин (Oracle VirtualBox):

создать аппаратную платформу виртуальной машины для сервера ОС

MS Windows 2k, обеспечив возможность её подключения к

компьютерной сети;

выполнить установку (инсталляцию) сервера ОС MS Windows 2k

выбранной сборки (MS Windows Server 2003 Professional Edition или

MS Windows Server 2003 Enterprise Edition).

3. Изучить на учебных примерах (выполняемых с правами администратора ОС)

практику настройки системных сервисов серверов ОС семейства MS

Windows 2k (режим локального администрирования).

4. Используя технологию виртуальных машин (Oracle VirtualBox):

импортировать в среду менеджера виртуальных машин (Oracle

VirtualBox) виртуальную машину с ОС MS Windows XP (ОС MS

Windows 8.1), обеспечив возможностью её подключения к

компьютерной сети (при необходимости дополнить аппаратную

платформу сетевым адаптером);

создать сегмент виртуальной компьютерной сети с выбранным

пространством IP-адресов для локальных сетей (192.168.x.x);

Page 2: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

выполнить (используя встроенные системные утилиты ОС MS

Windows Server 2003 и MS Windows XP и/или сценарии), ручную и/или

автоматизированную конфигурацию двух хостов одного сегмента

виртуальной компьютерной сети;

проверить (использую утилиту ping) возможности

сконфигурированных хостов обмениваться трафиком ICMP-пакетов.

5. Изучить на учебных примерах (выполняемых с правами администратора ОС)

практику мониторинга и/или настройки системных сервисов серверов ОС

семейства MS Windows 2k (режим удалённого администрирования).

6. Разработать и реализовать собственные сценарии, имеющие следующую

функциональность:

плановое (по указанному в конфигурационном файле графику)

резервное копирование (архивация) файлов из папки, путь к которой

указан в командной строке сценария (для режимов локального и

удалённого администрирования сервера);

переопределение (увеличение или уменьшение значений) квот

дискового пространства для тех пользователей (ОС и/или домена),

список учётных записей которых указан в конфигурационном файле,

при наступлении события, порождаемого превышением назначенной

им квоты и/или порога выдачи предупреждений;

периодическая (с указанным в командной строке сценария

временным периодом) или событийная (по генерируемому

пользователем событию) актуализация списка активно (по заданному

критерию) используемых процессов ОС с диалоговым запросом на

снятие неактивных процессов с обслуживания.

7. Используя системные программы, проверить правильность исполнения всех

вышеуказанных WSH-сценариев.

Методические указания к выполнению работы:

1. Введение

Ключевым программным компонентом любой профессиональной IT-инфраструктуры является серверная ОС. Назначение серверной ОС — это управление приложениями, обслуживающими всех пользователей корпоративной или иной компьютерной сети. К таким приложениям относятся системы управления базами данных, средства управления сетями и анализа событий в сети, службы каталогов, средства обмена сообщениями и групповой работы, Web-серверы, почтовые серверы, межсетевые экраны, серверы приложений различного назначения, серверные части бизнес-приложений.

Page 3: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В настоящее время в семействе MS Windows 2k существует несколько типов серверных ОС: MS Windows Server 2003, MS Windows Server 2008, MS Windows Server 2012, MS Windows Server 2016. В лабораторной работе рекомендуется использовать самую младшую версию (2003) как наименее ресурсоёмкую. В зависимости от специализации различают четыре версии дистрибутивов ОС MS Windows Server 2003 с поддержкой обеих типов (x86/x64) архитектур: Standard Edition, Enterprise Edition, Datacenter Edition, Web Edition. Целевое назначение каждого из указанных дистрибутивов очевидно из их названий.

ОС MS Windows Server 2003 поддерживает 11 ролей, которые администраторы могут назначать серверам с помощью мастера управления сервером:

Сервер терминалов; Файловый сервер; Сервер печати; Сервер приложений (IIS, ASP.NET); Почтовый сервер (POP3, SMTP); Сервер удаленного доступа и VPN; Сервер потокового мультимедийного вещания; Сервер WINS; Сервер контроллера домена Active Directory; DNS-сервер; Сервер DHCP.

Укажем краткое назначение каждой роли.

Сервер терминалов предоставляет единую точку установки, с помощью которой несколько пользователей могут получить доступ к любому серверу под управлением Windows Server 2003. Работая удаленно, пользователь может запускать программы, сохранять файлы и использовать сетевые ресурсы, как если бы эти ресурсы находились на его собственном компьютере.

Файловый сервер обеспечивает доступ к файлам (таким как файлы данных и приложения, доступные через сеть) и помогает управлять доступом.

Сервер печати обеспечивает настройку доступа к принтерам и управление им.

Сервер приложений. При выборе этой роли устанавливается IIS 6.0, а также другие технологии и службы, такие как COM+ и ASP.NET. Роль сервера приложений содержит в себе все функции и службы, используемые при разработке и развертывании веб-служб на основе XML, веб-приложений и распределенных приложений, а также при управлении ими во время выполнения.

Почтовый сервер. При выборе этой роли устанавливаются компоненты служб электронной почты для работы с протоколами POP3 и SMTP, входящие в состав операционных систем семейства Windows Server 2003. Служба POP3 реализует стандартный протокол чтения почты POP3 и вместе со службой SMTP обеспечивает отправку почты.

Page 4: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Сервер удаленного доступа и VPN позволяет удаленным или мобильным пользователям получить доступ к корпоративным сетям через коммутируемое соединение либо через Интернет, используя VPN-соединение.

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

Сервер WINS обеспечивает настройку службы WINS, которая транслирует IP-адреса в имена компьютеров NetBIOS и обратно. С помощью WINS-серверов отдельные пользователи могут вести поиск ресурсов по именам компьютеров, а не по IP-адресам.

Сервер контроллера домена Active Directory. Контроллеры домена хранят данные каталогов и управляют взаимодействием между пользователями и доменами, в том числе процессами входа в домен, проверкой подлинности и поиском в каталоге. Служба Active Directory обеспечивает управление пользователями и компьютерами и является ключевым компонентом роли сервера контроллера домена.

DNS-сервер. Служба DNS позволяет клиентским компьютерам в сети регистрировать DNS-имена (которые легче запомнить, чем IP-адреса) и в дальнейшем использовать эти имена вместо IP-адресов для обращения к узлам сети. DNS-сервер хранит записи распределенной базы данных DNS и использует эти записи для ответа на DNS-запросы, отправленные DNS-клиентами, — например, запросы имен веб-узлов или компьютеров в локальной сети или Интернете.

Сервер DHCP. Настроив DHCP-сервер, администраторы могут централизованно управлять IP-адресами и связанной с ними информацией.

Назначение и обслуживание каждой серверной роли требует наличия прав администратора ОС. Дополнительные условия на выбор допустимых способов и средств администрирования серверной ОС формируют ранее установленные роли, инфраструктура клиент-серверных ассоциаций данной ОС с другими в рамках компьютерной сети, решаемые задачи администрирования.

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

2. Установка серверной ОС семейства MS Windows 2k

2.1. Создание аппаратной платформы виртуальной машины

Page 5: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Для установки ОС MS Windows Server 2003 требуется в среде менеджера

виртуальных машин VirtualBox создать аппаратную конфигурацию виртуальной

машины со следующими рекомендуемыми значениями параметров:

Количество процессоров – 1 (лучше 2 и более)

Объём оперативной памяти – не менее 512 Мб (лучше 2 Гб и более)

Объём жесткого диска – не менее 5 Гб

Обязательно наличие привода CD/DVD-ROM, USB-интерфейса,

видеоадаптера, сетевых адаптеров (не менее одного).

Все остальные параметры виртуальной машины существенно не влияют на

работоспособность сервера минимальной конфигурации, поэтому выбираются

самостоятельно.

2.2. Установка ОС Windows Server 2003

После создания аппаратной конфигурации виртуальной машины необходимо

смонтировать на приводе CD-ROM ISO-образ дистрибутива ОС MS Windows

Server 2003. (Рекомендуется использовать русифицированные сборки Enterprise

Edition или Standard Edition).

Запуск виртуальной машины приведёт к появлению на экране изображения

аналогичного нижеприведённому:

Page 6: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Согласившись на установку ОС (нажав клавишу [Enter]), попадаем в меню

менеджера дисков:

Page 7: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Выбираем диск (особенно, если он не один в списке), создаём на нём раздел

выбранного размера в неразмеченной области диска, определяем тип файловой

системы (FAT или NTFS) и начинаем форматировать этот раздел:

После завершения процесса форматирования, из дистрибутива в оперативную

память виртуальной машины производится копирование файлов установки ОС:

Page 8: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Завершив копирование файлов, установщик ОС производит (не позднее, чем

через 15 секунд) перезагрузку виртуальной машины:

Page 9: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Далее начинается непосредственный процесс установки ОС:

Page 10: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального
Page 11: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Через некоторое время появляется диалог установки значений параметров ОС,

отвечающих за локализацию ОС. Здесь требуется выбрать языковые параметры.

Рекомендуется на время установки и настройки ОС указать английский язык.

Очевидно, что в любой момент эту установку можно поменять на

соответствующую национальной раскладке. Выбор состава установленных

раскладок (языков) осуществляется с помощью нажатия на кнопку «Состав»:

Page 12: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В выпадающем меню следует выбрать «Английский (США) - США», а затем

нажать кнопку OK:

Page 13: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

После нажатия кнопки «Применить» открывается диалог для введения имени

пользователя и названия организации, в которой будет зарегистрирована

устанавливаемая копия ОС:

Page 14: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Далее, для соблюдения требований лицензионного соглашения, необходимо

ввести уникальный ключ продукта, который находится на упаковке с

дистрибутивом ОС. (На приведённом ниже образе экрана этот код специально

заменили на символы «звёздочка», хотя при реальной установке он не является

скрытым):

Page 15: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

После этого необходимо выбрать вариант лицензирования. Рекомендуется

отметить вариант «На сервер» с максимально возможным числом одноимённых

подключений (9999):

Page 16: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

На следующем шаге установки необходимо задать имя компьютера и пароль

администратора ОС:

В следующем диалоговом окне требуется выбрать часовой пояс местности, где

будет функционировать ОС, а также указать точные время и дату:

Page 17: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В следующем диалоговом окне есть возможность интерактивно настроить

сетевые параметры, но рекомендуется это сделать позже (после завершения

установки ОС на виртуальную машину), поэтому следует выбрать опцию

«Обычные параметры»:

Page 18: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Безусловно, при уже сконфигурированном «аппаратно» сетевом адаптере

виртуальной машины в составе виртуального сегмента компьютерной сети может

потребоваться коррекция значений IP-параметров хоста, выбранных по

умолчанию.

Следующий диалог требует задания рабочей группы или домена, в котором будет

функционировать сервер:

Page 19: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Рекомендуется пока указать только имя рабочей группы, организовав тем самым

работу сервера в одноранговой (peer-to-peer) сети. Подключение сервера к

домену следует выполнять на этапе настройки уже установленной ОС.

На этом все подготовительные операции закончились, и далее происходит

установка ОС в автоматическом режиме (что обычно сопровождается показом

периодически обновляемых рекламных материалов о функциональных

возможностях ОС):

Page 20: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Показанный на приведённом ниже образе экрана шаг «Завершение установки»

свидетельствует о проводимой установщиком ОС «сборке мусора» (удалении

временных файлов и т.п.):

Page 21: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

После успешного завершения всех этапов установки ОС происходит перезагрузка

виртуальной машины и появляется экран первой (после установки) загрузки ОС в

оперативную память виртуальной машины:

Page 22: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Далее происходит запуск ОС:

Page 23: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В отличие от несерверных версий ОС MS Windows 2k для начала регистрации

интерактивного сеанса работы в серверных ОС необходимо ввести комбинацию

клавиш Ctrl+Alt+Del:

Появляется экранная форма идентификации пользователя:

Page 24: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Отображаемое по умолчанию имя пользователя – «Администратор» (это

встроенная учётная запись). Для контроля параметров раскладки клавиатуры

(например, для корректного ввода всех символов пароля) можно использовать

кнопку «Параметры >>».

После открытия пользовательского сеанса сервер MS Windows Server 2003 будет

пытаться выполнить обновления своей конфигурации:

Page 25: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Рекомендуется согласиться с этим планом действий и нажать кнопку «Готово».

Далее предлагает выполнить процедуру настройки ролевых параметров сервера.

(Если предполагается выполнять все эти настройки позже, например, с помощью

сценариев, или установленная ОС не будет выполнять функции сервера, то

следует просто закрыть это диалоговое окно):

Page 26: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Для исключения отображения этого окна при каждом запуске ОС рекомендуется

установить флажок «Не показывать эту страницу при входе в систему».

Ниже приведён образ Рабочего стола работающей ОС MS Windows Server 2003

(показана панель меню, открываемая при нажатии на кнопку «Пуск»):

Page 27: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Замечание. Несмотря на привычный вид интерфейса Рабочего стола, серверная

конфигурация ОС MS Windows 2k, главным образом, ориентирована на роль

сервера (а не на роль ОС для конечного пользователя). Поэтому для её

эффективной работы требуется специальная настройка (интерактивная или

программная).

2.3. Настройка ОС MS Windows Server 2003 (управление ролями сервера)

Рассмотрим установку трёх ролей серверной ОС MS Windows Server 2003:

1. Файловый сервер;

2. Сервер контроллера домена;

3. DNS-сервер.

Выбор именно этих ролей с одной стороны позволяет приобрести базовые навыки

использования встроенных в ОС мастеров управления ролями сервера, а с другой

формирует минимальную функционально законченную конфигурацию файлового

сервера в составе административного домена.

Page 28: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Заметим, что в данном случае роль DNS-сервера является только необходимым

условием работоспособности сервера контроллера домена в силу обязательного

использования базой данных службы каталогов Active Directory системы доменных

имён DNS. Поэтому полная настройка роли DNS-сервера производиться не будет.

2.3.1. Настройка роли файлового сервера

Начальное диалоговое окно управления ролями серверной ОС имеет следующий

вид:

Добавление новой роли (или удаление ранее установленной) выполняется по

нажатию на кнопку «Добавить или удалить роль».

В результате будет открыто окно мастера настройки сервера:

Page 29: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Убедившись в том, что аппаратная платформа готова к настройке новой роли

сервера, следует нажать на кнопку «Далее».

В левой части появившегося окна отображается список доступных ролей

серверной ОС с указанием статуса их настройки (Нет/Да):

Page 30: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Выбираем в списке ролей верхнюю строку («Файл-сервер»):

Page 31: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

При необходимости получения дополнительной информации о назначении этой

роли следует перейти по ссылке «Сведения о файловых серверах». Примерный

вид такой справки показан ниже:

Page 32: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Получив нужную справку, нажимаем кнопку «Далее». Открывается окно настройки

квот дискового пространства для пользователей файлового сервера. В этом окне

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

слежения за соблюдением этих квот:

Page 33: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

После нажатия кнопки «Далее» открывается окно настройки службы

индексирования файлов сервера. Учитывая исключительно учебный характер

настраиваемой роли, оставляем данную службу выключенной:

Page 34: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

При нажатии кнопки «Далее» появляется окно, содержащее сводку всех

предыдущих настроек. На этом этапе следует проверить их правильность и при

необходимости вернуться назад и исправить неверные настройки.

Принятие настроек позволяет перейти к более детальной конфигурации

файлового сервера – к спецификации общих (разделяемых) ресурсов. Начальное

окно мастера настройки общих ресурсов имеет вид:

Page 35: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

После нажатия на кнопку «Далее» появляется диалоговое окно, в котором можно

определить ранее существующую или вновь созданную папку в качестве общего

(разделяемого) ресурса:

Page 36: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В следующем окне можно настроить сетевой путь к общему ресурсу, определить

его сетевое имя и привести его описание:

Page 37: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

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

т.п.) для разделяемого ресурса (или выбрав их из списка готовых, или выполнив

избирательную настройку категорий разрешений для конкретных пользователей и

групп пользователей):

Page 38: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Назначение разрешений (прав доступа) завершает конфигурацию общего

ресурса. В открывшемся окне можно выбрать либо режим повтора процедуры

создания общего ресурса, либо закрыть мастер общих ресурсов:

Page 39: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Завершив настройку всех общих ресурсов файлового сервера, получаем окно, с

одной стороны извещающее пользователя об успешной настройке ОС в роли

файлового сервера, а с другой – дающее возможность перейти по ссылке

«Просмотр следующих шагов для данной роли» к следующему этапу настроек:

Page 40: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Завершение работы с мастером настройки роли файлового сервера (нажатием

кнопки «Готово») возвращает пользователя в исходное окно настройки ролей

серверной ОС. Заметим, что список настроенных ролей (в левой нижней части

окна) пополнился новой ролью – «Файловый сервер»:

Page 41: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Дополнительно укажем на появившиеся справа от краткой характеристики роли

кнопки, позволяющие управлять файловым сервером или добавлять новые общие

ресурсы.

2.3.2. Настройка роли сервера контроллера домена

Как и для файлового сервера (см. п. 2.3.1.), настройка роли сервера контроллера

домена (заметим, что здесь речь идёт исключительно о домене Active Directory,

т.к. домен рабочей группы был назначен ранее при установке ОС) начинается с

нажатия кнопки «Добавить или удалить роль» окна «Управление ролями данного

сервера».

В открывшемся окне мастера настройки сервера в списке доступных ролей

следует выбрать строку «Контроллер домена (Active Directory)»:

Page 42: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Нажатие на кнопку «Далее» показывает сводку настроек, с которыми следует

согласиться. В результате запускается мастер установки Active Directory:

Page 43: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Безусловно, при первой установке службы каталогов Active Directory

рекомендуется прочитать ознакомительную справку (вызываемую по ссылке

«Active Directory»). Но при минимальной (выбранной в учебных целях)

конфигурации этой службы назначение конкретных настроек интуитивно понятно.

Нажав на кнопку «Далее», открывается окно, в котором требуется назначить тип

контроллера домена. Так как домен создаётся впервые, то очевидным будет

выбор «Контроллер домена в новом домене»:

Page 44: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Следующее окно позволяет определить тип домена. Домен Active Directory

совместимый по структуре с доменом DNS может быть организован в виде одного

дерева или группы деревьев (леса). Учитывая очевидную возможность

построения леса, в простейшем случае состоящего из единственного дерева, и

отсутствие каких-либо настроек по умолчанию, следует выбрать настройку типа

домена «Новый домен в новом лесу»:

Page 45: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Как уже было отмечено выше, служба каталогов Active Directory работоспособна

только при установленной службе сервера доменных имён (DNS). Поэтому

следующее окно обеспечивает взаимную привязку этих служб. Причём, указанная

привязка либо назначает контроллеру домена Active Directory функцию клиента

DNS-сервера (установленного на другом компьютере), либо требует добавления в

конфигурацию серверной ОС новой роли – роли DNS-сервера. Выбираем второй

случай (настройка DNS на данном компьютере):

Page 46: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В следующем окне необходимо назначить имя создаваемого домена. В

соответствие с приведённой подсказкой формируем полное DNS-имя:

Page 47: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В дополнение к DNS-имени, в доменах, обслуживаемых контроллерами домена

Active Directory, управляемыми ОС семейства MS Windows 2k, существуют другие

имена доменов – NetBIOS-имена. Эти имена используются службой WINS,

которая функционально эквивалента службе DNS (т.е. способна осуществлять

преобразования символьных имён в IP-адреса и наоборот). Служба WINS была

основной службой разрешения символьных имён в Windows-подобных ОС до

появления службы каталогов Active Directory, поэтому NetBIOS-имена

обеспечивают обратную совместимость клиентов и серверов ОС MS Windows

младших и старших моделей:

Page 48: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Следующие два окна предназначены для настройки внутренних (служебных)

ресурсов контроллера домена.

Во-первых, требуется выбрать месторасположение в файловой системе

серверной ОС базы данных службы Active Directory и её журнала событий:

Page 49: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Во-вторых, необходимо задать папку в файловой системе серверной ОС, где

будут храниться общие файлы домена (так называемый «системный том» -

SYSVOL – эталонная копия общих файлов домена):

Page 50: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

После нажатия кнопки «Далее» появляется окно назначения разрешений по

умолчанию для пользователей или групп, являющихся членами как доменов

Windows 2k, так и доменов более ранних версий Windows-подобных ОС. Показан

выбор только ОС семейства Windows 2k:

Page 51: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Следующее окно настроек устанавливает пароль администратора службы

каталогов Active Directory, которым можно воспользоваться только при

необходимости восстановления этой службы:

Page 52: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Заметим, что пароли администратора ОС, администратора домена и

администратора службы каталогов могут отличаться друг от друга даже при

совпадениях имён этих администраторов.

Наконец, все предварительные настройки роли контроллера домена были

осуществлены. Теперь, после утверждения пользователем сводки, выдаваемой

мастером настройки роли, запускается процедура создания роли в серверной ОС.

Следует заметить, что эта процедура является длительной:

Page 53: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

В длительной процедуре создания роли контроллера домена обязательно будет

этап создания роли DNS-сервера.

Этап создания роли DNS-сервера начинается с назначения статического IP-

адреса. Как правило, после завершения обычной установки ОС (как

пользовательской, так и серверной) по умолчанию устанавливается режим

динамического получения IP-адреса, что неприемлемо для DNS-сервера:

Page 54: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Заметим, что при настройке может потребоваться обращение к дистрибутиву ОС

для обновления её конфигурации. Поэтому следует обеспечить монтирование

ISO-дистрибутива серверной ОС на CD/DVD-ROM-приводе виртуальной машины.

Настройка статического адреса DNS-сервера производится в окне «Свойства»

компонента «Протокол Интернета (TCP/IP)», доступного через свойства

компонента «Подключение по локальной сети» (папка «Сетевые подключения» в

папке «Панель управления»):

Page 55: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Так как был назначен единственный статический IP-адрес, то мастер установки

уведомляет о том, что этот адрес будет одновременно адресом контроллера

домена и адресом DNS-сервера (т.е. две серверные роли ОС будут разделять

один IP-адрес):

Page 56: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Далее происходит непосредственная настройка роли DNS-сервера для серверной

ОС, от которой (при желании) можно отказаться, нажав кнопку «Пропуск установки

DNS»:

Page 57: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Приняв решение дождаться установки DNS-сервера и продолжив интеграцию

служб Active Directory и DNS, через некоторое время получим завершающее окно

мастера установки роли контроллера домена:

Page 58: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Заметим, что в этом окне указана принятая по умолчанию привязка контроллера

домена к сайту «Default-First-Site-Name». Сайт, в отличие от домена, является не

логической, а физической ассоциацией серверов. Т.е. в данном случае речь идёт

о присоединении к сайту виртуальной машины, на которой установлена серверная

ОС, в программной среде которой сконфигурирован контроллер домена.

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

компьютера:

Page 59: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Отложив перезагрузку, появляется окно, свидетельствующее об успешной

установке в серверной ОС роли контроллера домена Active Directory:

Page 60: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Однако перезагрузка требуется в любом случае.

После перезагрузки появляется диалог регистрации интерактивного сеанса

пользователя. Заметим, что пользователь вправе выбрать домен из выпадающего

списка (причём в качестве имени домена показано его NetBIOS-имя):

Page 61: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Наконец, после успешного ввода имени и пароля пользователя, открывается окно

мастера установки роли контроллера домена, в котором указано, что сервер MS

Windows Server 2003 теперь является контроллером домена:

Page 62: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Открыв окно настроек ролей серверной ОС, заметим, что все три

запланированные к установке роли успешно настроены:

Page 63: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

2.4. Завершение сеанса работы с ОС Windows Server 2003

В отличие от пользовательских ОС семейства MS Windows 2k завершение сеанса

работы с серверной ОС сопровождается записью в системный журнал событий не

только факта выключения сервера, но и сведений о типе выключения и причинах

(описываемых администратором ОС в специальном редактируемом поле

диалогового окна) возникновения этого события.

3. Подключение виртуальной машины к сегменту виртуальной

компьютерной сети

Технология виртуализации Oracle VirtualBox позволяет создавать не только

виртуальные машины, но и виртуальные компьютерные сети, состоящие из

нескольких сегментов.

Для создания сегмента виртуальной компьютерной сети необходимо в окне

«Oracle VM VirtualBox Менеджер» выбрать меню «Файл -> Настройки», а затем в

появившемся окне «VirtualBox Свойства» выбрать параметр «Сеть». В списке

«Виртуальные сети хоста» будут показаны все доступные виртуальной машине

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

необходимо произвести настройку его IP-адреса (по умолчанию – 192.168.XXX.1)

Page 64: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

и маски подсети (по умолчанию – 255.255.255.0). Диалоговое окно настроек

вызывается нажатием клавиши «пробел» или с помощью одной из кнопок панели

управления). Сохранение выбранных настроек обеспечивается нажатием на

кнопку «OK».

Подключение виртуальной машины к созданному сегменту виртуальной сети

производится в два этапа.

На первом этапе необходимо изменить режим подключения сетевого адаптера

виртуальной машины к виртуальной сети. По умолчанию любая вновь созданная в

среде Oracle VirtualBox виртуальная машина (имеющая в своей аппаратной

конфигурации сетевой адаптер) настроена на подключение к виртуальной

компьютерной сети в режиме NAT (Network Address Translation) – отображение

пространств IP-адресов.

Для изменения режима подключения следует открыть меню «Свойства»

виртуальной машины и выбрать раздел «Сеть». В этом разделе показаны четыре

вкладки, соответствующие четырём сетевым адаптерам виртуальной машины. По

умолчанию только один из адаптеров является активным (см. вкладку «Адаптер

1»). На нужной вкладке с активным адаптером, необходимо из выпадающего

списка значений параметра «Тип подключения» выбрать режим подключения

«Виртуальный адаптер хоста». В результате в поле значений параметра «Имя»

появится имя адаптера «VirtualBox Host-Only Ethernet Adapter». Развернув панель

дополнительных настроек, можно выбрать тип сетевого адаптера и назначить ему

MAC-адрес (по умолчанию установлено случайное значение). Сохранение

выбранных настроек обеспечивается нажатием на кнопку «OK».

На втором этапе необходимо осуществить программную конфигурацию хоста

компьютерной сети встроенными средствами ОС. Такая конфигурация

производится администратором ОС. Сначала необходимо выбрать меню «Пуск ->

Панель управления -> Сетевые подключения -> Подключение по локальной сети».

Далее в появившемся окне следует нажать кнопку «Свойства», а затем выбрать в

списке «Протокол Интернета (TCP/IP)» и снова нажать кнопку «Свойства». В

открывшемся окне настроек параметров хоста IP-сети необходимо включить

режим ручной настройки («Использовать следующий IP-адрес») и указать

параметры сетевого подключения виртуальной машины в соответствии с

настройками сегмента виртуальной сети: IP-адрес хоста должен принадлежать

пространству адресов 192.168.XXX.YYY (где XXX – адрес сегмента, YYY – адрес

хоста внутри сегмента), маска подсети – 255.255.255.0, шлюз по умолчанию –

192.168.XXX.1. Сохранение выбранных настроек обеспечивается нажатием на

кнопку «OK».

Проверка правильности настроек подключения виртуальной машины к сегменту

виртуальной сети осуществляется утилитой ping, вызываемой из командной

строки:

ping 192.168.XXX.YYY

Page 65: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

где 192.168.XXX.YYY – IP-адрес проверяемого хоста.

Учебные примеры сценариев (язык VBScript):

Вывод свойств операционной системы

'*******************************************************************

' Имя: OSProperty.vbs

' Язык: VBScript

' Описание: Вывод свойств операционной системы

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim objClass ' Объект SWbemObject (класс WMI)

Dim colOperatingSystems' Коллекция экземпляров класса WMI

Dim objOperatingSystem ' Элемент коллекции

Dim strResult ' Строка для вывода на экран

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

strClass = "Win32_OperatingSystem"

strResult = " Свойства операционной системы: " & VbCrLf & VbCrLf

Page 66: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

' Получаем указатель на класс WMI

Set objClass = GetObject("WinMgmts:\\" & strComputer & _

"\" & strNamespace & ":" & strClass)

' Создаем коллекцию экземпляров класса Win32_OperatingSystem

Set colOperatingSystems = objClass.Instances_

' Перебираем элементы коллекции

For Each objOperatingSystem in colOperatingSystems

' Формирум строку для вывода на экран

strResult = strResult & "Boot Device: " & _

objOperatingSystem.BootDevice & VbCrLf

strResult = strResult & "Build Number: " & _

objOperatingSystem.BuildNumber & VbCrLf

strResult = strResult & "Build Type: " & _

objOperatingSystem.BuildType & VbCrLf

strResult = strResult & "Caption: " & _

objOperatingSystem.Caption & VbCrLf

strResult = strResult & "Code Set: " & _

objOperatingSystem.CodeSet & VbCrLf

strResult = strResult & "Country Code: " & _

objOperatingSystem.CountryCode & VbCrLf

strResult = strResult & "Install Date: " & _

objOperatingSystem.InstallDate & VbCrLf

strResult = strResult & "Licensed Users: " & _

objOperatingSystem.NumberOfLicensedUsers & VbCrLf

strResult = strResult & "Organization: " & _

objOperatingSystem.Organization & VbCrLf

Page 67: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

strResult = strResult & "OS Language: " & _

objOperatingSystem.OSLanguage & VbCrLf

strResult = strResult & "OS Product Suite: " & _

objOperatingSystem.OSProductSuite & VbCrLf

strResult = strResult & "OS Type: " & _

objOperatingSystem.OSType & VbCrLf

strResult = strResult & "Primary: " & _

objOperatingSystem.Primary & VbCrLf

strResult = strResult & "Registered User: " & _

objOperatingSystem.RegisteredUser & VbCrLf

strResult = strResult & "Serial Number: " & _

objOperatingSystem.SerialNumber & VbCrLf

strResult = strResult & "Version: " & _

objOperatingSystem.Version & VbCrLf

Next

' Выводим результат на экран

Wscript.Echo strResult

'************************* Конец ***********************************

Вывод на экран списка всех доменов локальной сети

'*******************************************************************

' Имя: ListDomains.vbs

' Язык: VBScript

' Описание: Вывод на экран списка всех доменов локальной сети

'*********************************************************************

Option Explicit

Page 68: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

'Объявляем переменные

Dim objNameSpace ' Корневой объект Namespace

Dim objDomain ' Экземпляр объекта Domain

Dim strResult ' Строка для вывода на экран

'Связываемся с корневым объектом Namespace

Set objNameSpace = GetObject("WinNT:")

'Устанавливаем фильтр для выделения объектов-доменов

objNameSpace.Filter = Array("domain")

strResult = "Все доступные домены в сети:" & vbCrLf & vbCrLf

' Перебираем элементы коллекции

For Each objDomain In objNameSpace

'Формируем строку с именами доменов

strResult = strResult & objDomain.Name & vbCrLf

Next

'Вывод информацию на экран

WScript.Echo strResult

'************* Конец *********************************************

Определение роли компьютера в домене

'*******************************************************************

' Имя: ComputerRole.vbs

' Язык: VBScript

' Описание: Определение роли компьютера в домене

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Page 69: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim objClass ' Объект SWbemObject (класс WMI)

Dim colInstances ' Коллекция экземпляров класса WMI

Dim objInstance ' Элемент коллекции

Dim strComputerRole ' Роль компьютера в домене

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

strClass = "Win32_ComputerSystem"

' Получаем указатель на класс WMI

Set objClass = GetObject("WinMgmts:\\" & strComputer & _

"\" & strNamespace & ":" & strClass)

' Создаем коллекцию экземпляров класса Win32_ComputerSystem

Set colInstances = objClass.Instances_

' Перебираем элементы коллекции

For Each objInstance In colInstances

' Выделяем описание роли компьюьера

Select Case objInstance.DomainRole

Case 0

strComputerRole = "Standalone Workstation"

Case 1

strComputerRole = "Member Workstation"

Case 2

strComputerRole = "Standalone Server"

Case 3

strComputerRole = "Member Server"

Page 70: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Case 4

strComputerRole = "Backup Domain Controller"

Case 5

strComputerRole = "Primary Domain Controller"

End Select

' Выводим результат на экран

Wscript.Echo "Роль компьютера " & strComputer & ": " & strComputerRole

Next

'************************* Конец ***********************************

Ввод пароля при удалённом подключении к домену

'*******************************************************************

' Имя: InputPassw.vbs

' Язык: VBScript

' Описание: Ввод пароля без отображения на экране для соединения

' с WMI на удаленном компьютере

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim strUser ' Имя пользователя

Dim strPassw ' Пароль пользователя

Dim objPassw ' Объект ScriptPW

Dim objLocator ' Объект SWbemLocator

Dim objService ' Объект SWbemServices

Dim colInstances ' Коллекция экземпляров класса WMI

Page 71: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Dim objInstance ' Элемент коллекции

Dim strComputerRole ' Роль компьютера в домене

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "Shikin"

strNamespace = "Root\CIMV2"

strClass = "Win32_ComputerSystem"

strUser = "basicos"

'Создаем объект ScriptPW

Set objPassw = CreateObject("ScriptPW.Password")

' Выводим подсказку для ввода пароля

WScript.StdOut.Write "Введите пароль для " & strUser & ": "

'Вводим пароль

strPassw = objPassw.GetPassword()

'Создаем объект SWbemLocator

Set objLocator = CreateObject("WbemScripting.SWbemLocator")

'Соединяемся с пространством имен WMI от имени заданной учетной записи

Set objService = objLocator.ConnectServer(strComputer, strNamespace, strUser,

strPassw)

' Создаем коллекцию экземпляров класса Win32_ComputerSystem

Set colInstances = objService.InstancesOf(strClass)

' Перебираем элементы коллекции

For Each objInstance In colInstances

' Определяем описание роли

Select Case objInstance.DomainRole

Case 0

strComputerRole = "Standalone Workstation"

Case 1

Page 72: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

strComputerRole = "Member Workstation"

Case 2

strComputerRole = "Standalone Server"

Case 3

strComputerRole = "Member Server"

Case 4

strComputerRole = "Backup Domain Controller"

Case 5

strComputerRole = "Primary Domain Controller"

End Select

' Выводим результат на экран

Wscript.Echo "Роль компьютера " & strComputer & ": " & strComputerRole

Next

'************************* Конец ***********************************

Перезагрузка всех компьютеров домена

'*******************************************************************

' Имя: RebootDomain.vbs

' Язык: VBScript

' Описание: Перезагрузка всех компьютеров из домена Windows NT

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strOurComputer ' Имя компьютера, с которого запущен сценарий

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim objClass ' Объект SWbemObject (класс WMI)

Page 73: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Dim colInstances ' Коллекция экземпляров класса WMI

Dim objInstance ' Элемент коллекции

Dim objDictionary ' Объект Dictionary

Dim objItem ' Элемент объекта Dictionary

' Процедура для заполнения объекта Dictionary

Sub FillComputerDictionary()

' Объявляем переменные

Dim strDomain, objDomain, objComputer, i

' Создаем объект Dictionary

Set objDictionary = CreateObject("Scripting.Dictionary")

'Задаем имя домена

strDomain = "WinNT://BASIC"

'Связываемся с объектом Domain

Set objDomain = GetObject(strDomain)

'Устанавливаем фильтр для выделения объектов-компьютеров

objDomain.Filter = Array("computer")

i = 0

' Цикл для чтения строк из файла

For Each objComputer In objDomain

' Добавляем элемент в объект Dictionary

objDictionary.Add i, objComputer.Name

i = i + 1

Next

End Sub

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strNamespace = "Root\CIMV2"

Page 74: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

strClass = "Win32_OperatingSystem"

' Получаем указатель на класс WMI для локального компьютера

Set objClass = GetObject("WinMgmts:{(Shutdown,RemoteShutdown)}\\.\" &_

strNamespace & ":" & strClass)

' Определяем имя локального компьютера

strOurComputer = objClass.CSName

' Заполняем объект Dictionary значениями из файла C:\ComputerList.txt

FillComputerDictionary()

' Перебираем в цикле все элементы объекта Dictionary

For Each objItem In objDictionary

' Получаем имя компьютера из текущего элемента объекта Dictionary

strComputer = objDictionary.Item(objItem)

' Получаем указатель на класс WMI

Set objClass = GetObject("WinMgmts:{(Shutdown,RemoteShutdown)}\\" &_

strComputer & "\" & strNamespace & ":" & strClass)

' Проверяем, не совпадает ли strComputer с именем локального

' компьютера

If strOurComputer <> strComputer Then

' Создаем коллекцию экземпляров класса Win32_OperatingSystem

Set colInstances = objClass.Instances_

' Перебираем элементы коллекции

For Each objInstance In colInstances

' Выводим на экран предупреждение

WScript.Echo "Компьютер " & objInstance.CSNAME &_

" будет перезагружен "

' Для каждого экземпляра вызываем метод Reboot

objInstance.Reboot()

Next

Page 75: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

'************************* Конец ***********************************

Перезагрузка всех компьютеров, указанных в командной строке

'*******************************************************************

' Имя: RebootArguments.vbs

' Язык: VBScript

' Описание: Перезагрузка всех компьютеров, указанных в командной

' строке

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim objClass ' Объект SWbemObject (класс WMI)

Dim colInstances ' Коллекция экземпляров класса WMI

Dim objInstance ' Элемент коллекции

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strNamespace = "Root\CIMV2"

strClass = "Win32_OperatingSystem"

' Перебираем в цикле все параметры командной строки

For Each strComputer In WScript.Arguments

' Получаем указатель на класс WMI

Set objClass = GetObject("WinMgmts:{(Shutdown,RemoteShutdown)}\\" &_

strComputer & "\" & strNamespace & ":" & strClass)

' Создаем коллекцию экземпляров класса Win32_OperatingSystem

Set colInstances = objClass.Instances_

Page 76: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

' Перебираем элементы коллекции

For Each objInstance In colInstances

' Выводим на экран предупреждение

WScript.Echo "Компьютер " & objInstance.CSNAME &_

" будет перезагружен "

' Для каждого экземпляра вызываем метод Reboot

objInstance.Reboot()

Next

Next

'************************* Конец ***********************************

Перезагрузка всех компьютеров, указанных в текстовом файле

'*******************************************************************

' Имя: RebootTextFile.vbs

' Язык: VBScript

' Описание: Перезагрузка всех компьютеров, указанных в текстовом файле

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim objClass ' Объект SWbemObject (класс WMI)

Dim colInstances ' Коллекция экземпляров класса WMI

Dim objInstance ' Элемент коллекции

Dim objDictionary ' Объект Dictionary

Dim objItem ' Элемент объекта Dictionary

' Константа для задания режима открытия файла

Page 77: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Const ForReading = 1

' Процедура для заполнения объекта Dictionary

Sub FillComputerDictionary(File)

' Объявляем переменные

Dim objFSO, objTextFile,i,s

' Создаем объект Dictionary

Set objDictionary = CreateObject("Scripting.Dictionary")

' Создаем объект FileSystemObject

Set objFSO = CreateObject("Scripting.FileSystemObject")

' Открываем файл для чтения

Set objTextFile = objFSO.OpenTextFile(File, ForReading)

i = 0

' Цикл для чтения строк из файла

Do Until objTextFile.AtEndOfStream

' Читаем строку из файла

s = objTextFile.Readline

' Добавляем элемент в объект Dictionary

objDictionary.Add i, s

i = i + 1

Loop

End Sub

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strNamespace = "Root\CIMV2"

strClass = "Win32_OperatingSystem"

' Заполняем объект Dictionary значениями из файла C:\ComputerList.txt

FillComputerDictionary("C:\ComputerList.txt")

Page 78: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

' Перебираем в цикле все элементы объекта Dictionary

For Each objItem in objDictionary

' Получаем имя компьютера из текущего элемента объекта Dictionary

strComputer = objDictionary.Item(objItem)

' Получаем указатель на класс WMI

Set objClass = GetObject("WinMgmts:{(Shutdown,RemoteShutdown)}\\" &_

strComputer & "\" & strNamespace & ":" & strClass)

' Создаем коллекцию экземпляров класса Win32_OperatingSystem

Set colInstances = objClass.Instances_

' Перебираем элементы коллекции

For Each objInstance In colInstances

' Выводим на экран предупреждение

WScript.Echo "Компьютер " & objInstance.CSNAME &_

" будет перезагружен "

' Для каждого экземпляра вызываем метод Reboot

objInstance.Reboot()

Next

Next

'************************* Конец ***********************************

Изменение свойств папки для совместного доступа

'*******************************************************************

' Имя: ChangePropShare.vbs

' Язык: VBScript

' Описание: Изменение свойств папки для совместного доступа

'*******************************************************************

Option Explicit

' Объявляем переменные

Page 79: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemService

Dim colShares ' Коллекция экземпляров класса WMI

Dim objShare ' Элемент коллекции

Dim iError ' Значение, возвращаемое методом

' Объявляем константы

Const MAXIMUM_CONNECTIONS = 5

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:\\" &_

strComputer & "\" & strNamespace)

' Создаем коллекцию экземпляров класса Win32_Share

Set colShares = objService.ExecQuery _

("SELECT * FROM Win32_Share WHERE Name = 'NewShare'")

' Перебираем элементы коллекции

For Each objShare In colShares

' Изменяем свойства папки общего доступа

iError = objShare.SetShareInfo(MAXIMUM_CONNECTIONS, _

"Это новое описание для папки общего доступа.")

' Проверяем ошибки

If iError <> 0 Then

' Выводим сообщение об ошибке

WScript.Echo "Ошибка при при изменении свойств " &_

" папки общего доступа."

Page 80: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Else

' Выводим сообщение об успешном изменении свойств

WScript.Echo "Свойства папки общего доступа успешно изменены."

End If

Next

'************************* Конец ***********************************

Резервное копирование и очистка журнала приложений

'*******************************************************************

' Имя: BackupAndClearLogApp.vbs

' Язык: VBScript

' Описание: Резервирование и очистка журнала событий приложений

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemService

Dim colLogFiles ' Коллекция экземпляров класса WMI

Dim objLogFile ' Элемент коллекции

Dim iError ' Значение, возвращаемое методом

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

' Подключаемся к пространству имен WMI

Page 81: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Set objService = GetObject("WinMgmts:{(Backup)}\\" &_

strComputer & "\" & strNamespace)

' Создаем коллекцию экземпляров класса Win32_NTEventLogFile

Set colLogFiles = objService.ExecQuery _

("SELECT * FROM Win32_NTEventLogFile WHERE LogFileName='Application'")

' Перебираем элементы коллекции

For Each objLogFile In colLogFiles

' Резервируем журнал событий приложений в файле c:\application.evt

iError = objLogFile.BackupEventLog("c:\application.evt")

' Обрабатываем ошибки, возвращенные методом BackupEventLog

If iError <> 0 Then

' Выводим сообщение об ошибке

Wscript.Echo "Журнал событий приложений не может быть сохранен."

Else

' Очищаем журнал событий приложений

iError = objLogFile.ClearEventLog()

' Обрабатываем ошибки, возвращенные методом ClearEventLog

If iError <> 0 Then

' Выводим сообщение об ошибке

Wscript.Echo "Журнал событий приложений не может быть очищен."

Else

' Выводим сообщение об успешном выполнении

Wscript.Echo "Журнал событий приложений сохранен и очищен."

End If

End If

Next

Page 82: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

'************************* Конец ***********************************

Резервное копирование и очистка журнала событий (при превышении квоты дискового пространства)

'*******************************************************************

' Имя: BackupAndClearLargeLog.vbs

' Язык: VBScript

' Описание: Резервирование и очистка журналов событий,

' размер которых превышает 500 Kb

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemService

Dim colLogFiles ' Коллекция экземпляров класса WMI

Dim objLogFile ' Элемент коллекции

Dim iError ' Значение, возвращаемое методом

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:{(Backup,Security)}\\" &_

strComputer & "\" & strNamespace)

' Создаем коллекцию экземпляров класса Win32_NTEventLogFile

Set colLogFiles = objService.ExecQuery _

Page 83: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

("SELECT * FROM Win32_NTEventLogFile WHERE FileSize > 500000")

' Перебираем элементы коллекции

For Each objLogFile In colLogFiles

' Резервируем журнал событий приложений в файле c:\application.evt

iError = objLogFile.BackupEventLog("c:\" &_

objLogFile.LogFileName & ".evt")

' Обрабатываем ошибки возвращенные методом BackupEventLog

If iError <> 0 Then

' Выводим сообщение об ошибке

Wscript.Echo "Журнал событий " & objLogFile.LogFileName &_

" не может быть сохранен."

Else

' Очищаем журнал событий

iError = objLogFile.ClearEventLog()

' Обрабатываем ошибки, возвращенные методом ClearEventLog

If iError <> 0 Then

' Выводим сообщение об ошибке

Wscript.Echo "Журнал событий " & objLogFile.LogFileName &_

" не может быть очищен."

Else

' Выводим сообщение об успешном выполнении

Wscript.Echo "Журнал событий " & objLogFile.LogFileName &_

" сохранен и очищен."

End If

End If

Next

Page 84: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

'************************* Конец ***********************************

Поиск в журнале всех событий краха системы

'*******************************************************************

' Имя: ListEvent_Blue_Screen.vbs

' Язык: VBScript

' Описание: Поиск в журнале всех событий краха системы

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemService

Dim colEvents ' Коллекция экземпляров класса WMI

Dim objEvent ' Элемент коллекции

Dim strResult ' Результат запроса

' Функция для конвертации даты формата WMI в строку

Function WMIDateStr(WMIDate)

WMIDateStr = CDate(Mid(WMIDate, 5, 2) & "." & _

Mid(WMIDate, 7, 2) & "." &_

Left(WMIDate, 4) & " " &_

Mid(WMIDate, 9, 2) & ":" & _

Mid(WMIDate, 11, 2) & ":" & _

Mid(WMIDate, 13, 2))

End Function

'********************** Начало *************************************

Page 85: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

strResult = "События краха системы: " & VbCrLf & VbCrLf

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:\\" &_

strComputer & "\" & strNamespace)

' Создаем коллекцию экземпляров класса Win32_NTLogEvent

Set colEvents = objService.ExecQuery _

("SELECT * FROM Win32_NTLogEvent WHERE Logfile = 'System'" _

& " and SourceName = 'SaveDump'")

' Перебираем элементы коллекции

For Each objEvent In colEvents

' Формирум строку для вывода на экран

strResult = strResult & " Event date: " &_

WMIDateStr(objEvent.TimeGenerated) &_

" Description: " & objEvent.Message &_

VbCrLf & VbCrLf

Next

' Выводим результат на экран

Wscript.Echo strResult

'************************* Конец ***********************************

Вывод списка команд, выполняемых при загрузке компьютера

'*******************************************************************

' Имя: StartupCommand.vbs

Page 86: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

' Язык: VBScript

' Описание: Вывод списка команд, выполняемых при загрузке компьютера

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim strClass ' Имя класса

Dim objClass ' Объект SWbemObject (класс WMI)

Dim colStartupCommands' Коллекция экземпляров класса WMI

Dim objStartupCommand ' Элемент коллекции

Dim strResult ' Строка для вывода на экран

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

strClass = "Win32_StartupCommand"

strResult = "Команды выполняемые при загрузке компьютера :" & VbCrLf

' Получаем указатель на класс WMI

Set objClass = GetObject("WinMgmts:\\" & strComputer & _

"\" & strNamespace & ":" & strClass)

' Создаем коллекцию экземпляров класса Win32_StartupCommand

Set colStartupCommands = objClass.Instances_

' Перебираем элементы коллекции

For Each objStartupCommand in colStartupCommands

strResult = strResult & objStartupCommand.Command & VbCrLf

Page 87: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Next

' Выводим результат на экран

Wscript.Echo strResult

'************************* Конец ***********************************

Вывод информации о сетевых адаптерах

'*******************************************************************

' Имя: NetworkAdapterInfo.vbs

' Язык: VBScript

' Описание: Вывод информации о сетевых адаптерах

'*******************************************************************

Option Explicit

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemServices

Dim colNetworkAdapters ' Коллекция экземпляров класса WMI

Dim objNetworkAdapter ' Элемент коллекции

Dim strResult ' Результирующая строка

Dim WshShell ' Объект WshShell

Dim theNotepad ' Объект WshScriptExec

' Объявляем константы

Const wbemFlagForwardOnly = 32

Const wbemFlagReturnImmediately = 16

Const ForWriting = 2

' Процедура для записи информации в файл

Page 88: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Sub TextOut (Text, File)

' Объявляем переменные

Dim objFSO, FOut

' Создаем объект FileSystemObject

Set objFSO=WScript.CreateObject("Scripting.FileSystemObject")

' Открываем выходной файл для записи

Set FOut = objFSO.OpenTextFile (File,ForWriting,true)

' Записываем текстовую строку в файл

FOut.WriteLine Text

' Закрываем выходной файл

FOut.Close

End Sub

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

strResult = "Зарегистрированные сетевые адаптеры " & VbCrLf & VbCrLf

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:\\" & _

strComputer & "\" & strNamespace)

Set colNetworkAdapters = objService.ExecQuery(_

"SELECT * FROM Win32_NetworkAdapter",,_

wbemFlagReturnImmediately+wbemFlagForwardOnly)

' Перебираем элементы коллекции

For Each objNetworkAdapter In colNetworkAdapters

Page 89: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

strResult = strResult & "Adapter Type: " & _

objNetworkAdapter.AdapterType & VbCrLf &_

"Description: " & objNetworkAdapter.Description & vbCrLf &_

"Installed: " & objNetworkAdapter.Installed & vbCrLf &_

"Manufacturer: " & objNetworkAdapter.Manufacturer & vbCrLf &_

"Product Name: " & objNetworkAdapter.ProductName & vbCrLf &_

"Net Connection ID: " & objNetworkAdapter.NetConnectionID & vbCrLf &_

"Net Connection Status: " & _

objNetworkAdapter.NetConnectionStatus & vbCrLf _

"MAC Address: " & objNetworkAdapter.MACAddress & vbCrLf &_

"PNP Device ID" & objNetworkAdapter.PNPDeviceID

Next

' Выводим результат в текстовый файл

TextOut strResult, "D:\NetworkAdapters.txt"

'Создаем объект WshShell

Set WshShell = WScript.CreateObject("WScript.Shell")

'Открываем созданный файл в Блокноте

Set theNotepad = WshShell.Exec("notepad " & "D:\NetworkAdapters.txt" )

'************************* Конец ***********************************

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

'********************************************************************

' Имя: UserInfo.vbs

' Язык: VBScript

' Описание: Вывод информации о пользователе компьютера и смена

' его пароля

Page 90: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

'********************************************************************

Option Explicit

'Объявляем переменные

Dim objUser ' Экземпляр объекта User

Dim WshShell ' Объект WshShell

Dim Res ' Результат нажатия кнопки в диалоговом окне

Dim strPassword ' Строка с новым паролем

Dim strResult ' Строка для вывода на экран

'********************** Начало *************************************

' Связываемся с пользователем MyUser компьютера LEGEND

Set objUser = GetObject("WinNT://LEGEND/MyUser,user")

' Формируем строку с информацией о пользователе

strResult = "Информация о пользователе MyUser" & vbCrLf &_

"Имя: " & objUser.Name & vbCrLf & _

"Описание: " & objUser.Description & vbCrLf

' Выводим сформированную строку на экран

WScript.Echo strResult

' Создаем объект WshShell

Set WshShell = WScript.CreateObject("WScript.Shell")

' Запрос на изменение пароля

Res = WshShell.Popup("Изменить пароль у MyUser?",0,_

"Администрирование пользователей",vbQuestion+vbYesNo)

If Res=vbYes Then ' Нажата кнопка Да

' Устанавливаем новый пароль

objUser.SetPassword "NewPassword"

' Сохраняем сделанные изменения

Page 91: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

objUser.SetInfo

WScript.Echo "Пароль был изменен"

Else

WScript.Echo "Вы отказались от изменения пароля"

End If

'************* Конец *********************************************

Создание нового пользователя компьютера

'********************************************************************

' Имя: AddUser.vbs

' Язык: VBScript

' Описание: Создание нового пользователя компьютера

'********************************************************************

Option Explicit

'Объявляем переменные

Dim objComputer ' Экземпляр объекта Computer

Dim objUser ' Экземпляр объекта User

Dim strUser ' Имя создаваемого пользователя

' Задаем имя пользователя

strUser = "MyUser"

' Связываемся с компьютером LEGEND

Set objComputer = GetObject("WinNT://LEGEND")

' Создаем объект класса User

Set objUser = objComputer.Create("user",strUser)

' Добавляем описание созданного пользователя

objUser.Description = "Этот пользователь создан из сценария ADSI"

Page 92: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

' Сохраняем информацию на компьютере

objUser.SetInfo

'************* Конец *********************************************

Создание группы пользователей компьютера

'********************************************************************

' Имя: AddGroup.vbs

' Язык: VBScript

' Описание: Создание новой группы на компьютере

'********************************************************************

Option Explicit

'Объявляем переменные

Dim objComputer ' Экземпляр объекта Computer

Dim objGroup ' Экземпляр объекта Group

Dim strGroup ' Имя создаваемой группы

' Задаем имя пользователя

strGroup = "MyGroup"

' Связываемся с компьютером LEGEND

Set objComputer = GetObject("WinNT://LEGEND")

' Создаем объект класса Group

Set objGroup = objComputer.Create("group",strGroup)

' Сохраняем информацию на компьютере

objGroup.SetInfo

'************* Конец *********************************************

Удаление пользователя и группы компьютера

Page 93: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

'********************************************************************

' Имя: DelUserAndGroup.vbs

' Язык: VBScript

' Описание: Удаление пользователя и группы компьютера

'********************************************************************

Option Explicit

On Error Resume Next

'Объявляем переменные

Dim objComputer ' Экземпляр объекта Computer

Dim strUser ' Имя удаляемого пользователя

Dim strGroup ' Имя удаляемой группы

Dim WshShell ' Объект WshShell

Dim strMess '

'********************** Начало *************************************

' Имя удаляемого пользователя

strUser = "MyUser"

' Имя удаляемой группы

strGroup = "MyGroup"

' Связываемся с компьютером LEGEND

Set objComputer = GetObject("WinNT://LEGEND")

' Создаем объект WshShell

Set WshShell = WScript.CreateObject("WScript.Shell")

'************* Удаление пользователя ***********************

' Удаляем пользователя

objComputer.Delete "user", strUser

' Обрабатываем ошибки

Page 94: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

If Err.Number <> 0 Then

strMess="Ошибка при удалении пользователя " & strUser & vbCrLf & _

"Код ошибки: " & Err.number & "Описание: " & Err.description

WshShell.Popup strMess,0,"Удаление пользователя",vbCritical

' Очищаем свойства объекта Err

Err.Clear

Else

' Все в порядке

strMess = "Пользователь " & strUser & " удален"

WshShell.Popup strMess,0,"Удаление пользователя",vbInformation

End If

'************* Удаление группы ***********************/

objComputer.Delete "group", strGroup

' Обрабатываем ошибки

If Err.Number <> 0 Then

strMess="Ошибка при удалении группы " & strGroup & vbCrLf & _

"Код ошибки: " & Err.number & "Описание: " & Err.description

' Очищаем свойства объекта Err

Err.Clear

Else

' Все в порядке

strMess="Группа " & strGroup & " удалена"

WshShell.Popup strMess,0,"Удаление группы",vbInformation

End If

'************* Конец *********************************************/

Page 95: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Создание постоянного фильтра событий

'*******************************************************************

' Имя: Filter.vbs

' Язык: VBScript

' Описание: Создание постоянного фильтра событий

'*******************************************************************

Option Explicit

On Error Resume Next

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemServices

Dim objEventFilterClass ' Указатель на класс __EventFilter

Dim objEventFilter ' Объект класса __EventFilter

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:\\" & _

strComputer & "\" & strNamespace)

' Получаем указатель на класс __EventFilter

Set objEventFilterClass = objService.Get("__EventFilter")

' Создаем новый объект класса __EventFilter

Set objEventFilter = objEventFilterClass.SpawnInstance_()

' Заполняем свойства нового объекта

Page 96: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

objEventFilter.Name = "MonitoringServices"

objEventFilter.QueryLanguage = "WQL"

objEventFilter.Query = "SELECT * FROM __InstanceModificationEvent " & _

"WITHIN 5 WHERE TargetInstance ISA 'Win32_Service'"

' Сохраняем объект в репозитории CIM

objEventFilter.Put_()

' Обрабатываем ошибки

If Err.Number <> 0 Then

' Выводим сообщение об ошибке

MsgBox "Ошибка при регистрации фильтра событий MonitoringServices"

Else

' Выводим сообщение об успешной регистрации

MsgBox "Регистрация фильтра событий MonitoringServices прошла успешно"

End If

'************************* Конец ***********************************

Создание постоянного потребителя событий

'*******************************************************************

' Имя: Consumer.vbs

' Язык: VBScript

' Описание: Создание постоянного потребителя событий

'*******************************************************************

Option Explicit

On Error Resume Next

' Объявляем переменные

Dim strComputer ' Имя компьютера

Page 97: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

Dim strNamespace ' Имя пространства имен WMI

Dim objService ' Объект SWbemServices

Dim objConsumerClass ' Указатель на класс LogFileEventConsumer

Dim objConsumer ' Объект класса LogFileEventConsumer

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

strNamespace = "Root\CIMV2"

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:\\" & _

strComputer & "\" & strNamespace)

' Получаем указатель на класс LogFileEventConsumer

Set objConsumerClass = objService.Get("LogFileEventConsumer")

' Создаем новый экземпляр класса LogFileEventConsumer

Set objConsumer = objConsumerClass.SpawnInstance_()

' Заполняем свойства нового объекта

objConsumer.Name = "ServiceLog"

objConsumer.Filename = "C:\LogService.txt"

objConsumer.Text = "Служба %TargetInstance.DisplayName% " &_

" перешла в состояние %TargetInstance.State%"

' Сохраняем созданный объект в репозитории CIM

objConsumer.Put_()

' Обрабатываем ошибки

If Err.Number <> 0 Then

' Выводим сообщение об ошибке

Page 98: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

MsgBox "Ошибка при регистрации потребителя ServiceLog"

Else

' Выводим сообщение об успешной регистрации

MsgBox "Регистрация потребителя ServiceLog прошла успешно"

End If

'************************* Конец ***********************************

Регистрация связи между фильтром и потребителем событий

'*******************************************************************

' Имя: FilterToConsumer.vbs

' Язык: VBScript

' Описание: Регистрация связи между фильтром и потребителем событий

'*******************************************************************

Option Explicit

On Error Resume Next

' Объявляем переменные

Dim strComputer ' Имя компьютера

Dim strNamespace ' Имя пространства имен

Dim objService ' Объект SWbemServices

Dim objEventFilter ' Объект класса __EventFilter

Dim objConsumer ' Объект класса LogFileEventConsumer

Dim objBindingClass ' Указатель на класс __FilterToConsumerBinding

Dim objBindingInstance ' Объект класса __FilterToConsumerBinding

'********************** Начало *************************************

' Присваиваем начальные значения переменным

strComputer = "."

Page 99: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

strNamespace = "Root\CIMV2"

' Подключаемся к пространству имен WMI

Set objService = GetObject("WinMgmts:\\" & _

strComputer & "\" & strNamespace)

' Получаем указатель на фильтр событий (объект __EventFilter)

Set objEventFilter = _

objService.Get("__EventFilter.name=""MonitoringServices""")

'Получаем указатель на потребитель событий (объект LogFileEventConsumer)

Set objConsumer = _

objService.Get("LogFileEventConsumer.name=""ServiceLog""")

' Получаем указатель на класс __FilterToConsumerBinding

Set objBindingClass = objService.Get("__FilterToConsumerBinding")

' Создаем новый экземпляр класса __FilterToConsumerBinding

Set objBindingInstance = objBindingClass.SpawnInstance_()

' Заполняем свойства нового объекта

objBindingInstance.Filter = objEventFilter.Path_

objBindingInstance.Consumer = objConsumer.Path_

' Сохраняем объект в репозитории CIM

objBindingInstance.Put_()

' Обрабатываем ошибки __FilterToConsumerBinding

If Err.Number <> 0 Then

' Выводим сообщение об ошибке

MsgBox "Ошибка при связывании фильтра событий с потребителем"

Else

' Выводим сообщение об успешной регистрации связи

MsgBox "Фильтр событий и потребитель связаны"

Page 100: Eабораторная работа № 3kspt.icc.spbstu.ru/media/files/2017/course/basicos/BOS_A03.pdf · виртуальной машины в составе виртуального

End If

'************************* Конец ***********************************

Список использованных источников:

1. Серверные роли Windows Server 2003. [Электронный ресурс] URL:

https://www.microsoft.com/Rus/WindowsServer2003/evaluation/serverroles/default.mspx

Дата обращения: 15.09.2017.

2. Установка Windows Server 2003 в картинках. [Электронный ресурс] URL: http://win-

server.ru/p/11. Дата обращения: 15.09.2017.

3. Центр сценариев Microsoft. [Электронный ресурс] URL:

https://technet.microsoft.com/ru-ru/scriptcenter/default.aspx. Дата обращения:

15.09.2017.

4. Попов А.В., Шикин Е.А. Администрирование Windows с помощью WMI и WMIC. –

СПб, БХВ-Петербург, 2004. – 752 с.

5. Поляк-Брагинский А.В. Администрирование сети на примерах. – СПб, БХВ-

Петербург, 2005. – 320 с.

6. Попов А.В. Windows Script Host для Windows 2000 / XP. [Электронный ресурс] URL: http://www.plam.ru/compinet/windows_script_host_dlja_windows_2000_xp/index.php . Дата обращения: 15.09.2017.

7. WMI Architecture. [Электронный ресурс] URL: https://msdn.microsoft.com/ru-

ru/library/windows/desktop/aa394553(v=vs.85).aspx. Дата обращения: 15.09.2017.