summaryrefslogtreecommitdiffstats
path: root/ipaserver/install/bindinstance.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipaserver/install/bindinstance.py')
-rw-r--r--ipaserver/install/bindinstance.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/ipaserver/install/bindinstance.py b/ipaserver/install/bindinstance.py
index 6d5a1d44..4baeb4e0 100644
--- a/ipaserver/install/bindinstance.py
+++ b/ipaserver/install/bindinstance.py
@@ -22,6 +22,7 @@ import os
import pwd
import netaddr
import re
+import errno
import ldap
@@ -509,6 +510,16 @@ class BindInstance(service.Service):
os.close(bind_fd)
print "Sample zone file for bind has been created in "+bind_name
+ def create_dir(self, path, mode):
+ try:
+ os.makedirs(path, mode)
+ except OSError as e:
+ if e.errno != errno.EEXIST:
+ raise e
+
+ pent = pwd.getpwnam(self.named_user or 'named')
+ os.chown(path, pent.pw_uid, pent.pw_gid)
+
def create_instance(self):
try:
@@ -519,6 +530,8 @@ class BindInstance(service.Service):
# get a connection to the DS
self.ldap_connect()
+ self.create_dir('/var/named/ipa', 0700)
+
if installutils.record_in_hosts(self.ip_address, self.fqdn) is None:
installutils.add_record_to_hosts(self.ip_address, self.fqdn)