Я администратор домена, и я пытаюсь запустить сценарий wmic, чтобы скопировать файл на удаленный компьютер с другого удаленного компьютера.
Моя команда:
WMIC /NODE:@"C:\compList.txt" PROCESS CALL Create "xcopy \\networkPC\file.exe C:\"
он не копирует file.exe на компьютеры, которые я указал в compList.txt, я знаю, что это не проблема привилегий, потому что я попытался запустить простой процесс
cmd /c echo 1>C:\1.txt
и он создал 1.txt на удаленном компьютере.
В чем может быть проблема?
Один из способов обойти эту ошибку - использовать runas
. Если у вас есть доступ к командной строке, используйте /runas:<domain>\<domainadmin> cmd.exe
. Вы получите вторую командную строку, которая запускается с учетными данными администратора домена. (Примечание: для работы в Windows 7 вам, возможно, придется поднять уровень выше UAC.)
Когда у вас будет командная строка администратора домена, продолжайте работу с WMIC.
C:\\>**runas /user:dom\domadmin cmd.exe**
(запросит пароль администратора домена и откроет новую командную строку)
C:\\>**wmic /node:@c:\list.txt**
затем
wmic:root\cli>**call create process "xcopy \\\server\file C:\folder\file"**
следует скопировать.
Возможно ли, что у вас включен брандмауэр Windows (или брандмауэр стороннего производителя), который блокирует вызов WMI? Порт 135 должен быть открыт для правильной работы WMI. Видеть Эта статья для получения подробной информации о подключении WMI через брандмауэр.
Редактировать:
Я еще немного покопался в этом - ваша проблема в том, как WMIC использует ваши учетные данные, когда пытается подключиться к networkPC. Вы запускаете WMIC в режиме олицетворения по умолчанию «Impersonate» - это позволяет WMIC олицетворять вашу учетную запись на локальном компьютере (компьютеры в compList.txt) - но когда он пытается подключиться к удаленному компьютеру (networkPC), он не может олицетворять вы, так что он подключается как NT AUTHORITY \ ANONYMOUS LOGON.
Я думаю, у вас есть 2 возможных решения:
/IMPLEVEL:Delegate
- но это открывает новую проблему, потому что вам также необходимо передать /AUTHORITY:"kerberos:targetdomain\targetcomputer"
параметр - а targetcomputer - это имя компьютера из compList.txt - это означает, что вам нужно будет поместить свои вызовы wmic в цикл вокруг компьютеров в compList.txt вместо использования /NODE:@compList.txt