以本地管理员Windows Server 2008 R2 SP1身份登录$ComputerName
这个脚本:
$admin=[adsi]("WinNT://" + $ComputerName + "/administrator, user")
$admin.psbase.invoke("SetPassword", $Password)
$admin.psbase.CommitChanges()
在本地运行会引发异常:
Exception calling "Invoke" with "2" argument(s):"The network path was not found"
最佳答案
当我想更改AD域中所有服务器的本地管理员密码时,我只是使用PS远程处理,它甚至可以将非常基本的命令从CMD推送到远程服务器。
我写了一个简短的脚本,在其中我使用powershell从域 Controller 获取信息,并根据某些条件将命令推送到服务器。
我发现这是更改本地管理员密码的真正便捷的方法。唯一的要求是在所有服务器上启用WinRM。
脚本在下面:
Invoke-Command -ScriptBlock {net user administrator "Password01"} -ComputerName (Get-ADComputer -SearchBase "OU=test,OU=servers,DC=lab,DC=com" -Filter * | Select-Object -Expand Name)
关于PowerShell : change local Administrator password,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16532094/