Automatically Mount Network Shares on Mac When Waking from Sleep

I use my Macbook Pro at the office and at home and at each location I have network storage that I want to have easily accessible. And since I only put my laptop to sleep and not turning it off, having that storage automatically available is an even bigger pain.

Thankfully a gentleman created SleepWatcher. This allows you to execute scripts when your laptop goes to sleep and wakes up. The program runs as a service and requires a bit of command-line experience to install. Here is a quick walk-through of a script that runs when my laptop wakes up and attempts to mount my samba shares.


Download Sleepwatcher to your Desktop and extract it.

1. Install the SleepWatcher software

$ sudo mkdir -p /usr/local/sbin /usr/local/share/man/man8
$ sudo cp ~/Desktop/sleepwatcher_2.2/sleepwatcher /usr/local/sbin
$ sudo cp ~/Desktop/sleepwatcher_2.2/sleepwatcher.8 /usr/local/share/man/man8

2. Create your mount script at ~/wakeup.scpt. I used Applescript, but you can use any interpreted language.

    mount volume "smb://username@server/share$/"
end try

3. Create your Launcher profile at ~/Library/LaunchAgents/de.bernhard-baehr.sleepwatcher.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "">
<plist version="1.0">
                <string>-w /usr/local/sbin/wakeup_mounts.scpt</string>

4. Load the launchd agent configuration, this starts the SleepWatcher daemon:

$ sudo launchctl load ~/Library/LaunchDaemons/de.bernhard-baehr.sleepwatcher.plist


The script will now execute when the laptop wakes from a sleep state.

Leave a Reply

Your email address will not be published. Required fields are marked *