X-Git-Url: https://secure.softndesign.org/git/?a=blobdiff_plain;f=master%2Fetc%2Finit.d%2Fwakeonlan;fp=master%2Fetc%2Finit.d%2Fwakeonlan;h=a91473a494360f5abf312d4225d414b6fe39a298;hb=a3300608811441c5238911ca14e56433ea4f4c5f;hp=0000000000000000000000000000000000000000;hpb=3a30026aa30355dac5c5f9742da0fdba797701ea;p=debian6500.git diff --git a/master/etc/init.d/wakeonlan b/master/etc/init.d/wakeonlan new file mode 100755 index 0000000..a91473a --- /dev/null +++ b/master/etc/init.d/wakeonlan @@ -0,0 +1,71 @@ +#!/bin/sh +VER=1.3 +# ============================================================================ +# +# Copyright (C) THALES. All rights reserved +# Author: Jean-Noel Raguenes +# Date : 07/12/2009 +# - V1.1: Herve Petit 10/03/2010 +# reprise de la commande recuperation des @mac et @broadcast pour prendre +# en compte le fait que l'interface eth1 a ete configuree +# - V1.2: Thomas Perennou 25/03/2013 +# Adaptation Wheezy et simplification des recuperation des adresses mac +# et de broadcast +# - V1.4: Laurent Mazet 09/05/2014 +# Daemonisation +# ============================================================================ + +### BEGIN INIT INFO +# Provides: wakeonlan +# Required-Start: $network +# Required-Stop: +# Should-Start: +# Default-Start: S +# Default-Stop: +# Short-Description: WOL cluster blades +# Description: Boot all cluster blades by WakeOnLan protocol +### END INIT INFO + +DHCPCONF=/etc/dhcp/dhcpd.conf +ENABLE="yes" + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +[ -f /etc/default/wakeonlan ] && . /etc/default/wakeonlan +[ "$ENABLE" = "yes" ] || exit 0 + +. /lib/lsb/init-functions + +do_start () { + + log_action_msg "Activate Wake On Lan" + + mac=$(awk '{ sub(/#.*/, "") } /trc[0-9]/ && ! /-rf/ { gsub(/;/, " "); print $6}' $DHCPCONF) + broadcast=$(ip add show dev eth1 |awk '$1=="inet" {sub(/\/.*/, ""); sub(/\.[0-9]*$/, ".255", $2); print $2; exit}') + + for m in $mac; do + log_action_msg "Wake-up $broadcast ($m)" + wakeonlan -p 7 -i $broadcast $m + done +} + +case "$1" in + -v) + echo "$(basename $0), version $VER" + ;; + start) + do_start + ;; + restart|reload|force-reload) + echo "Error: argument '$1' not supported" >&2 + exit 3 + ;; + stop) + # No-op + ;; + *) + echo "Usage: $0 start|stop" >&2 + exit 3 + ;; +esac + +# vim:set tabstop=4 expandtab shiftwidth=4: