Como desligar o Windows Server 2003 sem usar o RDP?

8

Gostaria de saber se é possível encerrar uma caixa do Windows Server 2003, sem precisar fazer login na máquina por meio de uma área de trabalho remota.

O servidor está na minha rede, eu sei o endereço IP e o nome do host, bem como a senha do Administrador.

Desejo encerrar simplesmente clicando duas vezes em um atalho ou executando um script.

Como faço isso?

    
por Saajid Ismail 21.07.2010 / 18:12

4 respostas

16

Desligamento remoto ...

  • Usando suas credenciais de conta de domínio (se sua conta de usuário tiver direitos de administrador local na máquina de destino):
    shutdown /s /f /t 30 /m \SERVER-NAME
  • Usando a conta de administrador local da máquina remota (o psexec solicitará a senha):
    psexec \SERVER-NAME -e -h -u SERVER-NAME\administrator shutdown /s /f /t 30
  • Usando uma conta de domínio diferente:
    psexec \SERVER-NAME -e -h -u DOMAIN-NAME\username shutdown /s /f /t 30

Parâmetros de encerramento explicados ...

  • / s = shutdown (substitua / r se você quiser reinicializar)
  • / f = force (não permita que programas em execução ou sessões de usuários ativos interfiram na reinicialização)
  • / t 30 = fornece aos usuários conectados um aviso de 30 segundos (substitua qualquer número inteiro, 0 é um valor aceitável)
  • / m \\ NOME DO SERVIDOR = especifica o nome da máquina remota para reinicializar

Parâmetros do PsExec explicados ...

  • -e = não carrega o perfil do usuário (o perfil do usuário é desnecessário para o comando shutdown)
  • -h = executa a tarefa com privilégios elevados (só faz diferença no Vista / Win7 / Server2008)
  • -u SERVER-NAME \ administrator = faça login como administrador local em SERVER-NAME
  • desligamento / s / f / t 30 = i

Exemplo de arquivo em lote, usando a conta de administrador local ... (cole no Bloco de notas como rsla.bat)

  • @echo off
    REM rsla.bat - remote shutdown as local administrator
    REM This script is freeware authored by Miles Erickson, 7/2010.
    REM Requires PsExec.exe to be available in %PATH% (c:\windows\system32 is one option)
    REM Cannot be used to restart a domain controller (domain controllers do not have local admin accounts)
    IF (%1)==() GOTO instructions
    IF (%1)==(/?) GOTO instructions
    psexec \\%1 -e -h -u %1\administrator shutdown /s /f /t 30
    GOTO end
    :instructions
    ECHO Usage: rsla SERVER-NAME    (you will be prompted for a password)
    :end
    

Links ...

por 21.07.2010 / 23:46
9

Se você não precisasse especificar credenciais, você poderia usar o comando SHUTDOWN. Se você precisar especificar credenciais (seu login não tem permissões ou o computador não está no domínio), você pode usar o PSSHUTDOWN utilitário para fazer isso.

    
por 21.07.2010 / 18:15
3

Conta local:

cmd /k wmic /node:"targetcomputerhostname" /user:"AdministratororWhatever" os where primary=true call reboot

Conta do AD com privilégios de administrador local:

cmd /k wmic /node:"targetcomputerhostname" /user:"DomainAccountWithAdminPrivs@fqdn" os where primary=true call reboot

Isso é facilmente transportável como um arquivo em lotes. Tenha em mente que você precisará das exceioins remotas adequadas. Se o psshutdown funcionar, isso deve funcionar também sem instalar nenhum software externo (para não desabilitar as ferramentas do SysInternals, a única coisa com que eu jurei).

    
por 21.07.2010 / 18:46
1

Powershell:

$cred = get-credential Domain\AdminAccount
(gwmi -co %Computername% Win32_OperatingSystem -cr $cred).Shutdown()
    
por 21.07.2010 / 20:11