Ubuntu Linux 8.04 – Wake on LAN
Now that I’ve switched to a Macbook Pro with OSX Leopard as my primary desktop, I’ve located my Ubuntu machine in another part of the house to be accessible to my children. Not wanting to walk to the room where it’s located just to flip the power switch, I researched how to get “wake on LAN” working, so I could power it up remotely.
- Enable the appropriate setting in your BIOS. Mine had something to do with wake on PCI device.
-
Install ethtool if you don’t already have it.
sudo apt-get install ethtool cd /etc/init.d sudo vim wakeonlanconfigAdd the following lines to that file:
#!/bin/bash ethtool -s eth0 wol gInstall the script:
sudo update-rc.d -f wakeonlanconfig defaultsRun the script:
sudo /etc/init.d/wakeonlanconfig -
Keep the network interface alive after shut down.
sudo vim /etc/init.d/haltChange the following line:
halt -d -f -i $poweroff $hddownto the following line (i.e. remove the -i)
halt -d -f $poweroff $hddown -
Get the MAC address
ifconfig | grep HW - Send the magic packet via the following Ruby program:
require 'socket'
mac_addr = "x21x53x39xB3x90x42"
s = UDPSocket.new
s.setsockopt(Socket::SOL_SOCKET, Socket::SO_BROADCAST, 1)
s.send("xff"*6 + mac_addr*16, Socket::SO_BROADCAST, '10.0.0.255', 7)