Sto eseguendo un'applicazione su macchina Linux. Fornendo l'indirizzo IP di una macchina Windows come input, l'applicazione deve arrestare la macchina Windows. Se le macchine eseguono lo stesso sistema operativo, è molto semplice, ma sono confuso su come farlo nel sistema operativo trasversale.Arresto macchina Windows dal terminale linux
risposta
Comando per sistema shutdown windows da linux -:
$ net rpc -S <ip address> -U <username>%<password> shutdown -t 1 -f
Questo comando può essere emesso dalla bash o anche situato in cron per l'arresto il computer in un momento specifico e questo comando viene fornito con molte distribuzioni per impostazione predefinita.
Opzione 1: Installare il server SSH su Windows. Accedi a questo server da qualsiasi box e chiama il comando shutdown. Usiamo Interix (ambiente simile a Unix di Microsoft). Viene fornito con un telnet su server permette di richiamare i comandi di Windows da altre macchine ..
Un'altra opzione: Se samba installato su Windows è possibile connettersi a Windows e chiamare i comandi di Windows
net rpc SHUTDOWN ...
Un'altra opzione: prova rdesktop alla macchina Windows con comando shutdown (lo uso per l'esecuzione di Windows script batch che ha l'arresto in essa, non so se si può chiamare direttamente shutodwn)
Dipende dalla tua infrastruttura - come ti autentichi alle macchine Windows, se puoi configurarle tu stesso, ecc. Se fossi in me, metterei Cygwin sulle finestre di Windows, quindi su ssh
ed eseguirò shutdown -h
. Ci sono sicuramente altri modi per farlo, ovviamente.
è necessario un modo per lanciare un guscio sulla scatola di Windows in modo da poter eseguire ° shutdown comando integrato a Windows.
È possibile installare Cygwin per questo, quindi installare un demone SSH in Windows. Una volta che è in esecuzione, la tua Linux box può eseguire comandi sulla scatola di Windows come se fosse un'altra macchina Linux.
Here are some instructions for setting up Cygwin's sshd in Windows.
Usa telnet comando nel Linux
, assicurarsi telnet is enabled in Windows system
ATTENZIONE: questo è quasi sempre UN CONSIGLIO SCONOSCIUTO. Un server telnet in esecuzione nel server è quasi sempre una cattiva idea (se sei stato sotto una roccia per gli ultimi 20 anni, tieni presente che il protocollo telnet invia nomi utente e password in chiaro nella tua rete). – ndemou
ci possono essere più di setup da fare, soprattutto per Windows Vista, Windows 7 e altre versioni di Windows, per consentire lo spegnimento remoto:
Parte A) sulla macchina Windows:
1) Aggiungi una politica di sicurezza arresto remoto:
corsa
secpol.msc
nella struttura del programma, aperto
Security Settings
>Local Policies
>User rights Assignment
Trovare la voce
Force shutdown from a remote system
Modifica la voce, aggiungere l'account utente di Windows che verrà utilizzato per l'arresto (es: nouknouk)
2) Aggiungere chiavi di registro per disattivare UAC restrizioni remote:
Run
regedit.exe
come amministratoreTrova
HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System
Creare un nuovo valore del Registro
DWORD(32)
denominatoLocalAccountTokenFilterPolicy
e quindi assegnare è il valore1
3) avviare il servizio Registro di sistema remoto:
Ope n
cmd.exe
come amministratoreeseguire i due seguenti comandi:
sc config RemoteRegistry start= auto
sc start RemoteRegistry
Parte B) Sulla macchina Linux:
1) installare il pacchetto samba-common
:
Dipende dalla distribuzione Linux, ma per Debian e derivata (Ubuntu, Linux Mint, ...), Il comando apt-get può essere eseguito così:
apt-get install samba-common
2) Per effettivamente l'arresto vostra macchina Windows da Linux uno, eseguire il seguente comando:
net rpc shutdown -f -t 0 -C 'message' -U userName%password -I xxx.yyy.zzz.ttt
Dove :
-f
significa forza spegnere tutte le applicazioni (può essere obbligatoria)-t 0
è il ritardo prima di farlo (0 significa "adesso").-U user%password
è l'utente locale e la sua password sulla macchina Windows (quella che è stata autorizzata a eseguire lo spegnimento remoto nella parte A).-I
è l'indirizzo IP del computer Windows da arrestare.
Ciao, ho provato di tutto per farlo funzionare dal mio PC raspberrie pi 2 a Windows 8 ma non riesco ad ottenere l'errore "Connessione fallita: NT_STATUS_ACCESS_DENIED" . – tfonias74
E per un riavvio, aggiungi l'opzione '-r' alla fine. – mivk
Molti hanno bisogno di configurare Windows e Linux correttamente per far funzionare questa soluzione. Guarda la risposta di nouknouk se il comando net non è disponibile o se non funziona – ndemou