n=0
while [ $NB_TRY -gt 0 ]; do
- for mac in $(awk '{sub(/#.*/, "")} /trc[0-9]/ {gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
+ for mac in $(awk '{sub(/#.*/, "")} /host\s+trc[0-9]/ {gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
host=$(awk '{sub(/#.*/, "")} /'$mac'/ {gsub(/[{}]/, " "); print $2}' $DHCPCONF)
log_action_msg "Wake-up $host (EtherWake $mac)"
ip addr add 10.133.25.1/24 dev eth0
- for mac in $(awk '{ sub(/#.*/, "") } /trc[0-9]/ && ! /-rf/ { gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
- ipmi=$(grep $mac $DHCPCONF | sed 's/.* [0-9.]*\.\([0-9][0-9]*\)[^0-9].*/10.133.25.\1/')
+ for mac in $(awk '{sub(/#.*/, "")} /host\s+trc[0-9]/ && ! /-rf/ { gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
+ ipmi=$(awk '{sub(/#.*/, "")} /'$mac'/ {print}' $DHCPCONF | sed 's/.* [0-9.]*\.\([0-9][0-9]*\)[^0-9].*/10.133.25.\1/')
host=$(awk '{sub(/#.*/, "")} /'$mac'/ {gsub(/[{}]/, " "); print $2}' $DHCPCONF)
log_action_msg "Wake-up $host (IPMI boot $ACTION $ipmi)"
ipmipower --session-timeout=$TIMEOUT -h $ipmi -u ADMIN -p ADMIN --$ACTION &
# Description:
### END INIT INFO
+DHCPCONF=/etc/dhcp/dhcpd.conf
REBOOT="no"
TIMEOUT=15
ENABLE="yes"
fi
# shutdown all blades
- for host in $(awk '{sub(/#.*/, "")} /trc[0-9][0-9]/ && ! /-rf/ {print $2}' /etc/dhcp/dhcpd.conf); do
+ for host in $(awk '{sub(/#.*/, "")} /host\s+trc[0-9][0-9]/ && ! /-rf/ {print $2}' $DHCPCONF); do
grep $host /etc/hosts >&/dev/null || continue
( ping -c 1 $host >&/dev/null && { log_action_msg "shutdowning ${host/_1}"; ssh root@$host service $cmd stop; } ) &
done
log_action_msg "Activate Wake On Lan"
- for mac in $(awk '{ sub(/#.*/, "") } /trc[0-9]/ { gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
- broadcast=$(grep $mac $DHCPCONF | sed 's/.* \([0-9.]*\)\..*/\1.255/')
+ for mac in $(awk '{sub(/#.*/, "")} /host\s+trc[0-9]/ { gsub(/[;{}]/, " "); print $5}' $DHCPCONF); do
+ broadcast=$(awk '{sub(/#.*/, "")} /'$mac'/ {print}' $DHCPCONF | sed 's/.* \([0-9.]*\)\..*/\1.255/')
host=$(awk '{sub(/#.*/, "")} /'$mac'/ {gsub(/[{}]/, " "); print $2}' $DHCPCONF)
log_action_msg "Wake-up $host (WOL $mac $broadcast)"
wakeonlan -p 7 -i $broadcast $mac