1

У меня такой же сервис работает на десятке тестовых машин. Указанный сервис вышел из строя (в частности, он был отключен и отключен тестом, а тест завершился на полпути), и я хочу повторно включить и перезапустить его на всех этих машинах. Обычное решение - sc \\machine config ServiceName start=auto за которым следует sc \\machine start ServiceName , и оно работает нормально, если моя учетная запись пользователя авторизована на другом компьютере. Но так как это клонированные тестовые машины, созданные из общего образа, который не знает меня по Адаму, они не узнают меня. Я знаю, что могу зайти и авторизоваться на этих машинах, но они регулярно стираются, и я пытаюсь сэкономить время.

Я знаю пароль локального администратора для всех этих машин. (И это тоже самое, из-за клонирования.) Как я могу запустить sc.exe чтобы он входил в систему с этим пользователем? Или есть другой способ, которым я могу включать и запускать эти сервисы программно с моей машины? (У меня есть очень простой зацикленный сценарий PowerShell, готовый к работе, но он не очень полезен, если я не могу найти команду для запуска, которая будет принята.)

Для справки вот сообщение об ошибке, которое я получаю:

[SC] OpenSCManager FAILED 5:

Access is denied.

2 ответа2

3

Используйте PsTools, который работает так же, как sc.exe, но позволяет войти в удаленную систему с использованием другой учетной записи. Иди сюда, чтобы скачать его. psservice [\\computer [-u username] [-p password]] <command> <options> используя те же команды, что и sc.exe. Итак, учитывая ваш пример, вы должны ввести

psservice \\machine -u AdminUserName -p AdminPassword config ServiceName start=auto

а потом

psservice \\machine -u AdminUserName -p AdminPassword start ServiceName
2

sc \\machine config Имя_службы start = auto obj = Имя пользователя password = PWD

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .