v0.2.0 · macOS 14+ · SwiftUI · Menu Bar Utility
SMB Connect is a macOS menu bar app for mounting SMB shares with awareness of preferred and fallback network paths such as 10GbE, 1GbE, 25GbE, and 100GbE.
It is designed for environments where users regularly connect to multiple storage targets and need the app to:
- show whether each share is mounted
- prefer the fastest configured network path when available
- fall back cleanly to a slower path when needed
- keep passwords in the user’s Keychain
- support both JSON-based setup and MDM-managed deployment
- warn about duplicate mounts and
/Volumesnaming conflicts before they create-1mount paths
- Configures shares by alias, share name, mount name, and one or more IP-based network paths
- Detects active local networks and selects the best reachable configured path
- Mounts SMB shares through macOS using stored user credentials
- Shows connection state in the menu bar popover with per-share status cards
- Detects duplicate mounts such as
VideoandVideo-1 - Detects
/Volumesname conflicts before mounting and blocks risky connects - Exports and imports JSON configuration files
- Reads managed share definitions from an MDM profile
Configuration is layered in this order:
- MDM-managed share definitions
- Setup JSON files in
~/Library/Application Support/SMBConnect/Setup/ - Imported JSON files from the app UI
- User-edited local settings
- User-specific credentials in Keychain
MDM and JSON can preload share names, IPs, preferred network order, and default usernames. Passwords are intentionally user-local and are not stored in JSON or MDM.
The repo includes sample configuration files in
If you want to generate valid SMB Connect setup JSON and matching .mobileconfig profiles from a comma-separated .csv or .txt list, use:
generate_smbconnect_config.sh
Usage details and sample input files are documented in the script read me
The script is here:
Example inputs are here: