From: "Michael H. Warfield" <mhw-BetbSzk+GohWk0Htik3J/w@public.gmane.org>
To: Daniel Lezcano <daniel.lezcano-GANU6spQydw@public.gmane.org>
Cc: Michael Holzt <lxc-y7YfGAZ8UuFAfugRpC6u6w@public.gmane.org>,
mhw-BetbSzk+GohWk0Htik3J/w@public.gmane.org,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
"Ciprian Dorin,
Craciun"
<ciprian.craciun-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
lxc-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: [Devel] Re: LXC container, unmounting unneeded mount points (from the container namespace)
Date: Wed, 13 Jan 2010 09:15:34 -0500 [thread overview]
Message-ID: <1263392134.14592.137.camel@localhost> (raw)
In-Reply-To: <4B4DD076.3090007-GANU6spQydw@public.gmane.org>
[-- Attachment #1.1: Type: text/plain, Size: 7083 bytes --]
On Wed, 2010-01-13 at 14:53 +0100, Daniel Lezcano wrote:
> Michael H. Warfield wrote:
> > Added lxc-devel to the cc list since this seems to be more appropriate
> > over there (maybe) and I've just joined that one as well.
> >
> > On Fri, 2010-01-08 at 15:35 +0100, Daniel Lezcano wrote:
> >
> >> Ciprian Dorin, Craciun wrote:
> >>
> >>> On Fri, Jan 8, 2010 at 4:17 PM, Daniel Lezcano <daniel.lezcano@free.fr> wrote:
> >>>
> >>>
> >>>> Ciprian Dorin, Craciun wrote:
> >>>>
> >>>>
> >>>>> Hy all!
> >>>>>
> >>>>> Today I've started to play with the LXC containers, and I've got a
> >>>>> question: when starting a container (with it's own mount point
> >>>>> namespace), and I do a `cat /proc/mounts` I also see the mount points
> >>>>> from my host system.
> >>>>>
> >>>>> So the question is: how can I force `lxc-create` to remove any
> >>>>> uneeded mount points (maybe all)?
> >>>>>
> >>>>>
> >>>>>
> >>>> Committed today :)
> >>>>
> >>>> http://git.lab.toulouse-stg.fr.ibm.com/?p=lxc.git;a=commit;h=ed83715df7666879116d1657b1dd54a8fc6513f6
> >>>>
> >>>>
> >
> >
> >> Oops, this one:
> >>
> >
> >
> >> http://lxc.git.sourceforge.net/git/gitweb.cgi?p=lxc/lxc;a=commit;h=bf601689a9e0cea1ceaf17e4f7f853f5392c2827
> >>
> >
> > Nice. This is EXACTLY what I've been looking for as well. Only problem
> > is... It didn't work. It complains about:
> >
> > lxc-start: could not umount 1 mounts"
> >
> > Then terminates saying it can't start the container.
> >
> > When I throw in some debugging prints, I find out that it's complaining
> > that it can't umount {pivotdir}/dev. Commented out the return -1's in
> > that routine so it starts the container anyways and jump into the
> > running container and I discover that {pivotdir}/dev/shm is still
> > mounted even though it thinks it umounted it. I can see from the
> > debugging prints that it seems to have successfully umount it (the
> > debugging message indicates that it umounted it - so it saw it had it
> > and tried and got a good return from the attempt) but it's apparently
> > still mount. If I umount that {pivotdir}/dev/shm inside the container,
> > I can then umount {pivotdir}/dev and {pivotdir}.
> >
> > Tried it both by defining lxc.pivotdir and by letting it choose a
> > temporary one. Tried two different containers. Same result.
> >
> > This is what I get with the "return -1"'s commented out in the function
> > and laced with my own debugging prints to print each step of the umount
> > loop (this is with lxc.pivotdir = /rootfs):
> >
> > ===
> > [root@Berserker-Base ~]# lxc-start -n 1009
> > still mounted '/rootfs/dev'
> > umounted '/rootfs/dev/pts'
> > umounted '/rootfs/dev/shm'
> > still mounted '/rootfs/proc'
> > umounted '/rootfs/proc/bus/usb'
> > umounted '/rootfs/proc/sys/fs/binfmt_misc'
> > umounted '/rootfs/sys'
> > umounted '/rootfs/home'
> > still mounted '/rootfs/var'
> > umounted '/rootfs/var/lib/cgroup'
> > umounted '/rootfs/var/lib/nfs/rpc_pipefs'
> > umounted '/rootfs/usr'
> > umounted '/rootfs/boot'
> > still mounted '/rootfs/srv'
> > umounted '/rootfs/misc'
> > umounted '/rootfs/net'
> > still mounted '/rootfs/srv/lxc/root/1009'
> > umounted '/rootfs/srv/lxc/root/1009/export'
> > umounted '/rootfs/srv/lxc/root/1009/srv/shared'
> > umounted '/rootfs/srv/lxc/root/1009/dev/pts'
> > umounted '/rootfs/srv/lxc/root/1009/proc'
> > umounted '/rootfs/srv/lxc/root/1009/sys'
> > umounted '/rootfs/srv/lxc/root/1009/dev/shm'
> > umounted '/rootfs/srv/lxc/root/1009/dev/console'
> > umounted '/rootfs/srv/lxc/root/1009/dev/tty1'
> > umounted '/rootfs/srv/lxc/root/1009/dev/tty2'
> > umounted '/rootfs/srv/lxc/root/1009/dev/tty3'
> > umounted '/rootfs/srv/lxc/root/1009/dev/tty4'
> > umounted '/rootfs/srv/lxc/root/1009/dev/tty5'
> > umounted '/rootfs/srv/lxc/root/1009/dev/tty6'
> > still mounted '/rootfs/dev'
> > umounted '/rootfs/proc'
> > umounted '/rootfs/var'
> > still mounted '/rootfs/srv'
> > umounted '/rootfs/srv/lxc/root/1009'
> > still mounted '/rootfs/dev'
> > umounted '/rootfs/srv'
> > still mounted '/rootfs/dev'
> > lxc-start: could not umount 1 mounts
> > lxc-start: Device or resource busy - could not unmount old rootfs
> > INIT: version 2.86 booting
> > ===
> >
> > Container now continues to boot, since I commented out the error
> > returns. Jumping into that container:
> >
> > ===
> > [root@Berserker ~]# df
> > Filesystem 1K-blocks Used Available Use% Mounted on
> > rootfs 288433504 240305660 33476248 88% /
> > /dev/sda6 2063504 662116 1296568 34% /rootfs
> > udev 1031280 200 1031080 1% /rootfs/dev
> > /dev/shm 1031280 0 1031280 0% /rootfs/dev/shm
> > /dev/mapper/VolGroup00-LogVol00
> > 288433504 240305660 33476248 88% /
> > /dev/sda6 2063504 662116 1296568 34% /export
> > /dev/sda7 693727244 554704408 103783460 85% /srv/shared
> > none 1031280 0 1031280 0% /dev/shm
> > [root@Berserker ~]# umount /rootfs/dev/shm
> > [root@Berserker ~]# umount /rootfs/dev
> > [root@Berserker ~]# umount /rootfs
> > [root@Berserker ~]# df
> > Filesystem 1K-blocks Used Available Use% Mounted on
> > rootfs 288433504 240305672 33476236 88% /
> > /dev/mapper/VolGroup00-LogVol00
> > 288433504 240305672 33476236 88% /
> > /dev/sda6 2063504 662116 1296568 34% /export
> > /dev/sda7 693727244 554704408 103783460 85% /srv/shared
> > none 1031280 0 1031280 0% /dev/shm
> > ===
> >
> > Of course we also have the strange "rootfs" entry there as well.
> >
> > Host system is Fedora 12.
> > Host kernel is: 2.6.31.9-174.fc12.i686
> > Guest system in each case is CentOS 5.4
> >
> I added in the Cc Michael Holzt.
> Thanks for reporting this.
I should now mention that I've been digging into it further and found
that I can not reproduce this on a second, similar, system I'm testing
on at this point. It may be a peculiarity of the original system and
I'm just getting ready to test on a third as soon as I finish getting it
updated.
IAC, there should be some way to force the container to start, for
diagnostic purposes, in a case like this, without modifying the sources.
Having the old root directory still there isn't fatal to run the
container, particularly in a test system, even though highly undesirable
in a production VM.
> -- Daniel
Regards,
Mike
--
Michael H. Warfield (AI4NB) | (770) 985-6132 | mhw-BetbSzk+GohWk0Htik3J/w@public.gmane.org
/\/\|=mhw=|\/\/ | (678) 463-0932 | http://www.wittsend.com/mhw/
NIC whois: MHW9 | An optimist believes we live in the best of all
PGP Key: 0x674627FF | possible worlds. A pessimist is sure of it!
[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 482 bytes --]
[-- Attachment #2: Type: text/plain, Size: 206 bytes --]
_______________________________________________
Containers mailing list
Containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org
https://lists.linux-foundation.org/mailman/listinfo/containers
prev parent reply other threads:[~2010-01-13 14:15 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-08 14:08 LXC container, unmounting unneeded mount points (from the container namespace) Ciprian Dorin, Craciun
[not found] ` <8e04b5821001080608w47b0529dhcd6f8a26e38f24e0-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-01-08 14:17 ` Daniel Lezcano
[not found] ` <4B473E89.1040200-GANU6spQydw@public.gmane.org>
2010-01-08 14:25 ` Ciprian Dorin, Craciun
[not found] ` <8e04b5821001080625j22517f1i22ec3495d8d1e53b-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-01-08 14:35 ` Daniel Lezcano
[not found] ` <4B4742A8.1000708-GANU6spQydw@public.gmane.org>
2010-01-08 14:59 ` Ciprian Dorin, Craciun
[not found] ` <8e04b5821001080659y3c4bad1akbaa1e355bb1f730f-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-01-08 15:12 ` Daniel Lezcano
2010-01-19 16:52 ` [Devel] " Michael H. Warfield
2010-01-12 3:54 ` Michael H. Warfield
2010-01-12 4:03 ` Michael H. Warfield
2010-01-13 13:53 ` Daniel Lezcano
[not found] ` <4B4DD076.3090007-GANU6spQydw@public.gmane.org>
2010-01-13 14:15 ` Michael H. Warfield [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1263392134.14592.137.camel@localhost \
--to=mhw-betbszk+gohwk0htik3j/w@public.gmane.org \
--cc=ciprian.craciun-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=daniel.lezcano-GANU6spQydw@public.gmane.org \
--cc=lxc-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=lxc-y7YfGAZ8UuFAfugRpC6u6w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.