我有一个Windows 2016域控制器,每次修补并重新启动服务器时,PowerShell进程就会启动并消耗100%的内存(CPU正常)。
我唯一能做的就是杀死进程(如果可以RDP的话)或重新启动服务器,然后在进程开始之前迅速跳到服务器上。
我如何找出启动Powershell程序的原因并找出其作用?
谢谢。
答案 0 :(得分:0)
您可以查询wmi以确定进程详细信息:
$ServerName = Read-Host -Prompt ComputerName
$gwmiArgs = @{
Class = 'Win32_Process'
ComputerName = $ServerName
Filter = 'Name = "powershell.exe"'
}
$details = Get-WmiObject @gwmiArgs
foreach ($process in $details)
{
$owner = $process.GetOwner()
$owner = if ($owner.Domain)
{
'{0}\{1}' -f $owner.Domain, $owner.User
}
else
{
$owner.User
}
@"
Process: powershell.exe
Owner: $owner
PID: $($process.ProcessId)
CommandLine: $($process.CommandLine)
"@
}