GNU/Linux >> Linux Esercitazione >  >> Linux

Esegui il comando su più server Linux da Windows

Scopri come eseguire lo stesso comando ripetitivo su più server Linux dalla macchina Windows. Questo trucco utilizza l'utilità 'plink' dello stucco della riga di comando.

Una delle principali preoccupazioni per sysadmin è eseguire lo stesso comando ripetitivo su più server Linux in infra quando non è disponibile uno strumento centralizzato. In questo post, vedremo come eseguire un comando su più server Linux in una volta sola. Non è necessario salvare la password del tuo account da nessuna parte e nemmeno avere expect funzione nella tua macchina sorgente!

Prerequisito

  • Macchina Windows con plink scaricato su di essa (scarica plink qui)
  • I server Linux dovrebbero essere raggiungibili da un computer Windows

Come farlo

plink è un'utilità della riga di comando di stucco. Tramite plink potremo connetterci al server fornendo IP, username, password sulla riga di comando. plink può essere invocato da un prompt dei comandi su Windows.

C:\Users\noname\Desktop>plink -ssh [email protected] -pw password@123 (hostname; date)
testserver
Tue Nov  1 12:54:33 IST 2016

C:\Users\noname\Desktop>

Vai al prompt dei comandi di Windows digitando cmd in una finestra di esecuzione (tasto Windows + r). Passare alla cartella in cui è conservato l'eseguibile plink e quindi digitare il comando plink come sopra.

  • ssh:protocollo per la connessione
  • id@IP server
  • pw:password dell'account
  • Comandi da eseguire sul server Linux tra parentesi.

Ecco come funziona plink. Ora per eseguire lo stesso comando su più server vediamo sotto l'esempio. Ci collegheremo a 3 server ed eseguiremo il comando hostname &date.

Innanzitutto, inserisci tutti e 3 gli indirizzi IP del server in un unico file ip_list.txt . Quindi esegui il ciclo for semplice su quel file come di seguito nel prompt dei comandi. Questo è uno script batch molto semplice.

C:\Users\noname\Desktop>FOR /F "tokens=1,2* delims=," %G IN (C:\Users\noname\Desktop\ip_list.txt) DO plink -ssh user1@%G -pw password@123 (hostname; date)

testserver
Tue Nov  1 12:54:33 IST 2016

testserver1
Tue Nov  1 12:54:36 IST 2016

testserver2
Tue Nov  1 12:54:39 IST 2016

C:\Users\noname\Desktop>

Ecco! tutto l'output dei comandi del server è lì! Comandi eseguiti su tutti i server in una volta sola.

Questo è molto utile quando devi controllare alcuni output a riga singola da tutti i server o se vuoi eseguire comandi di aggiornamento dell'account su tutti i server in una volta sola.


Linux
  1. DSH – Esegui un comando Linux su più host alla volta

  2. Linux:come eseguire un bootloader da Linux?

  3. eseguire il comando sudo su Linux da plink.exe[windows]

  4. Esegui il comando cd come superutente in Linux

  5. Nagios:disabilita le notifiche dalla riga di comando su Windows/Linux

Come accedere alle partizioni Linux da Windows 10

Copia un file in più directory dalla riga di comando su Linux

Come rimuovere un comando dalla cronologia in Linux

Come eseguire più comandi Linux in un unico comando

Come eseguire più comandi Linux contemporaneamente nel terminale Linux

Come eseguire il comando SUDO in WinSCP per trasferire file da Windows a Linux