Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-27 Thread Michael H. Warfield
On Fri, 2012-10-26 at 09:07 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):
  Adding in the lxc-devel list.
  
  On Thu, 2012-10-25 at 22:59 -0400, Michael H. Warfield wrote:
   On Thu, 2012-10-25 at 15:42 -0400, Michael H. Warfield wrote:
On Thu, 2012-10-25 at 14:02 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):
  On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
   Hey Serge,
   
   On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
  
  ...
  
Oh, sorry - I take back that suggestion :)
   
Note that we have mount hooks, so templates could install a 
mount hook to
mount a tmpfs onto /dev and populate it.
   
   Ok...  I've done some cursory search and turned up nothing but 
   some
   comments about pre mount hooks.  Where is the documentation 
   about this
   feature and how I might use / implement it?  Some examples would
   probably suffice.  Is there a require release version of 
   lxc-utils?
  
  I think I found what I needed in the changelog here:
  
  http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
  
  I'll play with it and report back.

 Also the Lifecycle management hooks section in
 https://help.ubuntu.com/12.10/serverguide/lxc.html

This isn't working...

Based on what was in both of those articles, I added this entry to
another container (Plover) to test...

lxc.hook.mount = /var/lib/lxc/Plover/mount

When I run lxc-start -n Plover, I see this:

[root@forest ~]# lxc-start -n Plover
lxc-start: unknow key lxc.hook.mount
lxc-start: failed to read configuration file

I'm running the latest rc...

[root@forest ~]# rpm -qa | grep lxc
lxc-0.8.0.rc2-1.fc16.x86_64
lxc-libs-0.8.0.rc2-1.fc16.x86_64
lxc-doc-0.8.0.rc2-1.fc16.x86_64

Is it something in git that hasn't made it to a release yet?
  
   nm...  I see it.  It's in git and hasn't made it to a release.  I'm
   working on a git build to test now.  If this is something that solves
   some of this, we need to move things along here and get these things
   moved out.  According to git, 0.8.0rc2 was 7 months ago?  What's the
   show stoppers here?
  
  While the git repo says 7 months ago, the date stamp on the
  lxc-0.8.0-rc2 tarball is from July 10, so about 3-1/2 months ago.
  Sounds like we've accumulated some features (like the hooks) we are
  going to need like months ago to deal with this systemd debacle.  How
  close are we to either 0.8.0rc3 or 0.8.0?  Any blockers or are we just
  waiting on some more features?

 Daniel has simply been too busy.  Stéphane has made a new branch which
 cherrypicks 50 bugfixes for 0.8.0, with the remaining patches (about
 twice as many) left for 0.9.0.  I'm hoping we get 0.8.0 next week :)

Trying to build latest from git.  This is not good...

checking sys/apparmor.h usability... no
checking sys/apparmor.h presence... no
checking for sys/apparmor.h... no
configure: error: You must install the AppArmor development package in
order to compile lxc

What am I suppose to do on Fedora where we don't have that package?  Is
it available in another repo somewhere?  I'm looking and not finding.

Regards,
Mike

 --
 Everyone hates slow websites. So do we.
 Make your web apps faster with AppDynamics
 Download AppDynamics Lite for free today:
 http://p.sf.net/sfu/appdyn_sfd2d_oct
 ___
 Lxc-users mailing list
 lxc-us...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/lxc-users
 

-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-27 Thread Michael H. Warfield
On Sat, 2012-10-27 at 12:45 -0400, Michael H. Warfield wrote:
 On Fri, 2012-10-26 at 09:07 -0500, Serge Hallyn wrote:
  Quoting Michael H. Warfield (m...@wittsend.com):
   Adding in the lxc-devel list.
   
   On Thu, 2012-10-25 at 22:59 -0400, Michael H. Warfield wrote:
On Thu, 2012-10-25 at 15:42 -0400, Michael H. Warfield wrote:
 On Thu, 2012-10-25 at 14:02 -0500, Serge Hallyn wrote:
  Quoting Michael H. Warfield (m...@wittsend.com):
   On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
Hey Serge,

On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
   
   ...
   
 Oh, sorry - I take back that suggestion :)

 Note that we have mount hooks, so templates could install a 
 mount hook to
 mount a tmpfs onto /dev and populate it.

Ok...  I've done some cursory search and turned up nothing but 
some
comments about pre mount hooks.  Where is the documentation 
about this
feature and how I might use / implement it?  Some examples would
probably suffice.  Is there a require release version of 
lxc-utils?
   
   I think I found what I needed in the changelog here:
   
   http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
   
   I'll play with it and report back.
 
  Also the Lifecycle management hooks section in
  https://help.ubuntu.com/12.10/serverguide/lxc.html
 
 This isn't working...
 
 Based on what was in both of those articles, I added this entry to
 another container (Plover) to test...
 
 lxc.hook.mount = /var/lib/lxc/Plover/mount
 
 When I run lxc-start -n Plover, I see this:
 
 [root@forest ~]# lxc-start -n Plover
 lxc-start: unknow key lxc.hook.mount
 lxc-start: failed to read configuration file
 
 I'm running the latest rc...
 
 [root@forest ~]# rpm -qa | grep lxc
 lxc-0.8.0.rc2-1.fc16.x86_64
 lxc-libs-0.8.0.rc2-1.fc16.x86_64
 lxc-doc-0.8.0.rc2-1.fc16.x86_64
 
 Is it something in git that hasn't made it to a release yet?
   
nm...  I see it.  It's in git and hasn't made it to a release.  I'm
working on a git build to test now.  If this is something that solves
some of this, we need to move things along here and get these things
moved out.  According to git, 0.8.0rc2 was 7 months ago?  What's the
show stoppers here?
   
   While the git repo says 7 months ago, the date stamp on the
   lxc-0.8.0-rc2 tarball is from July 10, so about 3-1/2 months ago.
   Sounds like we've accumulated some features (like the hooks) we are
   going to need like months ago to deal with this systemd debacle.  How
   close are we to either 0.8.0rc3 or 0.8.0?  Any blockers or are we just
   waiting on some more features?
 
  Daniel has simply been too busy.  Stéphane has made a new branch which
  cherrypicks 50 bugfixes for 0.8.0, with the remaining patches (about
  twice as many) left for 0.9.0.  I'm hoping we get 0.8.0 next week :)
 
 Trying to build latest from git.  This is not good...
 
 checking sys/apparmor.h usability... no
 checking sys/apparmor.h presence... no
 checking for sys/apparmor.h... no
 configure: error: You must install the AppArmor development package in
 order to compile lxc

 What am I suppose to do on Fedora where we don't have that package?  Is
 it available in another repo somewhere?  I'm looking and not finding.

nm...  I see that --enable-apparmor is defaulted to on.  I just had to
add an option to --disable-apparmor.  Sorry for the noise.

 Regards,
 Mike

Mike

  --
  Everyone hates slow websites. So do we.
  Make your web apps faster with AppDynamics
  Download AppDynamics Lite for free today:
  http://p.sf.net/sfu/appdyn_sfd2d_oct
  ___
  Lxc-users mailing list
  lxc-us...@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/lxc-users
  
 
 --
 WINDOWS 8 is here. 
 Millions of people.  Your app in 30 days.
 Visit The Windows 8 Center at Sourceforge for all your go to resources.
 http://windows8center.sourceforge.net/
 join-generation-app-and-make-money-coding-fast/
 ___ Lxc-users mailing list 
 lxc-us...@lists.sourceforge.net 
 https://lists.sourceforge.net/lists/listinfo/lxc-users

-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel 

Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-26 Thread Serge Hallyn
Quoting Michael H. Warfield (m...@wittsend.com):
 On Thu, 2012-10-25 at 20:30 -0500, Serge Hallyn wrote:
  Quoting Michael H. Warfield (m...@wittsend.com):
   On Thu, 2012-10-25 at 23:38 +0200, Lennart Poettering wrote:
On Thu, 25.10.12 11:59, Michael H. Warfield (m...@wittsend.com) wrote:
   
 I've got some more problems relating to shutting down containers, some
 of which may be related to mounting tmpfs on /run to which /var/run is
 symlinked to.  We're doing halt / restart detection by monitoring utmp
 in that directory but it looks like utmp isn't even in that directory
 anymore and mounting tmpfs on it was always problematical.  We may 
 have
 to have a more generic method to detect when a container has shut down
 or is restarting in that case.
   
I can't parse this. The system call reboot() is virtualized for
containers just fine and the container managaer (i.e. LXC) can check for
that easily.
   
   The problem we have had was with differentiating between reboot and halt
   to either shut the container down cold or restarted it.  You say
   easily and yet we never came up with an easy solution and monitored
   utmp instead for the next runlevel change.  What is your easy solution
   for that problem?
 
  I think you're on older kernels, where we had to resort to that.  Pretty
  recently Daniel Lezcano's patch was finally accepted upstream, which lets
  a container call reboot() and lets the parent of init tell whether it
  called reboot or shutdown by looking at wTERMSIG(status).
 
 Now THAT is wonderful news!  I hadn't realized that had been accepted.
 So we no longer need to rely on the old utmp kludge?

Yup :)  It was very liberating, in terms of what containers can do with
mounting.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-26 Thread Michael H. Warfield
Adding in the lxc-devel list.

On Thu, 2012-10-25 at 22:59 -0400, Michael H. Warfield wrote:
 On Thu, 2012-10-25 at 15:42 -0400, Michael H. Warfield wrote:
  On Thu, 2012-10-25 at 14:02 -0500, Serge Hallyn wrote:
   Quoting Michael H. Warfield (m...@wittsend.com):
On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
 Hey Serge,
 
 On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:

...

  Oh, sorry - I take back that suggestion :)
 
  Note that we have mount hooks, so templates could install a mount 
  hook to
  mount a tmpfs onto /dev and populate it.
 
 Ok...  I've done some cursory search and turned up nothing but some
 comments about pre mount hooks.  Where is the documentation about 
 this
 feature and how I might use / implement it?  Some examples would
 probably suffice.  Is there a require release version of lxc-utils?

I think I found what I needed in the changelog here:

http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html

I'll play with it and report back.
  
   Also the Lifecycle management hooks section in
   https://help.ubuntu.com/12.10/serverguide/lxc.html
  
  This isn't working...
  
  Based on what was in both of those articles, I added this entry to
  another container (Plover) to test...
  
  lxc.hook.mount = /var/lib/lxc/Plover/mount
  
  When I run lxc-start -n Plover, I see this:
  
  [root@forest ~]# lxc-start -n Plover
  lxc-start: unknow key lxc.hook.mount
  lxc-start: failed to read configuration file
  
  I'm running the latest rc...
  
  [root@forest ~]# rpm -qa | grep lxc
  lxc-0.8.0.rc2-1.fc16.x86_64
  lxc-libs-0.8.0.rc2-1.fc16.x86_64
  lxc-doc-0.8.0.rc2-1.fc16.x86_64
  
  Is it something in git that hasn't made it to a release yet?

 nm...  I see it.  It's in git and hasn't made it to a release.  I'm
 working on a git build to test now.  If this is something that solves
 some of this, we need to move things along here and get these things
 moved out.  According to git, 0.8.0rc2 was 7 months ago?  What's the
 show stoppers here?

While the git repo says 7 months ago, the date stamp on the
lxc-0.8.0-rc2 tarball is from July 10, so about 3-1/2 months ago.
Sounds like we've accumulated some features (like the hooks) we are
going to need like months ago to deal with this systemd debacle.  How
close are we to either 0.8.0rc3 or 0.8.0?  Any blockers or are we just
waiting on some more features?

   Note that I'm thinking that having lxc-start guess how to fill in /dev
   is wrong, because different distros and even different releases of the
   same distros have different expectations.  For instance ubuntu lucid
   wants /dev/shm to be a directory, while precise+ wants a symlink.  So
   somehow the template should get involved, be it by adding a hook, or
   simply specifying a configuration file which lxc uses internally to
   decide how to create /dev.
 
  I agree this needs to be by some sort of convention or template that we
  can adjust.
  
   Personally I'd prefer if /dev were always populated by the templates,
   and containers (i.e. userspace) didn't mount a fresh tmpfs for /dev.
   But that does complicate userspace, and we've seen it in debian/ubuntu
   as well (i.e. at certain package upgrades which rely on /dev being
   cleared after a reboot).
   
   -serge
  
  Regards,
  Mike
-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-26 Thread Serge Hallyn
Quoting Lennart Poettering (lenn...@poettering.net):
 On Thu, 25.10.12 14:02, Serge Hallyn (serge.hal...@canonical.com) wrote:
 
Ok...  I've done some cursory search and turned up nothing but some
comments about pre mount hooks.  Where is the documentation about this
feature and how I might use / implement it?  Some examples would
probably suffice.  Is there a require release version of lxc-utils?
   
   I think I found what I needed in the changelog here:
   
   http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
   
   I'll play with it and report back.
  
  Also the Lifecycle management hooks section in
  https://help.ubuntu.com/12.10/serverguide/lxc.html
  
  Note that I'm thinking that having lxc-start guess how to fill in /dev
  is wrong, because different distros and even different releases of the
  same distros have different expectations.  For instance ubuntu lucid
  wants /dev/shm to be a directory, while precise+ wants a symlink.  So
  somehow the template should get involved, be it by adding a hook, or
  simply specifying a configuration file which lxc uses internally to
  decide how to create /dev.
 
 /dev/shm can be created/mounted/symlinked by the OS in the
 container. This is nothing LXC should care about.
 
 My recommendation for LXC would be to unconditionally pre-mount /dev as
 tmpfs, and add exactly the device nodes /dev/null, /dev/zero, /dev/full,
 /dev/urandom, /dev/random, /dev/tty, /dev/ptmx to it. That is the
 minimal set you need to boot a machine. All further
 submounts/symlinks/dirs can be created by the OS boot logic in the
 container.

I'm thinking we'll do that, optionally.  Templates (including fedora
and ubuntu) can simply always set the option to mount and fill /dev.
Others (like busybox and mini-sshd) won't.

 That's what libvirt-lxc and nspawn do, and is what we defined in:
 
 http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface
 
 It would be good if LXC would do the same in order to minimize the
 manual user configuration necessary.
 
 Lennart

Agreed it simplifies things for full system containers with modern distros.

thanks,
-serge
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-26 Thread Serge Hallyn
Quoting Michael H. Warfield (m...@wittsend.com):
 Adding in the lxc-devel list.
 
 On Thu, 2012-10-25 at 22:59 -0400, Michael H. Warfield wrote:
  On Thu, 2012-10-25 at 15:42 -0400, Michael H. Warfield wrote:
   On Thu, 2012-10-25 at 14:02 -0500, Serge Hallyn wrote:
Quoting Michael H. Warfield (m...@wittsend.com):
 On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
  Hey Serge,
  
  On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
 
 ...
 
   Oh, sorry - I take back that suggestion :)
  
   Note that we have mount hooks, so templates could install a mount 
   hook to
   mount a tmpfs onto /dev and populate it.
  
  Ok...  I've done some cursory search and turned up nothing but some
  comments about pre mount hooks.  Where is the documentation about 
  this
  feature and how I might use / implement it?  Some examples would
  probably suffice.  Is there a require release version of lxc-utils?
 
 I think I found what I needed in the changelog here:
 
 http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
 
 I'll play with it and report back.
   
Also the Lifecycle management hooks section in
https://help.ubuntu.com/12.10/serverguide/lxc.html
   
   This isn't working...
   
   Based on what was in both of those articles, I added this entry to
   another container (Plover) to test...
   
   lxc.hook.mount = /var/lib/lxc/Plover/mount
   
   When I run lxc-start -n Plover, I see this:
   
   [root@forest ~]# lxc-start -n Plover
   lxc-start: unknow key lxc.hook.mount
   lxc-start: failed to read configuration file
   
   I'm running the latest rc...
   
   [root@forest ~]# rpm -qa | grep lxc
   lxc-0.8.0.rc2-1.fc16.x86_64
   lxc-libs-0.8.0.rc2-1.fc16.x86_64
   lxc-doc-0.8.0.rc2-1.fc16.x86_64
   
   Is it something in git that hasn't made it to a release yet?
 
  nm...  I see it.  It's in git and hasn't made it to a release.  I'm
  working on a git build to test now.  If this is something that solves
  some of this, we need to move things along here and get these things
  moved out.  According to git, 0.8.0rc2 was 7 months ago?  What's the
  show stoppers here?
 
 While the git repo says 7 months ago, the date stamp on the
 lxc-0.8.0-rc2 tarball is from July 10, so about 3-1/2 months ago.
 Sounds like we've accumulated some features (like the hooks) we are
 going to need like months ago to deal with this systemd debacle.  How
 close are we to either 0.8.0rc3 or 0.8.0?  Any blockers or are we just
 waiting on some more features?

Daniel has simply been too busy.  Stéphane has made a new branch which
cherrypicks 50 bugfixes for 0.8.0, with the remaining patches (about
twice as many) left for 0.9.0.  I'm hoping we get 0.8.0 next week :)
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-26 Thread Michael H. Warfield
On Fri, 2012-10-26 at 09:07 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):

   nm...  I see it.  It's in git and hasn't made it to a release.  I'm
   working on a git build to test now.  If this is something that solves
   some of this, we need to move things along here and get these things
   moved out.  According to git, 0.8.0rc2 was 7 months ago?  What's the
   show stoppers here?
  
  While the git repo says 7 months ago, the date stamp on the
  lxc-0.8.0-rc2 tarball is from July 10, so about 3-1/2 months ago.
  Sounds like we've accumulated some features (like the hooks) we are
  going to need like months ago to deal with this systemd debacle.  How
  close are we to either 0.8.0rc3 or 0.8.0?  Any blockers or are we just
  waiting on some more features?

 Daniel has simply been too busy.

Don't I know THAT feeling all too well.  Over on the Samba Team (where
I'm the chief security consultant on the team) we're all too busy with
juggling our domain and our web cert.  On top of that, I've got my day
job (of course).  On top of that, I've got about six other OpenSource
projects I'm juggling (including this one).  On top of that, I've got a
consulting customer that's going through fits.  And the beat goes on.

I'll test out things as fast as I can.  I need this.  This suddenly got
very interesting as soon as we had a thread to pick at on the systemd
ball of yarn.

 Stéphane has made a new branch which
 cherrypicks 50 bugfixes for 0.8.0, with the remaining patches (about
 twice as many) left for 0.9.0.  I'm hoping we get 0.8.0 next week :)

I'm hoping the hook patches are in that cherry picked basket.  We really
need them if that's what it takes to make this work.  Looking forward to
it. :-)=)

I'm going to look further into this whole redirect /dev/console to a log
hang thing.  That's not good and may need to be resolved soon as well.
I can live with losing the vty's although I disagree with Stéphan's
arguments.  They (systemd) are behaving significantly different from
sysvinit and upstart and they claim they want to be transparent?  Not.
No matter.  We need to make that work properly as well, agree with them
or disagree with them.

Regards,
Mike
-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Serge Hallyn
Quoting Michael H. Warfield (m...@wittsend.com):
 Sorry for taking a few days to get back on this.  I was delivering a
 guest lecture up at Fordham University last Tuesday so I was out of
 pocket a couple of days or I would have responded sooner...
 
 On Mon, 2012-10-22 at 16:59 -0400, Michael H. Warfield wrote:
  On Mon, 2012-10-22 at 22:50 +0200, Lennart Poettering wrote:
   On Mon, 22.10.12 11:48, Michael H. Warfield (m...@wittsend.com) wrote:
   
  To summarize the problem...  The LXC startup binary sets up various
  things for /dev and /dev/pts for the container to run properly and 
  this
  works perfectly fine for SystemV start-up scripts and/or Upstart.
  Unfortunately, systemd has mounts of devtmpfs on /dev and devpts
  on /dev/pts which then break things horribly.  This is because the
  kernel currently lacks namespaces for devices and won't for some 
  time to
  come (in design).  When devtmpfs gets mounted over top of /dev in 
  the
  container, it then hijacks the hosts console tty and several other
  devices which had been set up through bind mounts by LXC and should 
  have
  been LEFT ALONE.

 Please initialize a minimal tmpfs on /dev. systemd will then work 
 fine.

My containers have a reasonable /dev that work with Upstart just fine
but they are not on tmpfs.  Is mounting tmpfs on /dev and recreating
that minimal /dev required?
 
   Well, it can be any kind of mount really. Just needs to be a mount. And
   the idea is to use tmpfs for this.
 
   What /dev are you currently using? It's probably not a good idea to
   reuse the hosts' /dev, since it contains so many device nodes that
   should not be accessible/visible to the container.
 
  Got it.  And that explains the problems we're seeing but also what I'm
  seeing in some libvirt-lxc related pages, which is a separate and
  distinct project in spite of the similarities in the name...
 
  http://wiki.1tux.org/wiki/Lxc/Installation#Additional_notes
 
  Unfortunately, in our case, merely getting a mount in there is a
  complication in that it also has to be populated but, at least, we
  understand the problem set now.
 
 Ok...  Serge and I were corresponding on the lxc-users list and he had a
 suggestion that worked but I consider to be a bit of a sub-optimal
 workaround.  Ironically, it was to mount devtmpfs on /dev.  We don't

Oh, sorry - I take back that suggestion :)

Note that we have mount hooks, so templates could install a mount hook to
mount a tmpfs onto /dev and populate it.

Or, if everyone is going to need it, we could just add a 'lxc.populatedevs = 1'
option which does that without needing a hook.

devtmpfs should not be used in containers :)

-serge
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Michael H. Warfield
On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):
  Sorry for taking a few days to get back on this.  I was delivering a
  guest lecture up at Fordham University last Tuesday so I was out of
  pocket a couple of days or I would have responded sooner...
  
  On Mon, 2012-10-22 at 16:59 -0400, Michael H. Warfield wrote:
   On Mon, 2012-10-22 at 22:50 +0200, Lennart Poettering wrote:
On Mon, 22.10.12 11:48, Michael H. Warfield (m...@wittsend.com) wrote:

   To summarize the problem...  The LXC startup binary sets up 
   various
   things for /dev and /dev/pts for the container to run properly 
   and this
   works perfectly fine for SystemV start-up scripts and/or Upstart.
   Unfortunately, systemd has mounts of devtmpfs on /dev and devpts
   on /dev/pts which then break things horribly.  This is because the
   kernel currently lacks namespaces for devices and won't for some 
   time to
   come (in design).  When devtmpfs gets mounted over top of /dev in 
   the
   container, it then hijacks the hosts console tty and several other
   devices which had been set up through bind mounts by LXC and 
   should have
   been LEFT ALONE.
 
  Please initialize a minimal tmpfs on /dev. systemd will then work 
  fine.
 
 My containers have a reasonable /dev that work with Upstart just fine
 but they are not on tmpfs.  Is mounting tmpfs on /dev and recreating
 that minimal /dev required?
  
Well, it can be any kind of mount really. Just needs to be a mount. And
the idea is to use tmpfs for this.
  
What /dev are you currently using? It's probably not a good idea to
reuse the hosts' /dev, since it contains so many device nodes that
should not be accessible/visible to the container.
  
   Got it.  And that explains the problems we're seeing but also what I'm
   seeing in some libvirt-lxc related pages, which is a separate and
   distinct project in spite of the similarities in the name...
  
   http://wiki.1tux.org/wiki/Lxc/Installation#Additional_notes
  
   Unfortunately, in our case, merely getting a mount in there is a
   complication in that it also has to be populated but, at least, we
   understand the problem set now.
  
  Ok...  Serge and I were corresponding on the lxc-users list and he had a
  suggestion that worked but I consider to be a bit of a sub-optimal
  workaround.  Ironically, it was to mount devtmpfs on /dev.  We don't

 Oh, sorry - I take back that suggestion :)

Well, it worked (sort of) and reinforced what the problem was and where
the solution lay so there's no need to be sorry for it.  We learned and
we know why it's not the right solution.  This is good.  We made a lot
of progress on this just in the last week.  This is very good.

 Note that we have mount hooks, so templates could install a mount hook to
 mount a tmpfs onto /dev and populate it.

Ah, now that is interesting.  I haven't looked at that before.  I need
to explore that further.

 Or, if everyone is going to need it, we could just add a 'lxc.populatedevs = 
 1'
 option which does that without needing a hook.

Eventually, with Fedora (and later RHEL / CentOS / SL), Arch Linux, and
others going to systemd, I think this is going to be needed sooner than
later.

 devtmpfs should not be used in containers :)

Concur!

 -serge

Regards,
Mike
-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Michael H. Warfield
Hey Serge,

On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):
  Sorry for taking a few days to get back on this.  I was delivering a
  guest lecture up at Fordham University last Tuesday so I was out of
  pocket a couple of days or I would have responded sooner...
  
  On Mon, 2012-10-22 at 16:59 -0400, Michael H. Warfield wrote:
   On Mon, 2012-10-22 at 22:50 +0200, Lennart Poettering wrote:
On Mon, 22.10.12 11:48, Michael H. Warfield (m...@wittsend.com) wrote:

   To summarize the problem...  The LXC startup binary sets up 
   various
   things for /dev and /dev/pts for the container to run properly 
   and this
   works perfectly fine for SystemV start-up scripts and/or Upstart.
   Unfortunately, systemd has mounts of devtmpfs on /dev and devpts
   on /dev/pts which then break things horribly.  This is because the
   kernel currently lacks namespaces for devices and won't for some 
   time to
   come (in design).  When devtmpfs gets mounted over top of /dev in 
   the
   container, it then hijacks the hosts console tty and several other
   devices which had been set up through bind mounts by LXC and 
   should have
   been LEFT ALONE.
 
  Please initialize a minimal tmpfs on /dev. systemd will then work 
  fine.
 
 My containers have a reasonable /dev that work with Upstart just fine
 but they are not on tmpfs.  Is mounting tmpfs on /dev and recreating
 that minimal /dev required?
  
Well, it can be any kind of mount really. Just needs to be a mount. And
the idea is to use tmpfs for this.
  
What /dev are you currently using? It's probably not a good idea to
reuse the hosts' /dev, since it contains so many device nodes that
should not be accessible/visible to the container.
  
   Got it.  And that explains the problems we're seeing but also what I'm
   seeing in some libvirt-lxc related pages, which is a separate and
   distinct project in spite of the similarities in the name...
  
   http://wiki.1tux.org/wiki/Lxc/Installation#Additional_notes
  
   Unfortunately, in our case, merely getting a mount in there is a
   complication in that it also has to be populated but, at least, we
   understand the problem set now.
  
  Ok...  Serge and I were corresponding on the lxc-users list and he had a
  suggestion that worked but I consider to be a bit of a sub-optimal
  workaround.  Ironically, it was to mount devtmpfs on /dev.  We don't

 Oh, sorry - I take back that suggestion :)

 Note that we have mount hooks, so templates could install a mount hook to
 mount a tmpfs onto /dev and populate it.

Ok...  I've done some cursory search and turned up nothing but some
comments about pre mount hooks.  Where is the documentation about this
feature and how I might use / implement it?  Some examples would
probably suffice.  Is there a require release version of lxc-utils?

 Or, if everyone is going to need it, we could just add a 'lxc.populatedevs = 
 1'
 option which does that without needing a hook.

 devtmpfs should not be used in containers :)

 -serge

Regards,
Mike
-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Michael H. Warfield
On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
 Hey Serge,
 
 On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:

...

  Oh, sorry - I take back that suggestion :)
 
  Note that we have mount hooks, so templates could install a mount hook to
  mount a tmpfs onto /dev and populate it.
 
 Ok...  I've done some cursory search and turned up nothing but some
 comments about pre mount hooks.  Where is the documentation about this
 feature and how I might use / implement it?  Some examples would
 probably suffice.  Is there a require release version of lxc-utils?

I think I found what I needed in the changelog here:

http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html

I'll play with it and report back.

  Or, if everyone is going to need it, we could just add a 'lxc.populatedevs 
  = 1'
  option which does that without needing a hook.
 
  devtmpfs should not be used in containers :)
 
  -serge
 
 Regards,
 Mike
 --
 Everyone hates slow websites. So do we.
 Make your web apps faster with AppDynamics
 Download AppDynamics Lite for free today:
 http://p.sf.net/sfu/appdyn_sfd2d_oct
 ___ Lxc-users mailing list 
 lxc-us...@lists.sourceforge.net 
 https://lists.sourceforge.net/lists/listinfo/lxc-users

-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Serge Hallyn
Quoting Michael H. Warfield (m...@wittsend.com):
 On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
  Hey Serge,
  
  On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
 
 ...
 
   Oh, sorry - I take back that suggestion :)
  
   Note that we have mount hooks, so templates could install a mount hook to
   mount a tmpfs onto /dev and populate it.
  
  Ok...  I've done some cursory search and turned up nothing but some
  comments about pre mount hooks.  Where is the documentation about this
  feature and how I might use / implement it?  Some examples would
  probably suffice.  Is there a require release version of lxc-utils?
 
 I think I found what I needed in the changelog here:
 
 http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
 
 I'll play with it and report back.

Also the Lifecycle management hooks section in
https://help.ubuntu.com/12.10/serverguide/lxc.html

Note that I'm thinking that having lxc-start guess how to fill in /dev
is wrong, because different distros and even different releases of the
same distros have different expectations.  For instance ubuntu lucid
wants /dev/shm to be a directory, while precise+ wants a symlink.  So
somehow the template should get involved, be it by adding a hook, or
simply specifying a configuration file which lxc uses internally to
decide how to create /dev.

Personally I'd prefer if /dev were always populated by the templates,
and containers (i.e. userspace) didn't mount a fresh tmpfs for /dev.
But that does complicate userspace, and we've seen it in debian/ubuntu
as well (i.e. at certain package upgrades which rely on /dev being
cleared after a reboot).

-serge
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Michael H. Warfield
On Thu, 2012-10-25 at 14:02 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):
  On Thu, 2012-10-25 at 13:23 -0400, Michael H. Warfield wrote:
   Hey Serge,
   
   On Thu, 2012-10-25 at 11:19 -0500, Serge Hallyn wrote:
  
  ...
  
Oh, sorry - I take back that suggestion :)
   
Note that we have mount hooks, so templates could install a mount hook 
to
mount a tmpfs onto /dev and populate it.
   
   Ok...  I've done some cursory search and turned up nothing but some
   comments about pre mount hooks.  Where is the documentation about this
   feature and how I might use / implement it?  Some examples would
   probably suffice.  Is there a require release version of lxc-utils?
  
  I think I found what I needed in the changelog here:
  
  http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
  
  I'll play with it and report back.

 Also the Lifecycle management hooks section in
 https://help.ubuntu.com/12.10/serverguide/lxc.html

This isn't working...

Based on what was in both of those articles, I added this entry to
another container (Plover) to test...

lxc.hook.mount = /var/lib/lxc/Plover/mount

When I run lxc-start -n Plover, I see this:

[root@forest ~]# lxc-start -n Plover
lxc-start: unknow key lxc.hook.mount
lxc-start: failed to read configuration file

I'm running the latest rc...

[root@forest ~]# rpm -qa | grep lxc
lxc-0.8.0.rc2-1.fc16.x86_64
lxc-libs-0.8.0.rc2-1.fc16.x86_64
lxc-doc-0.8.0.rc2-1.fc16.x86_64

Is it something in git that hasn't made it to a release yet?

 Note that I'm thinking that having lxc-start guess how to fill in /dev
 is wrong, because different distros and even different releases of the
 same distros have different expectations.  For instance ubuntu lucid
 wants /dev/shm to be a directory, while precise+ wants a symlink.  So
 somehow the template should get involved, be it by adding a hook, or
 simply specifying a configuration file which lxc uses internally to
 decide how to create /dev.

I agree this needs to be by some sort of convention or template that we
can adjust.

 Personally I'd prefer if /dev were always populated by the templates,
 and containers (i.e. userspace) didn't mount a fresh tmpfs for /dev.
 But that does complicate userspace, and we've seen it in debian/ubuntu
 as well (i.e. at certain package upgrades which rely on /dev being
 cleared after a reboot).
 
 -serge

Regards,
Mike
-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Lennart Poettering
On Thu, 25.10.12 14:02, Serge Hallyn (serge.hal...@canonical.com) wrote:

   Ok...  I've done some cursory search and turned up nothing but some
   comments about pre mount hooks.  Where is the documentation about this
   feature and how I might use / implement it?  Some examples would
   probably suffice.  Is there a require release version of lxc-utils?
  
  I think I found what I needed in the changelog here:
  
  http://www.mail-archive.com/lxc-devel@lists.sourceforge.net/msg01490.html
  
  I'll play with it and report back.
 
 Also the Lifecycle management hooks section in
 https://help.ubuntu.com/12.10/serverguide/lxc.html
 
 Note that I'm thinking that having lxc-start guess how to fill in /dev
 is wrong, because different distros and even different releases of the
 same distros have different expectations.  For instance ubuntu lucid
 wants /dev/shm to be a directory, while precise+ wants a symlink.  So
 somehow the template should get involved, be it by adding a hook, or
 simply specifying a configuration file which lxc uses internally to
 decide how to create /dev.

/dev/shm can be created/mounted/symlinked by the OS in the
container. This is nothing LXC should care about.

My recommendation for LXC would be to unconditionally pre-mount /dev as
tmpfs, and add exactly the device nodes /dev/null, /dev/zero, /dev/full,
/dev/urandom, /dev/random, /dev/tty, /dev/ptmx to it. That is the
minimal set you need to boot a machine. All further
submounts/symlinks/dirs can be created by the OS boot logic in the
container.

That's what libvirt-lxc and nspawn do, and is what we defined in:

http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface

It would be good if LXC would do the same in order to minimize the
manual user configuration necessary.

Lennart

-- 
Lennart Poettering - Red Hat, Inc.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-25 Thread Michael H. Warfield
On Thu, 2012-10-25 at 20:30 -0500, Serge Hallyn wrote:
 Quoting Michael H. Warfield (m...@wittsend.com):
  On Thu, 2012-10-25 at 23:38 +0200, Lennart Poettering wrote:
   On Thu, 25.10.12 11:59, Michael H. Warfield (m...@wittsend.com) wrote:
  
I've got some more problems relating to shutting down containers, some
of which may be related to mounting tmpfs on /run to which /var/run is
symlinked to.  We're doing halt / restart detection by monitoring utmp
in that directory but it looks like utmp isn't even in that directory
anymore and mounting tmpfs on it was always problematical.  We may have
to have a more generic method to detect when a container has shut down
or is restarting in that case.
  
   I can't parse this. The system call reboot() is virtualized for
   containers just fine and the container managaer (i.e. LXC) can check for
   that easily.
  
  The problem we have had was with differentiating between reboot and halt
  to either shut the container down cold or restarted it.  You say
  easily and yet we never came up with an easy solution and monitored
  utmp instead for the next runlevel change.  What is your easy solution
  for that problem?

 I think you're on older kernels, where we had to resort to that.  Pretty
 recently Daniel Lezcano's patch was finally accepted upstream, which lets
 a container call reboot() and lets the parent of init tell whether it
 called reboot or shutdown by looking at wTERMSIG(status).

Now THAT is wonderful news!  I hadn't realized that had been accepted.
So we no longer need to rely on the old utmp kludge?

 -serge

Regards,
Mike
-- 
Michael H. Warfield (AI4NB) | (770) 985-6132 |  m...@wittsend.com
   /\/\|=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!


signature.asc
Description: This is a digitally signed message part
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [Lxc-users] Unable to run systemd in an LXC / cgroup container.

2012-10-22 Thread Michael H. Warfield
On Mon, 2012-10-22 at 09:06 +0100, John wrote:
 On 22/10/12 03:06, Michael H. Warfield wrote:
  On Mon, 2012-10-22 at 02:53 +0200, Kay Sievers wrote:
  On Sun, Oct 21, 2012 at 11:25 PM, Michael H. Warfield m...@wittsend.com 
  wrote:
  This is being directed to the systemd-devel community but I'm cc'ing the
  lxc-users community and the Fedora community on this for their input as
  well.  I know it's not always good to cross post between multiple lists
  but this is of interest to all three communities who may have valuable
  input.
 
  I'm new to this particular list, just having joined after tracking a
  problem down to some systemd internals...
 
  Several people over the last year or two on the lxc-users list have been
  discussions trying to run certain distros (notably Fedora 16 and above,
  recent Arch Linux and possibly others) in LXC containers, virualizing
  entire servers this way.  This is very similar to Virtuoso / OpenVZ only
  it's using the native Linux cgroups for the containers (primary reason I
  dumped OpenVZ was to avoid their custom patched kernels).  These recent
  distros have switched to systemd for the main init process and this has
  proven to be disastrous for those of us using LXC and trying to install
  or update our containers.
 
  To put it bluntly, it doesn't work and causes all sorts of problems on
  the host.
 
  To summarize the problem...  The LXC startup binary sets up various
  things for /dev and /dev/pts for the container to run properly and this
  works perfectly fine for SystemV start-up scripts and/or Upstart.
  Unfortunately, systemd has mounts of devtmpfs on /dev and devpts
  on /dev/pts which then break things horribly.  This is because the
  kernel currently lacks namespaces for devices and won't for some time to
  come (in design).  When devtmpfs gets mounted over top of /dev in the
  container, it then hijacks the hosts console tty and several other
  devices which had been set up through bind mounts by LXC and should have
  been LEFT ALONE.
 
  Yes!  I recognize that this problem with devtmpfs and lack of namespaces
  is a potential security problem anyways that could (and does) cause
  serious container-to-host problems.  We're just not going to get that
  fixed right away in the linux cgroups and namespaces.
 
  How do we work around this problem in systemd where it has hard coded
  mounts in the binary that we can't override or configure?  Or is it
  there and I'm just missing it trying to examine the sources?  That's how
  I found where the problem lay.
  As a first step, this probably explains most of it:
 http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface
  A very long ways, yeah.  That looks like it could be just what we've
  been looking for.  Just gotta figure out how to set that environment
  variable but that's up to a couple of others to comment on in the
  lxc-users list.  Then we'll see where we go from there.
 
  Many thanks!
 
  Kay
  Regards,
  Mike
 
 
 I've just performed a very quick check on my Arch Linux system here.
 
 on host (running systemd):
 # cat /proc/1/environ
 TERM=linuxRD_TIMESTAMP=
 
 In a container (running sysvinit):
 # cat /proc/1/environ
 STY=623.systemd-lithiumTERM=screenTERMCAP=SC|screen|VT 100/ANSI X3.64 
 virtual terminal:\
  :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bs:bt=\E[Z:\
  :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:ct=\E[3g:\
  :do=^J:nd=\E[C:pt:rc=\E8:rs=\Ec:sc=\E7:st=\EH:up=\EM:\
  :le=^H:bl=^G:cr=^M:it#8:ho=\E[H:nw=\EE:ta=^I:is=\E)0:\
  :li#24:co#80:am:xn:xv:LP:sr=\EM:al=\E[L:AL=\E[%dL:\
  :cs=\E[%i%d;%dr:dl=\E[M:DL=\E[%dM:dc=\E[P:DC=\E[%dP:\
  :im=\E[4h:ei=\E[4l:mi:IC=\E[%d@:ks=\E[?1h\E=:\
  :ke=\E[?1l\E:vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l:\
  :ti=\E[?1049h:te=\E[?1049l:k0=\E[10~:k1=\EOP:k2=\EOQ:\
  :k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:\
  :k8=\E[19~:k9=\E[20~:k;=\E[21~:F1=\E[23~:F2=\E[24~:\
  :kh=\E[1~:@1=\E[1~:kH=\E[4~:@7=\E[4~:kN=\E[6~:kP=\E[5~:\
 :kI=\E[2~:kD=\E[3~:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:WINDOW=0SHELL=/bin/shPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binLANG=en_GB.UTF-8container=lxc

 So it looks like that container environment variable is already set on 
 PID1

Yeah, I saw that myself last night.  Testing that out and it's still not
working here (although it doesn't seem to be grabbing the host console
now) if I use systemd but upstart fires right up and I see that
container variable set.  Looked like a number of mounts listed on that
wiki page.  Maybe something is missing.  Right now it's just hanging
trying to start the container and, when I subsequently try to shut the
container down it results in a hung resource and it can't delete the
cgroups directory because it's busy.  Only thing I did was change the
link to /sbin/init from upstart to systemd and it's now dead and I'll
have to reboot the host to free the resource.  :-P

 Regards,
 John

Regards,
Mike
-- 
Michael H. Warfield (AI4NB)