public void UnMount(string path)
 {
     lock (mounts)
     {
         if (mounts.Remove(path))
         {
             ManagedNode node = root.Find(path) as ManagedNode;
             node.SetAsMountNode(null);
         }
         else
         {
             throw new UnMountException("The path " + path +
                                        " is not a mount point, cannot be unmounted.");
         }
     }
 }