Я использую psexec для запуска пакетного сценария на удаленных машинах. Пакетный сценарий используется для настройки моего веб-приложения и запускает и останавливает IIS во время установки.
Сценарий работает нормально, но не работает при остановке и запуске IIS. Учетная запись, которую я использую для удаленного подключения, является администратором этого поля.
Может кто-нибудь подскажет, как начать запускать скрипт от имени администратора с помощью psexec?
Сен,
Если я хочу запустить myprog.bat от имени администратора на REMOTECLIENT, я бы выполнил следующую команду:
psexec \\REMOTECLIENT -u Administrator myprog.bat
Вам будет предложено ввести пароль. Точно так же вы можете предоставить его при первоначальном вызове, используя -п параметр.
Если у вас есть клиенты Windows 7 и / или Windows Server 2008, еще один вариант для изучения - это WinRM (удаленное управление Windows) и WinRS (удаленная оболочка Windows).
Однако они нуждаются в настройке. Я знаю, что вы уже выбрали psexec, я просто предлагаю дополнительную информацию. :)
Действительно быстро нужно выполнить winrm quickconfig
на машине, которой вы хотите управлять. Эта команда быстрого запуска изменяет ряд настроек по всей системе, поэтому перед запуском стоит проверить, допускают ли это ваши политики безопасности.
После запуска вы можете использовать WinRS следующим образом:
WinRS -r:Computername ipconfig
Если у вас еще нет разрешений в целевой системе, вы можете запустить команду с другими учетными данными.
WinRS -r:Computername -u:Username -p:Password ipconfig
Вы также можете использовать команды PowerShell на удаленных машинах, настроенных для удаленного управления. Изнутри управления Powershell
Invoke-Command hostname {powershell-command}
или icm hostname {powershell-command}
Если у вас есть подходящая инфраструктура, WinRM и WinRS могут заменить необходимость в psexec.
Ура Льюис