[Pkg-sysvinit-devel] invoke-rc.d in chroots

Henrique de Moraes Holschuh hmh at debian.org
Thu Apr 12 16:57:58 UTC 2007


On Wed, 11 Apr 2007, Joerg Platte wrote:
> I hope this has not been discussed before. I installed Debian in a chroot and 
> copy this image to several boxes using rsync. Package upgrades are started 
> within the chroot environment. 

These packages should have bugs filled asking them to switch to invoke-rc.d.

Meanwhile, you need to divert start-stop-daemon (which is what pbuilder and
others do, besides providing restrictive policy-rc.d).

> However, many packages are calling invoke-rc.d during package upgrade 
> resulting in error messages, if the daemon cannot be started properly (for 
> example, because the same daemon is already running outside the chroot). Is 
> it possible to prevent any invoke-rc.d action when the script is called in a 
> chroot? Currently, I'm using dpkg-divert to use my own version of 

Yes, it is.  All incarnations of invoke-rc.d *are* to use policy-rc.d when
they decide to actually do something.  And you can have a policy-rc.d that
does an exit 101, which will forbid any starts, stops, etc.

> I could "dpkg-divert" invoke-rc.d as well, but maybe there is less intrusive 
> solution.

You don't need to. invoke-rc.d does the right thing, if policy-rc.d exists
and exits with status 101. If it doesn't, file a bug, severity important or
higher.  It really is supposed to.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh



More information about the Pkg-sysvinit-devel mailing list