[lxc-devel] [PATCH 2/2] add lxc-autostart support for sysv init systems

Stéphane Graber stgraber at ubuntu.com
Fri Jan 3 21:58:06 UTC 2014


On Fri, Jan 03, 2014 at 03:44:53PM -0600, Serge Hallyn wrote:
> Quoting Stéphane Graber (stgraber at ubuntu.com):
> > On Fri, Jan 03, 2014 at 02:00:25PM -0600, Serge Hallyn wrote:
> > > Quoting Stéphane Graber (stgraber at ubuntu.com):
> > > > On Thu, Jan 02, 2014 at 11:09:25AM -0600, Serge Hallyn wrote:
> > > > > Quoting Dwight Engen (dwight.engen at oracle.com):
> > > > > > This change updates the way init scripts get installed so that more
> > > > > > than one init system can be supported. Instead of installing the
> > > > > > systemd service file from the spec file, it should be installed at
> > > > > > make install time, so that someone compiling from source also gets
> > > > > > the unit file installed.
> > > > > > 
> > > > > > Update the plamo template to use a lock file not named just
> > > > > > /var/lock/subsys/lxc since the presence of that file is used by
> > > > > > sysv init rc file to know if it should run the K01lxc script. This
> > > > > > also makes it consistent with the other templates which use
> > > > > > /var/lock/subsys/lxc-$template-name.
> > > > > > 
> > > > > > Signed-off-by: Dwight Engen <dwight.engen at oracle.com>
> > > > > 
> > > > > I have no objection to this, but I'd appreciate Stéphane taking
> > > > > a closer look.  This might lead the way to putting the upstart
> > > > > scripts for ubuntu upstream as well, which would be a plus.  It
> > > > > also can give us more reasonable and comprehensive testcases if
> > > > > we can know that common distros will have a certain amount of
> > > > > setup.
> > > > > 
> > > > > Acked-by: Serge E. Hallyn <serge.hallyn at ubuntu.com>
> > > > 
> > > > I don't think the current proposal is appropriate.
> > > > 
> > > > At least in Ubuntu and Debian, we typically want more than one init
> > > > script to be installed. The way things work in Debian based distros is
> > > > that init scripts for all supported init daemons are installed and only
> > > > the relevant ones are used at boot time and by the user (with the
> > > > "service" command).
> > > > 
> > > > As a result, I'd expect an LXC package build on Debian or Ubuntu to
> > > > include the upstart jobs, sysvinit script and systemd unit in their
> > > > usual locations.
> > > 
> > > Drat, I just pushed the commit.
> > > 
> > > So having
> > > 
> > > case $with_distro in
> > > 	ubuntu)
> > > 	init_script=upstart,systemd,sysv
> > > 	;;
> > > 
> > > and the rest geared to support that, could work here?
> > 
> > And the same for debian) but yes, that'd be fine I think.
> > 
> > I'm also wondering whether non-Debian distros actually have a problem
> > should they all be installed at once, if not, then maybe we can do
> > without the whole --init-script thing and always have them all
> > installed?
> 
> Of course one problem is that the init script contents for the same
> init system for different distros may have to be different.  Someone
> may finagle fedora into running upstart, but ubuntu's lxc-net.conf
> probably wouldn't work on fedora.  (Then again, as I look at it,
> it actually just might...)

Yeah, I'm planning on upstreaming our upstart jobs and apparmor profiles
before rc1 but I'll need to do a proper review to confirm those have at
least a remote chance of working on another distro.

I suspect most distros will still overwrite the upstream init scripts
with their own, as they may want to tweak some of the start conditions
or change some of the content to better integrate with their init system
(different LSB version, slightly different hooks, ...).

-- 
Stéphane Graber
Ubuntu developer
http://www.ubuntu.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.linuxcontainers.org/pipermail/lxc-devel/attachments/20140103/4d829f7c/attachment.pgp>


More information about the lxc-devel mailing list