|
@@ -31,11 +31,6 @@ func setupNewMountNamespace(rootfs string, bindMounts []libcontainer.Mount, cons
|
|
|
if err := system.Mount(rootfs, rootfs, "bind", syscall.MS_BIND|syscall.MS_REC, ""); err != nil {
|
|
|
return fmt.Errorf("mouting %s as bind %s", rootfs, err)
|
|
|
}
|
|
|
- if readonly {
|
|
|
- if err := system.Mount(rootfs, rootfs, "bind", syscall.MS_BIND|syscall.MS_REMOUNT|syscall.MS_RDONLY|syscall.MS_REC, ""); err != nil {
|
|
|
- return fmt.Errorf("mounting %s as readonly %s", rootfs, err)
|
|
|
- }
|
|
|
- }
|
|
|
if err := mountSystem(rootfs); err != nil {
|
|
|
return fmt.Errorf("mount system %s", err)
|
|
|
}
|
|
@@ -81,6 +76,12 @@ func setupNewMountNamespace(rootfs string, bindMounts []libcontainer.Mount, cons
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if readonly {
|
|
|
+ if err := system.Mount("/", "/", "bind", syscall.MS_BIND|syscall.MS_REMOUNT|syscall.MS_RDONLY|syscall.MS_REC, ""); err != nil {
|
|
|
+ return fmt.Errorf("mounting %s as readonly %s", rootfs, err)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
system.Umask(0022)
|
|
|
|
|
|
return nil
|