From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.sysutils.supervision.general/1595 Path: news.gmane.org!not-for-mail From: Bernhard Graf Newsgroups: gmane.comp.sysutils.supervision.general Subject: using runit as init Date: Thu, 3 Jan 2008 21:51:21 +0100 Message-ID: <200801032151.21524.list-supervision@augensalat.de> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1199393490 10204 80.91.229.12 (3 Jan 2008 20:51:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 3 Jan 2008 20:51:30 +0000 (UTC) To: supervision@list.skarnet.org Original-X-From: supervision-return-1830-gcsg-supervision=m.gmane.org@list.skarnet.org Thu Jan 03 21:51:49 2008 Return-path: Envelope-to: gcsg-supervision@gmane.org Original-Received: from antah.skarnet.org ([212.85.147.14]) by lo.gmane.org with smtp (Exim 4.50) id 1JAX2X-0006Cd-GZ for gcsg-supervision@gmane.org; Thu, 03 Jan 2008 21:51:45 +0100 Original-Received: (qmail 12089 invoked by uid 76); 3 Jan 2008 20:51:28 -0000 Mailing-List: contact supervision-help@list.skarnet.org; run by ezmlm List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Archive: Original-Received: (qmail 12080 invoked from network); 3 Jan 2008 20:51:28 -0000 User-Agent: KMail/1.9.1 Content-Disposition: inline Xref: news.gmane.org gmane.comp.sysutils.supervision.general:1595 Archived-At: Hi list, happy new year! I'm playing a little with runit as replacement for SysV init as roughly described in http://smarden.org/runit/replaceinit.html . I adjusted the three runit stage scripts to play with an OpenSUSE 10.3 Linux system. So far runit only supervises the (min)gettys, whereas all services that come with the distribution are still managed from /etc/init/rc that gets executed at the end of /etc/runit/1 . The whole thing is wrapped into two RPMs (runit and runit-sysvinit-compat) that replace the sysvinit RPM installation. Seems to work quite well, provided that I didn't do much more testing than boot, reboot, halt for now. What worries me now is a smooth transition for running systems from init to runit. In general I'd prefer to leave most service where they are, and just supervise certain ones, e.g. ssh, web server, all the djb s/w and custom daemons like FastCGI processes. The problem is that runit makes (nearly) no effort to support a system with supervised and "traditional" non-supervised daemons. Perhaps this is also the reason why runit didn't gain much attention in all the years, because concept and code are very well done AFAICT. At the moment I'm struggling with these questions: - A way to boot into a certain runlevel (say "init xxx" at boot prompt). runit and runit-init don't care about these, where as (Smoorenburg's) init passes the current runlevel in environment variable RUNLEVEL. - Changing runlevels. There is no way to say "init 3" anymore. runsvchdir doesn't care about the SysV init scripts that are started in /etc/runit/1. runit-init only supports SysV init args "0" and "6" when not runing as process 1. - utmp/wtmp support is missing completely, besides utmpset which should be named utmpclr or so. Maybe somebody can give some advice or can share some example code or ideas. In case of interest and if someone has some public space at hand I would upload the SRPMs. -- Bernhard Graf