Wmi моніторинг служб
Скористаємося можливостями технології WMI. Описувати цю технологію я тут не буду, але на цьому сайті ви можете знайти нам інформацію про те, наприклад цю статтю. Також ви можете купити хорошу книгу "Адміністрування Windows за допомогою WMI і WMIC" (Попов А.В. Шикин Е.А.).
Скрипт складається з основного тіла і двох процедур.
Основне тіло виглядає наступним чином:
Наступним етапом є обробник подій:
І, нарешті, пошлемо листа, якщо сервіси грохнути:
У рядку скрипта
У рядку скрипта
виправте ourdomain.ru на ваш smtp сервер, наприклад, mail.ourdomain.ru.
Тепер можна зберегти скрипт як test.vbs на диску c: \ (зверніть увагу на назву, так як воно прописано в AutoExNt.bat). Якщо хочете зберегти в іншому місці, то потрібно підправити AutoExNt.bat. Тепер тестуємо: просто запускаємо скрипт, а потім пробуємо зупинити служби друку і «Теми», оновлюємо і бачимо, що служби знову запущені, а листи відіслані (якщо встановлений SMTP, а він є в компонентах Windows разом з IIS) і з'явилися записи в файлі журналу на диску С: \ immSrvASNC.Log.
На цьому не зупинимося і створимо bat-файл такого змісту:
Збережемо під ім'ям AutoExNt.bat. Тепер потрібно провернути такий фінт: копіюємо цей файл і файли з Resource Kit (autoexnt.exe, instexnt.exe, servmess.dll) в директорію% WinDir% \ system32 \. Фішка в тому, що autoexnt.exe запускає AutoExNt.bat як сервіс ... Ну і відповідно процес cscript.exe.
Не треба забувати про права на запуск сервісів, а також на підключення до простору імен. І взагалі, краще бути адміном компа, як мінімум.
Тепер проінсталліруем сервіс AutoExNt.exe. У командному вікні або в сорочки з короткими рукавами напишемо:
Запустимо сервіс AutoExNt, відповідно запуститься і скрипт. Можна разлогініваться і бути впевненим, що моніторинг триває. Сервіс AutoExNt через кілька хвилин сам зупиниться, але скрипт буде прекрасно продовжувати працювати і залишатися в процесах. Так що не звертайте на цей сервіс уваги. Для повної зупинки потрібно знищити процес cscript.exe.
На цьому все. Кому цікаво - спробуйте.
Всі необхідні файли для запуску цього прикладу ви можете завантажити тут (19 717 байт).