From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.sysutils.supervision.general/2591 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Colin Booth Newsgroups: gmane.comp.sysutils.supervision.general Subject: Re: what init systems do you use ? Date: Tue, 14 May 2019 05:50:07 +0000 Message-ID: <20190514055007.hdgghme3mkwgfbud@cathexis.xen.prgmr.com> References: <11997211556565598@myt6-27270b78ac4f.qloud-c.yandex.net> <15692301556844801@iva7-b6ed732000ae.qloud-c.yandex.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="103351"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: NeoMutt/20170113 (1.7.2) To: supervision@list.skarnet.org Original-X-From: supervision-return-2181-gcsg-supervision=m.gmane.org@list.skarnet.org Tue May 14 07:50:14 2019 Return-path: Envelope-to: gcsg-supervision@m.gmane.org Original-Received: from alyss.skarnet.org ([95.142.172.232]) by blaine.gmane.org with smtp (Exim 4.89) (envelope-from ) id 1hQQKM-000Qky-AN for gcsg-supervision@m.gmane.org; Tue, 14 May 2019 07:50:14 +0200 Original-Received: (qmail 1446 invoked by uid 89); 14 May 2019 05:50:38 -0000 Mailing-List: contact supervision-help@list.skarnet.org; run by ezmlm Original-Sender: Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Original-Received: (qmail 1439 invoked from network); 14 May 2019 05:50:38 -0000 Content-Disposition: inline In-Reply-To: <15692301556844801@iva7-b6ed732000ae.qloud-c.yandex.net> Xref: news.gmane.org gmane.comp.sysutils.supervision.general:2591 Archived-At: On Fri, May 03, 2019 at 02:53:21AM +0200, Jeff wrote: > > I have. The "rather artificial and constructed argument" > > happened to me in real life, and it was a significant inconvenience. > > oh no, i hope it was not a remote server ... :-/ > always try things out on a box you have console access to > or in a vm. > > BTW: > > what init systems do this list's subscribers use ? > i use statically linked (musl) BusyBox init (and gettys) > + mksh (https://www.mirbsd.org/mksh.htm) + s6 + OpenRC > (v0.34.11, outdated) as default init system. > i also ran perp but now run everything to be supervised > under s6, started via a little setup shell script directly from > /etc/inittab (most "one time tasks" are indeed directly run > from the inittab file instead of a shell script). > Depending on the system: s6+s6-rc via hand-rolled stageN scripts s6+s6-rc with heavily modified s6-linux-init v0.x scripts, s6+s6-rc with very lightly modified s6-linux-init v1.0.0.0 scripts sysvinit+insserv with most services under a supervisor (s6) mainline sysvinit+insserv setups mainline systemd setups All of these are nominally Debian systems, and all but the systemd setups are sysvinit-based from a package manager configuration perspective. Of these I would say that the 1.x s6-linux-init ecosystem is by far the one I like the best since it's almost as flexible in the ways that matter as hand-rolled stageN scripts or the earlier generation of s6-linux-init stuff, with fewer surprises and sharp edges. As for my s6-rc setup, it's similar in design to Guillermo's in that I started from the standard Debian sysvinit-core starting point, figured out the dependency graph for core system functionality, and then replicated it in s6-rc. That general core has persisted for some number of years, though I've gone through several iterations of how that service set gets represented on disk and what the bundle and trigger strategy is (read: nothing that I'm really enthusiastic about sharing because I'm never entirely happy about all of it but I only really revisit it when I'm building out a new system). All my skaware stuff gets static built against musl using the slashpackage convention, mostly because I want to make sure that my core system is entirely self-contained. I also use the build toolchains that Laurent provides because those have significantly fewer gotchas and sharp edges than trying to maintain that yourself across several systems. One of these days (or months, or whatever) I'll get around to setting up a local packaging solution so I only have to recompile once but that day is not today. Fun Fact: I'm quite possibly the first person beyond Laurent to use s6-rc, at least outside of a throwaway vm, and maybe the first person to seriously boot a complex system (a laptop) with s6-svscan as pid1. The first month or so of s6-rc was very exciting, both in the promise of a solid service manager for a supervision system and also because every adjustment to your service db was a reboot and a 50/50 chance of all hell breaking loose since s6-rc-update wasn't a thing yet. Those were also the heady days of s6 not having signal redirection, so using it as an init was similarly action packed. -- Colin Booth