:: Re: [DNG] ideas for system startup
Top Page
Delete this message
Reply to this message
Author: Rainer Weikusat
Date:  
To: dng
Subject: Re: [DNG] ideas for system startup
> On Fri, Aug 07, 2015 at 01:58:19PM +0100, Rainer Weikusat wrote:

[...]

>> The general idea would be
>>
>> 1) Keep a relatively simple init which kicks off execution of commands in
>>    response to 'change the system state' request and nothing else (get
>>    rid of as much of /etc/inittab as possible at some point in time)

>
> This is something that systemd did, and one of the things about it
> that really ticked me off. Let me provide a couple of examples:
>
> 1. One of the things I did when playing with debian jessie was to
> install a virtual machine which would be accessed only via serial
> console and ssh (this is a real use case for me). I discovered that
> there is no /etc/inittab in debian jessie! Second, I discovered that
> while I can remove agetty on tty1, I can't do so on tty2-tty6, because
> systemd insists I should have a login console wherever possible.


sysvinit is already something which (unsuccessfully) tried to become a
univeral, monolithic service manager integrated with init. I also wrote
one myself, although that was for an embedded system so it erred rather
on the side of 'get rid of features' and meanwhile, I consider this a
bad idea: A getty listening on some (however defined) login port is just
another daemon process (it's not a server) and insofar some are needed,
they should be handled like all other servers.

> 2. I want ctrl+alt+del to do shutdown -h, instead of shutdown -r
> (another real use case on another virtual system). I couldn't figure
> out a way to do this in debian jessie.


[...]

I would like to get rid of the parser. Two ideas I've been playing
around with so far would be:

    - move the parser into a program init executes which
          turns the configuration file into some kind of parameter
          structure


    - just use a well-known command name


This means init would do something like execute /bin/cad-handler and
the behaviour could be changed by changing that.