
Я пытаюсь запустить пакетный файл (для установки некоторого программного обеспечения) на удаленном компьютере. Для этого я использую PSExec.
psexec.exe \\КОМПЬЮТЕР C:\swsetup\install.bat
Это работает отлично, за исключением некоторых случаев сбоя установки из-за того, что скрипт не запускается от имени администратора (если я вхожу в систему, щелкаю правой кнопкой мыши и выбираю «Запуск от имени администратора», скрипт запускается и успешно устанавливается).
Я пробовал запустить от имени администратора с помощью команды /runas, но безуспешно.
psexec.exe \\компьютер cmd
а потом
runas /пользователь:компьютер\администратор C:\swsetup\install.bat
Система выдает сообщение «Введите пароль для учетной записи», а затем возвращается к командной строке, не позволяя мне ввести пароль. Та же проблема возникает, если я пытаюсь сделать следующее:
запустите как /пользователь:[email protected]C:\swsetup\install.bat
Есть ли способ обойти это или мне придется зайти на машину, войти в систему и затем запустить скрипт на каждой машине?
решение1
Создайте расписание задач на удаленном компьютере, которое запускает нужный вам пакетный файл с наивысшими привилегиями по требованию. Вы можете добавить новую задачу на удаленный компьютер с помощью schtasks /Create /? (поиск добавить расписание задач на удаленный компьютер)
создать ярлык для запуска задачи
запустить ярлык с помощью psexec.exe
Я использую этот метод для обхода UAC при запуске некоторых программ от имени администратора. Я создал новую папку планировщика задач "bypass UAC" и внутри нее новую задачу "installer".
Вкладка «Общие»: установите флажок «Запускать с наивысшими привилегиями».
Вкладка «Действие»: запустите программу yourbatchfile
Вкладка «Условия»: снимите флажок «Ограничения питания» и установите флажок «Выводить компьютер из спящего режима», если у вас включены таймеры вывода из спящего режима и вы хотите вывести компьютер из спящего режима для выполнения задачи.
Вкладка «Параметры»: установите флажок «Разрешить запуск задачи по команде»
Для ярлыка используйте шаблон: C:\Windows\System32\schtasks.exe /RUN /TN "имя_папки\имя_задачи"
так например "обойти UAC\installer"
Если мои инструкции непонятны, введите в поиске «обход UAC с помощью планировщика задач».
решение2
Пробовали ли вы добавить переключатель пароля PSExec с именем учетной записи, с которой вы запускаете пакет?
-p Specifies optional password for user name. If you omit this
you will be prompted to enter a hidden password.