On Feb 16, 2012 3:33 PM, "J. Roeleveld" <jo...@antarean.org> wrote:
>
>
> On Thu, February 16, 2012 6:24 am, Pandu Poluan wrote:
> > I am wondering if any of you had experienced the same difficulty as me:
> >
> > A couple of days ago, I upgraded openrc from (whatever version it was
> > previously) to 0.9.8.4.
> >
> > One of the scripts in /etc/init.d was a symlink to
/opt/some/package/path
> >
> > (To be precise, /etc/init.d/gatewall ->
> > /opt/wallmator/initscripts/gentoo/gatewall.init)
> >
> > ((wallmator is a "Firewall Automator" script I'm developing))
> >
> > This morning, I rebooted. Upon time to execute the "gatewall" script,
> > it complained that some settings (set through /etc/conf.d/gatewall are
> > not set). I double-checked the settings it complained; yep, they are
> > there in /etc/conf.d/gatewall.
> >
> > I tried `/etc/init.d/gatewall start`, no luck. It still complains of
> > some vital non-optional settings not being set.
> >
> > So, I replaced the symlink:
> >
> > cd /etc/init.d
> > mv gatewall gatewall.old
> > cp /opt/wallmator/initscripts/gentoo/gatewall.init gatewall
> >
> > And tried again `/etc/init.d/gatewall start` ... it worked!!
> >
> > So I tried `shutdown -r now` ... there's joy in Mudville! The
> > "gatewall" initscript now properly reads the settings in
> > /etc/conf.d/gatewall.
> >
> > My question is: Is there a change of behavior in how openrc executes a
> > script in /etc/init.d/ when said script is a symlink instead of a
> > 'normal' file?
> >
> > PS: For this particular system, everything under / except /boot
> > resides in the same filesystem.
> >
> > PPS: For the contents of the "gatewall" initscript, see
> >
https://bitbucket.org/pepoluan/wallmator/src/edae2e294d07/initscript/gentoo/gatewall.init
> >
> > Rgds,
> > --
> > FdS Pandu E Poluan
> > ~ IT Optimizer ~
> >
> >  • LOPSA Member #15248
> >  • Blog : http://pepoluan.tumblr.com
> >  • Linked-In : http://id.linkedin.com/in/pepoluan
> >
>
> Pandu,
>
> I haven't checked the source yet, but I'm wondering if the scripts are
> looking for the "conf.d" file in the location:
> " ../conf.d " (based from the actual location of the init-script)
>
> Can you try the following:
> # mkdir -p /opt/wallmator/initscripts/conf.d
> # ln -s /etc/init.d/gatewall /opt/wallmator/initscripts/conf.d/gatewall
>
> and then recreate the original link for the init-script.
>

IIRC, it's the responsibility of runscript to source the relevant config
file in /etc/conf.d, and not the initscript's.

If you peruse the code, you can see that I relied on that feature; there is
no source-ing of any file in /etc/conf.d

Rgds,

Reply via email to