diff options
Diffstat (limited to 'src/core/namespace.c')
-rw-r--r-- | src/core/namespace.c | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/src/core/namespace.c b/src/core/namespace.c index 5b782798c8..01a817bf23 100644 --- a/src/core/namespace.c +++ b/src/core/namespace.c @@ -125,22 +125,6 @@ static void drop_duplicates(BindMount *m, unsigned *n) { *n = t - m; } -static int mount_move_root(const char *path) { - if (chdir(path) < 0) - return -errno; - - if (mount(path, "/", NULL, MS_MOVE, NULL) < 0) - return -errno; - - if (chroot(".") < 0) - return -errno; - - if (chdir("/") < 0) - return -errno; - - return 0; -} - static int mount_dev(BindMount *m) { static const char devnodes[] = "/dev/null\0" @@ -240,7 +224,7 @@ static int mount_dev(BindMount *m) { } } - dev_setup(temporary_mount); + dev_setup(temporary_mount, UID_INVALID, GID_INVALID); /* Create the /dev directory if missing. It is more likely to be * missing when the service is started with RootDirectory. This is @@ -515,7 +499,7 @@ int setup_namespace( if (protect_system != PROTECT_SYSTEM_NO) { const char *usr_dir, *boot_dir, *etc_dir; - usr_dir = prefix_roota(root_directory, "/home"); + usr_dir = prefix_roota(root_directory, "/usr"); boot_dir = prefix_roota(root_directory, "/boot"); boot_dir = strjoina("-", boot_dir); etc_dir = prefix_roota(root_directory, "/etc"); |