Re: [PATCH] LXC: Ensure the init task of container comes from container

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 14.06.2013 07:54, schrieb Gao feng:
Richard found libvirt_lxc execs the lxc init programs within
the wrong rootfs context, we should run this init task from
the rootfs of container.

So chroot to the root directory of container, Make sure
libvirt_lxc execs the right lxc init program.

Signed-off-by: Gao feng <gaofeng@xxxxxxxxxxxxxx>
---
  src/lxc/lxc_container.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c
index 181f6c8..4edff15 100644
--- a/src/lxc/lxc_container.c
+++ b/src/lxc/lxc_container.c
@@ -645,8 +645,9 @@ static int lxcContainerPivotRoot(virDomainFSDefPtr root)
          goto err;
      }

-    /* CWD is undefined after pivot_root, so go to / */
-    if (chdir("/") < 0)
+    /* CWD is undefined after pivot_root, so go to /,
+     * and chroot to the new root directroy */
+    if (chdir("/") < 0 || chroot(".") < 0)
          goto err;

Hmm, that looks fishy to me.
We never have to do a chroot(".") after pivot_root().

Thanks,
//richard

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]