[lxc-devel] [PATCH] ubuntu: Fix regression in post-process

Serge Hallyn serge.hallyn at ubuntu.com
Thu Nov 28 03:14:24 UTC 2013


Quoting Stéphane Graber (stgraber at ubuntu.com):
> THe recent reorg of lxc-ubuntu introduced some package installation in
> post-process but without first disabling service startup.
> 
> As a result, if the cache is a bit out of date and a ssh update is
> available, post-process will apply that update (as it does apt-get
> install ssh vim) which in turn will attemp to start sshd. This will
> either lead to ssh on the host being restarted or if there's no sshd on
> the host, will fail the container creation as the postinst will get an
> error from upstart.
> 
> The fix is very simply to add the same policy-rc.d trick when running
> post-process.

If we're on a new enough kernel we might want to do all apt-gets
in the template by doing lxc-start -d and then lxc-attach.  Or
we could just do it through lxc-execute I suppose, and always
put lxc-init into the container.

> Signed-off-by: Stéphane Graber <stgraber at ubuntu.com>

Acked-by: Serge E. Hallyn <serge.hallyn at ubuntu.com>

> ---
>  templates/lxc-ubuntu.in | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/templates/lxc-ubuntu.in b/templates/lxc-ubuntu.in
> index ac39ed2..4e6a54f 100644
> --- a/templates/lxc-ubuntu.in
> +++ b/templates/lxc-ubuntu.in
> @@ -467,6 +467,13 @@ post_process()
>      release=$2
>      packages=$3
>  
> +    # Disable service startup
> +    cat > $rootfs/usr/sbin/policy-rc.d << EOF
> +#!/bin/sh
> +exit 101
> +EOF
> +    chmod +x $rootfs/usr/sbin/policy-rc.d
> +
>      if [ ! -f $rootfs/etc/init/container-detect.conf ]; then
>          # Make sure we have a working resolv.conf
>          cresolvonf="${rootfs}/etc/resolv.conf"
> @@ -538,6 +545,9 @@ post_process()
>          mv $rootfs/dev/shm $rootfs/dev/shm.bak
>          ln -s /run/shm $rootfs/dev/shm
>      fi
> +
> +    # Re-enable service startup
> +    rm $rootfs/usr/sbin/policy-rc.d
>  }
>  
>  do_bindhome()
> -- 
> 1.8.4.4
> 
> 
> ------------------------------------------------------------------------------
> Rapidly troubleshoot problems before they affect your business. Most IT 
> organizations don't have a clear picture of how application performance 
> affects their revenue. With AppDynamics, you get 100% visibility into your 
> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
> http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk
> _______________________________________________
> Lxc-devel mailing list
> Lxc-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/lxc-devel




More information about the lxc-devel mailing list