diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/HierarchicalStorageUpdater.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/HierarchicalStorageUpdater.java
index 6b87e4a4f4d0af40e5ec98153a5e11ed995ab5e7..6f6ab2472542e7646c9d1efde7ad436839ff9867 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/HierarchicalStorageUpdater.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/HierarchicalStorageUpdater.java
@@ -276,7 +276,7 @@ public class HierarchicalStorageUpdater implements IResourceContendingMaintenanc
             File targetDir = new File(targetPath);
             String sourcePath = linkMappings.get(targetPath);
             File sourceFile = new File(sourcePath);
-            targetDir.mkdirs();
+            targetDir.getParentFile().mkdirs();
             SoftLinkMaker.createSymbolicLink(sourceFile, targetDir);
         }
     }