Servidor em standby
Publicado por Henry Mendes (última atualização em 19/05/2010)
[ Hits: 6.535 ]
Homepage: www.henrypage.freeweb7.com
Fiz este script para um servidor de proxy simples doméstico. Ele verifica se existe alguém na rede pela tabela ARP em uma rede específica. Caso ninguém responda o ping, ele faz o servidor entrar no modo de espera pelo ACPI. Depois basta ligar novamente sem ter que reinicializar o servidor. Além disso é muito bom para economizar energia em casa.
#!/bin/bash #standby 1.0 por henry mendes #email hmjbetah@gmail.com #exemplo: executar script a cada 15 minutos no cron #1-59/15 * * * * /root/standby.sh #Verifica se existem hosts na rede pelo ARP filtrando o tipo ether REDE="192.168.1" /usr/sbin/arp -a |grep ether|grep $REDE|cut -d '(' -f 2|cut -d ')' -f 1 > /tmp/standby.hosts #somente para debug cat /tmp/standby.hosts #funcao para colocar em standby. Necessita de um sistema com suporte ACPI. log_standby() { echo $(date) Nao EXISTEM computadores na rede. >> /var/log/standby.log; echo mem > /sys/power/state; } if [ $(cat /tmp/standby.hosts|wc -l) -eq 0 ]; then log_standby exit 0 fi #Verifica cada host na rede ver se estao respondendo pelo PING for i in $(cat /tmp/standby.hosts) do echo $(date) Ping $i >> /var/log/standby.log ping -c 1 $i|grep "64 bytes" >> /tmp/standby.ping done # Se ninguem responder o PING entao standby if [ $(cat /tmp/standby.ping|grep "64 bytes"|wc -l) -eq 0 ]; then log_standby fi #remove os arquivos temporarios rm -v /tmp/standby.hosts /tmp/standby.ping
Instalador de novas versões do Java no Debian
Script para módulo de bateria do GKrellm
Instalação do aplicativo Franz
Compilador automatizado de kernel Linux (para BSRSoft ServerUX II, Debian, Ubuntu e Debians-like)
Multiconversor (Octal para binário, decimal para hexadecimal, etc)
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta