summaryrefslogtreecommitdiff
path: root/source4/setup/provision
diff options
context:
space:
mode:
Diffstat (limited to 'source4/setup/provision')
-rwxr-xr-xsource4/setup/provision20
1 files changed, 13 insertions, 7 deletions
diff --git a/source4/setup/provision b/source4/setup/provision
index 80237058e4..a2327b339e 100755
--- a/source4/setup/provision
+++ b/source4/setup/provision
@@ -218,6 +218,10 @@ if opts.blank:
elif opts.partitions_only:
samdb_fill = FILL_DRS
+if opts.targetdir is not None:
+ if not os.path.isdir(opts.targetdir):
+ os.mkdir(opts.targetdir)
+
eadb = True
if opts.use_xattrs == "yes":
eadb = False
@@ -227,13 +231,15 @@ elif opts.use_xattrs == "auto" and not lp.get("posix:eadb"):
else:
file = tempfile.NamedTemporaryFile(dir=os.path.abspath(os.path.dirname(lp.get("private dir"))))
try:
- samba.ntacls.setntacl(lp, file.name,
- "O:S-1-5-32G:S-1-5-32", "S-1-5-32", "native")
- eadb = False
- except Exception:
- logger.info("You are not root or your system do not support xattr, using tdb backend for attributes. "
- "If you intend to use this provision in production, rerun the script as root on a system supporting xattrs.")
- file.close()
+ try:
+ samba.ntacls.setntacl(lp, file.name,
+ "O:S-1-5-32G:S-1-5-32", "S-1-5-32", "native")
+ eadb = False
+ except Exception:
+ logger.info("You are not root or your system do not support xattr, using tdb backend for attributes. "
+ "If you intend to use this provision in production, rerun the script as root on a system supporting xattrs.")
+ finally:
+ file.close()
session = system_session()
try: