
Я хотел бы сбросить настройки службы wsus и удалить загруженные обновления на одном или нескольких выбранных хостах (до 200 хостов).
Я хотел бы выполнить ping хостов и экспортировать в файл Excel с результатами онлайн и офлайн.
Следующее пожелание — чтобы
***
при вводе пароля он отображался звездочкой.cls $User = Read-Host "Enter username" $Pass = Read-Host "Enter password" cls
4. Было бы хорошо скопировать его psexec
на хост каждого, C:\temp
если это необходимо.
Я создал bat-файл для сброса службы WSUS и удаления загруженных обновлений.
clean_wsus.bat file:
net stop wuauserv
net stop bits
cd\
cd C:\Windows\SoftwareDistribution
del *.* /s /q
net start wuauserv
net start bits
wuauclt /resetauthorization /detectnow
На одном хосте это работает отлично.
Это скрипт PowerShell:
$input = Read-Host @"
Select Option
(1)Manually enter computer(s)
(2)Retrieve computer(s) from file
Option
"@
If ($input -eq 1){
$count = Read-Host "How many computers"
$Computers = 1..$count
$b=0;$c=1; ForEach ($Computer in $Computers) {$Computers[$b] = Read-Host "Computer" $c; $b++; $c++}
} ElseIF ($input-eq 2) {
$Computers = Read-Host "File"
$Computers = Get-Content $Computers
} Else {
write-host "Invalid Option"
Exit
}
cls
$User = Read-Host "Enter username"
$Pass = Read-Host "Enter password"
cls
$PSExec = "C:\Temp\PsExec.exe"
ForEach ($Computer in $Computers){
& $PSExec \\$Computer -u $User -p $Pass -h "C:\Temp\clean_wsus.bat"
}
Вот какую ошибку я получаю:
PsExec v2.33 - Execute processes remotely
Copyright (C) 2001-2021 Mark Russinovich
Sysinternals - www.sysinternals.com
PsExec.exe : The handle is invalid.
At C:\Temp\WSUS\Script\WSUS Update.ps1:31 char:1
+ & $PSExec \\$Computer -u $User -p $Pass -h "C:\Temp\clean_wsus.bat"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (The handle is invalid.:String) [], RemoteExce
ption
+ FullyQualifiedErrorId : NativeCommandError
Logon failure: the user has not been granted the requested logon type at this computer.
Connecting to local system...
Connecting to local system...
Starting PSEXESVC service on local system...
Copying authentication key to NB***...
Connecting with PsExec service on NB***..
Starting C:\Temp\clean_wsus.bat on NB***....
Couldn't install PSEXESVC service:
PsExec could not start C:\Temp\clean_wsus.bat on NB***.: