Published / Modified: 2015-02-24 / 2023-09-25
With Mounty you are in full control of your favourite file shares: setup your shares once and whenever you log into your computer your shares get mounted automagically.
Use at your own risk (also see legal notices).
Double-click the package Mounty.pkg
you find in the disk image provided above and follow the instructions of the installer. Eventually the file ~/Scripts/mounty/mounty.conf
will be opened in TextEdit so you can add the details of shares you want to mount at login. Further information about configuring Mounty can be found in the chapter below.
Details of all shares need to be put into the config file - usually ~/Scripts/mounty/mounty.conf
). Entries in the value of variable mounty_shares
are separated by semicolons, each with the following syntax:
protocol://user@server/share
To connect to a Windows share Documents
on server 192.168.0.100
as user bill
the entry should look like this:
smb://bill@192.168.0.100/Documents
Please find below an example for a configuration:
mounty_shares="smb://$USER@192.168.0.100/$USER;smb://$USER@192.168.0.100/Public;smb://$USER@192.168.0.100/Documents";
As you can see above, you can also use runtime variables to determine - for example - the user name. For the example to work, user names on client and server need to be identical.
You can start mounty by hand: if - like during login - no specific configuration file name is provided, Mounty will use ~/Scripts/mounty/mounty.conf
.
mounty.sh
By default Mac OS X unlocks the user's keychain at login, so scripts can access keys through the command-line program security
, so does mounty. For this to work all credentials needs to be stored in the keychain before you run it. Please ensure that you have mounted each share in Finder with the option Add to keychain
once before you proceed.
Mac OS X's inbuilt LaunchAgents trigger the execution of scripts in response to system events. Mounty depends on the event RunAtLoad
.
The required LaunchAgent in ~/Library/LaunchAgents
looks like this:
... ProgramArguments bash -c ~/Scripts/LaunchAgents/runatload.sh RunAtLoad
The array ProgramArguments
, contains the shell name bash
and two parameters, the latter being the actual skript. By executing the script inside the shell, globbing and the expansion of shell variables can be used within the script.
The above agent is used at login but can also be enabled manually:
launchctl load
On Time/ Travel Sketches