Wake Machine enables Time Machine to backup to a target that is sleeping. Without Wake Machine, such backups will fail because the remote disk won’t mount.

Wake Machine runs as a mock daemon on the client. When Time Machine initiates a backup, Wake Machine sends a magic packet to the target machine to wake it up if it’s sleeping.

Caveats: If you’re using an older Mac, the target machine must be connected via ethernet (the machine you’re backing up can still be connected wirelessly via Airport). New Macs support wake on LAN using Airport.

Prerequisites

Wake Machine works out of the box with OS X Leopard and Snow Leopard.

However, you’ll need git in order to install Wake Machine.

Getting Started

Installation is as easy as cloning the Wake Machine repository. Navigate to the directory you’d like to install it in and run:

git clone http://github.com/freerobby/wakemachine.git

Once installed, you must set up Wake Machine. The recommended method for doing this is the following:

  1. Ensure that both the target computer is awake.

  2. Run a time machine backup.

  3. Run Wake Machine setup:

    bash wakemachine.sh setup
    

Setup will automatically detect your time machine target, resolve its IP address and discover its MAC address. This information will be written to your user profile.

Running Wake Machine

To launch the Wake Machine daemon manually, run:

bash wakemachine.sh &

To set up Wake Machine to run automatically on your system:

  1. Go to System Preferences and open the “Accounts” panel.

  2. Click “Login Items” at the top.

  3. Click the + icon to add a new login item.

  4. Select the wakemachine_daemon executable, and check the box next to it marked “Hide”.

  5. Restart your computer

Voilà, your target machine will now be woken up whenever Time Machine runs.

Acknowledgments

Wake Machine uses the Wakeonlan perl script written by Ico Doornekamp and José Pedro Oliveira.