Помощь по: батник для управления сервисами
Вложений: 1
Возникла необходимость мониторинга и запуска сервисов на удалённом PC, для решения данной проблемы был использован батник взятый с этого форума (ссылку к сожалению не смогу указать) автор батника registeruser1
Итак, скопировал я батник изменил то что мне надо было, понятное дело что изменил кодировку, расширение... запустил при выполнение батника вылезла ошибка (скрин прилагается). вопрос такой: что нужно было прописывать в переменной среде? P.S. Если важно: OS - Windows Server2003 код баника: Код:
@echo off |
cobra2029, используйте лучше WMI для слежения за сервисом посредством WSH или PoSH.
|
Iska, ммм можно поподробнее, и если нетрудно пример.
|
|
Iska, спасибо за ссылки очень помогли.
использовав один из скриптов, я получил почти то, что хотел, но появился еще 1 вопрос: на удалённом компе( назовем его "А") есть пользователь и пароль, на моём рабочем ( "В") логин и пас такие же, но на компе "С", на котором необходимо запускать скрипт, чтобы перезапустить нужный сервис на удалённом компе "А", логин и пас другие. как мне вбить в скрипт, логин и пас, через которые бы он заходил на серв ("А"). если запустить скрипт на машине "В" то он работает и все классно. но если его запустить на машине "С" то пишет типа нет доступа. тест скрипта: Код:
Option Explicit |
полазил по форуму решения на вопрос не нашел, подскажите как зделать или ткните носом где можно почитать) (желательно с примером)
|
Цитата:
Попробуйте использовать вместо моникера (Constructing a Moniker String (Windows)) метод SWbemLocator.ConnectServer: Цитата:
|
Iska, у меня что то снова не выходит, вроде делаю все как написано, но видимо что то не так, если не трудно исправьте ошибку(или скорее всего ошибки) в коде, и, если можно подробно объясните, что делал не так.
Код:
Option Explicit |
Как я не могу объяснить Вам, что Вы делаете не так, коль Вы молчите о том, что Вы хотите получить, что делает (или должен делать) Ваш скрипт, и что именно «не выходит»?!
Про грамматику я уже упоминал. Если Вы напишете ответ в том же духе — не обессудьте, я его молча проигнорирую. |
"что должен делать скрипт?"
он должен узнавать какое состояние (запущен или остановлен) у сервисов на удаленном компе (там стоит winserv2000), и по команде пользователя или запустить, или остановить сервис. как я понимаю скрипт должен подключиться к удалённой машине, получить статус сервиса (пользователь сам укажет какой), или вывести список всех сервисов (этот вариант был бы самым лучшим), и выполнить команду пользователя (старт сервиса или стоп сервиса). теперь что не получается: я использовал скрипт из сообщения 5 (этой темы). С ним все нормально, он работает но удаётся подключиться только с моей машины. Мне же необходимо чтобы этот скрипт запускался и работал с другой машины. Как я понимаю, на моей он работает по тому что на сервере ("А" как я уже писал выше), логин и пас точно такие же как и на моей машине ("В"), а вот на машине ("С") логин и пас отличаются. Мне нужно чтоб скрипт работал именно с машины "С". добавить логин и пас машины "С" на машину "А" не подходит, в свою очередь нельзя создать пользователя (с логином и пасом как на машине "А") на машине "С". ..."что именно не выходит"? я прочитал статьи которые Вы мне написали, модифицировал скрипт, но видимо что то сделал не так, скрипт не запускается вообще. P.S. учёл ваши пожелания по поводу запятых. |
просто интересно:
почему не запускается вот этот скрипт? Код:
' Full Computer Name P.S. просто решил попробовать выполнить уже готовый скрипт и все равно ошибка. |
перечитал еще несколько статей на тему: "VBS: WMI на удаленном компьютере"
но решение своей задачи не нашел. изучил 2 статьи по возможному решению ошибки "Разрешение отклонено "GetObject" ", проверил все какие только знал (и те которые узнал из статей) настройки DCOM, но и там безрезультатно. во общем, если кто знает как реализовать скрипт по моей задаче напишите пожалуйста, и желательно с подробными комментариями. Суть задачи (повторю для тех кому лень читать с самого начала): "что должен делать скрипт?" Скрипт должен узнавать какое состояние (запущен или остановлен) у сервисов на удаленном компе, и по команде пользователя запустить, или остановить сервис. Небольшое отступление: как я вижу выполнение этого скрипта: После запуска скрипта, пользователю выводится список всех сервисов (неважно запущенных или не запущенных) удалённый машины (в самом скрипте прописывается ip, user name, pw). После того как скрипт вывел список сервисов, пользователь нажимает кнопку (предположим "ОК") и ему предлагается ввести имя сервиса. Он нажимает снова "ОК", и появляется диалоговое окно где задаётся вопрос остановить или запустить. вот в принципе и вся задача. Буду очень благодарен тем кто поможет её решить. |
Задача решилась добавлением нового пользователя на сервер.
|
Время: 07:30. |
Время: 07:30.
© OSzone.net 2001-