Ligando/Desligando máquina pela rede

Publicado por Douglas (última atualização em 10/07/2011)

[ Hits: 13.814 ]

Download liga.sh




Funcionamento do WOL (Wake on LAN)

1 - Instalar os pacotes.

wakeonlan - Sends 'magic packets' to wake-on-LAN enabled ethernet adapters
samba - SMB/CIFS file, print, and login server for Unix

apt-get install wakeonlan samba

2 - Criar uma pasta onde os arquivos ficaram na maquina.

3 - Entrar na pasta criada e criar um arquivo chamado maquinas, nesse arquivo estarao todas as maquinas que irao ser ligadas pela rede.
   
   Obs.: todas as maquinas cadastradas seguirão a seguinte regra.

   maquina - nxt-<final correspondente a maquina>   
   mac - 00:00:00:00:00:00   

   <maquina>,<mac>

4 - copiar o script liga.sh e desliga.sh para dentro da pasta criado no item 2.

5 - dar permissão de execução nos scripts copiados

chmod +x <nomedoscript>.sh

6 - agendar no crontab a execucao do script

* 8    * * 1    root    /<o lugar que esta o script para ligar maquinas>
* 0    * * 1    root    /<o lugar que esta o script de desligamento>

  



Esconder código-fonte

Script para Ligar Máquina

#!/bin/bash

maquinas=`grep nxt- maquinas | cut -d , -f 1`;

for i in $maquinas; do
#verifica se a maquina esta ligada
   ping -c 2 $i
#verifica qual e o retorno do comando ping 
#   1 - sem sucesso 
#   0 - sucesso
   j=$?

   if test $j -eq 1; then
      echo $i >> tempmaquinas
      mac=`grep $i maquinas | cut -d , -f 2`
      wakeonlan $mac
   fi
done

Script para Desligar Máquina

#!/bin/bash

maquinas=`grep nxt- tempmaquinas`;

for i in $maquinas; do
   net rpc shutdown -C "O seu Computador sera DESLIGADO em 1 minuto, salve todos seu trabalhos." -f -I $i -U administrator%P@ssw0rd
done

rm tempmaquinas

Scripts recomendados

Script simples de backup de arquivos em máquina remota

Instalador Nagios 4.2 no Fedora 24

Ativando NumLock

Wget Interativo (Via shell)

Análise de conexões ativas


  

Comentários
[1] Comentário enviado por gnumoksha em 13/07/2011 - 21:24h

Dica interessante; porem ficou confusa a tua descrição do conteúdo do arquivo que guarda as informações sobres as maquinas da rede. Por exemplo, lendo teu script me parece que é preciso informar o ip, mas no artigo voce disse "maquina - nxt-<final correspondente a maquina>".

Seria bom postar um exemplo do conteudo do arquivo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts