Bug#935302: insserv: bootlogd stops too early

Tito farmatito at tiscali.it
Tue Aug 27 19:55:44 BST 2019



On 8/27/19 7:23 PM, Dmitry Bogatov wrote:
> 
> [2019-08-25 21:01] Tito <farmatito at tiscali.it>
>> On 8/25/19 6:06 PM, Dmitry Bogatov wrote:
>>>
>>> [2019-08-23 13:11] Jesse Smith <jessefrgsmith at yahoo.ca>
>>>>>> @Jesse Is is possible to specify dependencies between two scripts
>>>>>> that both depends on $all?
>>>>
>>>> What we might consider is adding new expandable dependency variables to
>>>> insserv.conf. We already have things like $all, $time and $network.
>>>> Maybe we need another variable like $rc-local to better define when
>>>> scripts are supposed to run? Then bootlogd could depend on $rc-local
>>>> instead of $all?
>>>
>>> I tried following,
>>>
>>>    * add '$rc_local rc.local' into /etc/insserv.conf
>>>    * add 'Required-Start: $rc_local' into /etc/init.d/bootlogd
>>>
>>> but it still causes errors from insserv(8). Did I correctly understood
>>> your suggestion?
>>>
>>> Still, I think the most straightforward (from interface point of view)
>>> way is to add support inter-depencies between 'Required-Start: $all'
>>> scripts.
>>>
>>> Handwavingly, I see following algorithm:
>>>
>>>    * split init scripts into two groups -- ones that depends on $all and
>>>      ones that don't
>>>    * Implement topological sorting in both group, ignoring $all in first
>>>      group
>>>    * concatenate resulting ordering
>>>
>>> Are there implementation problems, that make is unfeasible?
>>>
> 
>> Hi,
>> maybe simpler to create $last for bootlogd to be executed after all
>> other scripts?
> 
> Do you mean it can be implemented with insserv as-is, or it requires
> adding another magic $variable into insserv C code?
> 

I suspect that it is option number 2 but did not really look into the code.

Ciao,
Tito




More information about the Debian-init-diversity mailing list