If your Xsan volume doesn‘t automatically mount at startup

Learn what to do if Xsan volumes don't automatically mount at startup on Xsan clients running macOS Sierra or  OS X El Capitan.

Xsan clients running macOS Sierra or OS X El Capitan might fail to automatically mount SAN volumes at startup. The failed mount attempts are visible in system log messages like this:

Mar  3 23:31:35 xsanclient1 kernel[0] <Notice>: Could not mount filesystem VolumeName, cvfs error 'No such device' (36)

An affected system should be able to mount SAN volumes manually within a few minutes of booting. You can mount a SAN volume using the xsanctl(8) command line utility:

    xsanctl mount VolumeName

 

Update Promise SANLink2 drivers

If you're using a Promise SANLink2 Fibre Channel host bus adapter, update your drivers to the latest version. Find latest drivers available from Promise.

Update macOS Sierra

In macOSSierra 10.12.4 and later, the Xsan client tries to mount each volume five times by default. In most SANs, this should allow the mount to succeed at boot.

If your Xsan client is in large SANs with many LUNs, it might take longer for the system to discover all LUNs at boot. For these systems, you should increase the number of mount attempts using the mnt_retry mount option.

Delay Xsan startup

If problems persist after updating drivers and your macOS, you can work around the problem by delaying Xsan startup using the following steps:

1. Download but don't expand this file: "xsandelay.tgz"

2. Use the following Terminal command to install the necessary files:

    sudo darwinup install ~/Downloads/xsandelay.tgz

    Adjust the above command as needed if the xsandelay.tgz file is not in your Downloads folder. This action will install these two files:

  /usr/local/libexec/xsandelay.py
  /Library/LaunchDaemons/com.apple.support.ht205706.xsandelay.plist3. 

3. Configure the `xsandelay.py` script to run automatically at startup by enabling its launchd job:

    sudo launchctl enable system/com.apple.support.ht205706.xsandelay

Reverting the changes

You can revert the changes made above and remove the files installed by the xsandelay.tgz archive by following these steps:

1. Use the following Terminal command to prevent the `xsandelay.py` script from running at startup:

    sudo launchctl disable system/com.apple.support.ht205706.xsandelay

2. Uninstall the script and its launchd.plist file with this command:

    sudo darwinup uninstall xsandelay.tgz

Information about products not manufactured by Apple, or independent websites not controlled or tested by Apple, is provided without recommendation or endorsement. Apple assumes no responsibility with regard to the selection, performance, or use of third-party websites or products. Apple makes no representations regarding third-party website accuracy or reliability. Risks are inherent in the use of the Internet. Contact the vendor for additional information. Other company and product names may be trademarks of their respective owners.

Published Date: