david vielmetter
como um administrador de sistema, você eventualmente terá que lidar com um sistema que não responde à GUI. Felizmente, existem várias maneiras de reiniciar um PC com Windows a partir de outro PC ou servidor windows na rede. Aqui estão quatro dos meus métodos favoritos para fazer isso:
1. O comando shutdown. Esta é uma ferramenta de linha de comando disponível na maioria dos computadores windows que permitirá que você reinicie remotamente qualquer computador conectado a um domínio do active directory. Tudo o que é necessário são as credenciais adequadas.
-
shutdown -r
— reinicia o sistema. -
shutdown -m
— especifica um computador remoto a ser desligado/reiniciado/logoff (\computername) -
shutdown -s
— desliga o sistema para baixo (e poderes fora). -
shutdown -l
— regista o utilizador com sessão iniciada no sistema. -
shutdown -t xx
— ondexx
é o número de segundos para esperar até desligar/reiniciar/logoff -
shutdown -i
— lança a versão GUI da ferramenta de encerramento. -
shutdown -a
— anula o anterior comando de desligamento.
exemplo:
sistema de força chamado opti390.dominio.local para reiniciar agora.shutdown -m \opti390.domain.local -t 0 -r -f
2. Rundll32. Este método invoca a capacidade nativa do Windows de executar DLL do sistema que pode executar funções do sistema.
-
rundll32.exe user.exe,ExitWindows
– desliga completamente as janelas. -
rundll32.exe user.exe,ExitWindowsExec
– reinicia o windows. -
rundll32.exe shell32.dll,SHExitWindowsEx x
onde x representa:
- 0 – logoff
- 1 – desligamento
- 2 – reboot
- 4 – força
- 8 – desligue a alimentação
3. PowerShell restart-comando do computador.
exemplo: reiniciar o servidor.dominio.localRestart-Computer -Force -ComputerName opti390.domain.local
4. Taskkill e tasklist. Dois comandos que podem ser usados em um sistema Windows conectado à rede para listar e encerrar processos em execução. Taskkill também pode ser usado para reiniciar um sistema, matando processos críticos do windows.
-
tasklist
– lista processos atualmente em execução -
taskkill
– encerra qualquer processo pelo número do processo
exemplo: primeiro você pode listar os processos no opti390.dominio.local (para descobrir quais processos podem ser pendurados). Então você pode forçar a encerrar os processos que não estão respondendo.
tasklist -s \opti390.domain.localOUTLOOK.EXE (not responding) 4712 0 11,580 KLMS.exe 4008 0 5,456 KUNS.exe 2660 0 9,152 KLogonUI.exe 4404 1 21,640 Ktaskkill -S \opti390.domain.local /U domainusername /P password /PID 4712 /T /F
exemplo: encontre processos que não estão respondendo e encerre todos eles.taskkill /f /fi "status eq not responding"
exemplo: reiniciar opti390.dominio.local remotamente.taskkill -S \opti390.domain.local /U domainusername /P password /im lsass.exe /fp
5. Bônus devido à popularidade. PSExec é um conjunto gratuito de ferramentas por Sysinternals criado para gerenciar remotamente sistemas windows em um ambiente de rede de negócios. Se seus sistemas estiverem conectados a um domínio e você tiver uma conta administrativa, você poderá usar o seguinte comando para reiniciar remotamente um sistema usando o PSExec.exe.
Primeiro Baixe e extraia PSTools.zip Para uma pasta no sistema em que você fará a reinicialização remota. Abra uma janela do prompt de comando e altere o diretório para a pasta PSTools (você extraiu anteriormente).
exemplo: reinicie remotamente um domínio conectado ao PC usando psexec.exe.
psexec.exe \opti390.domain.local -u DOMAIN\<domainusername> -p <password> -i -d cmd /c shutdown /r /f /t 1
psexec.opções de comando exe
- -eu sessão interativa
- -D não espere que o processo termine
cmd.exe opções de comando
- cmd do windows shell no host remoto
- /c comando Executar e, em seguida, terminar a partir de
- encerramento comando de encerramento do windows
- /r reiniciar o (/h se você deseja desligar)
- /f Força o encerramento, não espere que os processos de
- /t 1 tempo de espera de 1 segundo