I have OpenSuse 11.4.

I start some on-boot scripts inside /etc/init/boot.local.

Where could I move those scripts so that they would be started after all (most) environment variables got initialized?

These scripts need to be started really once, so things such as /etc/profile.local aren't candidates.

I try to start Sonar, which searches for Java in some strange way (instead just by look up JAVA_HOME), and it fails to find Java (logs don't tell me exactly why). From command line, after boot, it can be started (as root and as user).

I suppose, there are some environment variables which get initialized inside services. Can it be that way?

EDIT: sonar.sh from sonar/bin/linux-x86-64
EDIT: sonar.log from sonar/logs

link|improve this question

feedback

2 Answers

up vote 1 down vote accepted

I'm not familiar with openSUSE, but in my opinion, the best way is export the environment variables before starting the services in /etc/init/boot.local.


EDIT

Unable to start JVM: No such file or directory

Does JAVA_HOME/bin/ is already in your PATH?

link|improve this answer
Well, as I sad, I don't know how Solar is searching for Java. It's not JAVA_HOME or other well-known variables, because they are set early enough. – java.is.for.desktop Aug 21 '11 at 13:16
Could you please post the init script for Solar? – quanta Aug 21 '11 at 13:53
@quenta done, edited question – java.is.for.desktop Aug 21 '11 at 21:16
What error you get when starting sonar.sh? – quanta Aug 22 '11 at 2:07
@quante see 2nd edit: log messages, such as "wrapper started as daemon", do not appear inside the script pasted before. – java.is.for.desktop Aug 22 '11 at 8:10
show 2 more comments
feedback

Normally global variables are not initialized in init-scripts. The variables you need get propably initialized in your shell by /etc/profile.local or some other shell-configuration file.

If a java is being found from the shell where is it located?

link|improve this answer
In general, for init scripts either use the fully qualified path to the executable and setup the exact environment variables you need. – Joshua Hoblitt Aug 22 '11 at 9:32
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.