summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ipapython/sysrestore.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/ipapython/sysrestore.py b/ipapython/sysrestore.py
index c058ff7c0..99d78b1b4 100644
--- a/ipapython/sysrestore.py
+++ b/ipapython/sysrestore.py
@@ -186,7 +186,9 @@ class FileStore:
if new_path is not None:
path = new_path
- shutil.move(backup_path, path)
+ shutil.copy(backup_path, path) # SELinux needs copy
+ os.remove(backup_path)
+
os.chown(path, int(uid), int(gid))
os.chmod(path, int(mode))
@@ -217,7 +219,9 @@ class FileStore:
root_logger.debug(" -> Not restoring - '%s' doesn't exist", backup_path)
continue
- shutil.move(backup_path, path)
+ shutil.copy(backup_path, path) # SELinux needs copy
+ os.remove(backup_path)
+
os.chown(path, int(uid), int(gid))
os.chmod(path, int(mode))