xsanctl: unable to connect to xsand & launchd

08 Dec 2021

We recently had a Mac that wouldn’t mount the Xsan volume when rebooting.  We would receive the error xsanctl: unable to connect to xsand: No such file or directory when running xsanctl mount VolumeName.  After confirming that the fibre HBA driver was loaded and the LUNs were available, we thought to check the issue that the error message actually described.

xsand is supposed to be started by launchd when the Mac boots up.  We can check what launchd knows is running with sudo launchctl list com.apple.xsan (you can also check with pgrep xsand, but we are going to focus on launchctl here).  The value com.apple.xsan comes from the label of the launchd item for xsand (/System/Library/LaunchDaemons/com.apple.xsan.plist).  This command will print out details of the process if it is running.  Otherwise we get Could not find service "com.apple.xsan" in domain for system. We can see all loaded launchd items (or just user launchd items) by leaving off the launchd label ([sudo] launchctl list). To have launchd try and start xsand, run sudo launchctl bootstrap system /System/Library/LaunchDaemons/com.apple.xsan.plist.  Now if we re-run the launchctl list, we should see output like

$ sudo launchctl list com.apple.xsan
"LimitLoadToSessionType" = "System";
"Label" = "com.apple.xsan";
"OnDemand" = false;
"LastExitStatus" = 0;
"PID" = 4389;
"Program" = "/System/Library/Filesystems/acfs.fs/Contents/bin/xsand";
"ProgramArguments" = (

This tells us that xsand is running, the process ID is 4389, and the last exit status is 0.  If you are troubleshooting other xsand issues the LastExitStatus may help.  In our case the volume mounted and we now have another tool in our Xsan troubleshooting tool box. 


Eric Hemmeter