[lxc-devel] `top` within unprivileged container breaks host
Serge Hallyn
serge.hallyn at ubuntu.com
Fri Jan 23 18:19:46 UTC 2015
Quoting Mathias Gibbens (mathias at calenhad.com):
> On Fri, 2015-01-23 at 00:48 +0000, Mathias Gibbens wrote:
> > Hello,
> >
> > I've been testing LXC 1.1-rc1 on a Debian jessie system. Specifically,
> > since all the pieces are now in place to support systemd in unprivileged
> > containers, I've been testing running Debian jessie within an
> > unprivileged container.
> >
> > The jessie container successfully starts (there are some errors along
> > the way, but that's another issue), and I can do a `lxc-attach`, add a
> > user and log in. However, if I run `top` within the container I only get
> > two lines of output:
> >
> > top - 00:13:25 up 4 min, 0 users, load average: 0.01, 0.05, 0.05
> > Tasks: 10 total, 1 running, 9 sleeping, 0 stopped, 0 zombie
> >
> > Furthermore, the host system breaks spectacularly:
> >
> > lxc at lxc:~$ top
> > Error, do this: mount -t proc proc /proc
> > lxc at lxc:~$ /sbin/ifconfig
> > Warning: cannot open /proc/net/dev (No such file or directory). Limited
> > output.
> > lxc at lxc:~$ mount
> > mount: failed to read mtab: No such file or directory
> > lxc at lxc:~$ df
> > df: cannot read table of mounted file systems: No such file or directory
> > lxc at lxc:~$ sudo reboot
> > Running in chroot, ignoring request.
> >
> > It seems that /proc is being unmounted somehow on the host. I can
> > re-mount /proc on the host, and things seem to work again. (I haven't
> > tested too much after re-mounting, instead opting to just reboot the
> > host back to a known good state.)
> >
> > Any idea what is causing this to happen? I have also tried running
> > Ubuntu Vivid as an unprivileged container and see the same results. I
> > have not yet tried a different Linux distro for the host system.
> >
> > Host system details: Debian jessie with kernel 3.16.7-ckt2-1 x86_64,
> > systemd-215, LXC-1.1-rc1 and lxcfs built from current git checkout,
> > cgmanager-0.35 as packaged from the sid repository.
> >
> > Thanks for any ideas,
> > Mathias
>
> This morning I setup a host running Ubuntu Vivid with cgmanager, lxc,
> and lxcfs packages installed from the daily PPA. I setup two
But did you install the systemd-sysv package?
> unprivileged containers, Debian jessie and Ubuntu Vivid, and ran `top`
> within each one. On the Vivid host, `top` runs properly and the host
> system does not break.
>
> So, it seems that the breakage is due to running jessie on the host
> system. Any ideas why this is happening, or where I could begin looking
> to debug this problem?
No, I've just reproduced it, but it requires systemd to do so.
Note that you'll have to manually chown your name=systemd cgroup
to your user for the lxc-start to succeed.
More information about the lxc-devel
mailing list