On 1/11/19 8:36 AM, Dmitry Bogatov wrote:
> 
> [ I believe this bug should be reassigned to bin:insserv, if current
>   maintainer of bin:init-system-helpers agree. ]
> 
> [2012-02-15 11:33] Peter Eisentraut <pet...@debian.org>
>> part       text/plain                 238
>> Package: sysv-rc
>> Version: 2.88dsf-22
>> Severity: wishlist
>>
>> Please add an option like insserv -p or chkconfig --root to specify an
>> alternative root for the init scripts.  This would be useful for
>> testing and for fixing other file systems.
> 
> According to insserv(8), it must be possible (insserv=1.18.0):
> 
>        [[/]path/to/init.d/]
>               Relative or absolute path to the init  scripts  base  directory.
>               This  defaults to /etc/init.d/ in compliance with the LSB speciā€
>               fication.  In this case insserv does not add or remove a  script
>               to  the  runlevels  declared  in  the  script  headers,  but may
>               re-order the runlevels if the order  of  the  currently  enabled
>               scripts  has  changed  (see option -d).  Note that if a relative
>               path is used insserv has to be called from the root directory.
> 
> but I failed to make use of it:
> 
>       $ mkdir /tmp/temp-1
>       $ cp -r /etc/init.d .
>       $ /sbin/insserv init.d
>       $ ls
>       init.d rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rcS.d
>       $ find -empty
>       ./rcS.d
>       ./rc6.d
>       ./rc5.d
>       ./rc4.d
>       ./rc3.d
>       ./rc2.d
>       ./rc1.d
>       ./rc0.d
> 
> Jesse, am I holding it wrong?
> 


The quoted part of the insserv manual page says when a relative path is
used insserv must be called from the root directory. In this case I
wonder if the man page is being ambiguous about whether it means root as
in "/" or root as in the top-level directory the user is working in. I'm
starting to suspect the former.

What happens if the steps are changed to be as follows:

mkdir /tmp/temp-1
cd /tmp/temp-1
cp -r /etc/init.d .
cd /
/sbin/insserv tmp/temp-1/init.d



If this way works then it's a limitation of insserv and should be better
documented on my end. If it doesn't work, then we have a bug I need to fix.

Reply via email to