Servidor em standby
Publicado por Henry Mendes (última atualização em 19/05/2010)
[ Hits: 6.714 ]
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
Script que automatiza o treinamento do SpamAssassin
Calcular o consumo de energia elétrica de eletrodomésticos
Descom.sh - Descompactador de arquivos
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
baschrc customizado pegeui vários. (2)
Rust é o "C da nossa geração"? (8)