Ligando/Desligando máquina pela rede

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

[ Hits: 13.810 ]

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

Automatizar backup do PostgreSQL

Mostrar IP da Internet

Clona-HD

Script para subir interface wireless

newchangelog - Script para gerar changelog.


  

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