diff --git a/src/common/check_paths.py b/src/common/check_paths.py
index 456bc0e3eddacf8867ff8861570da2ef8e68adea..33368ebe1823178802c6992b8667594a38164086 100644
--- a/src/common/check_paths.py
+++ b/src/common/check_paths.py
@@ -334,5 +334,10 @@ def check_and_possibly_create_paths():
         sys.exit()
 
 def create_path(directory):
+    head, tail = os.path.split(directory)
+    if not os.path.exists(head):
+        create_path(head)
+    if os.path.exists(directory):
+        return
     print _('creating %s directory') % directory
     os.mkdir(directory, 0700)