Info |
---|
This article details how to troubleshoot apace not starting on a Checkmk server. |
Status |
---|
colour | Green |
---|
title | LAST TESTED ON CHECKMK 2.0.0P1 |
---|
|
Warning |
---|
We do not support any modification of our config files (e.g., apache, .profile, etc.). If you do that and the site is broken, you will run out of support, especially on the Checkmk Appliance. We saw the bottom error several times, especially when dealing with check_sql. |
Error Messages
Code Block |
---|
|
Starting apache...apache2: Syntax error on line 236 of /omd/sites/mysite/etc/apache/apache.conf
libpython3.9.so.1.0: cannot open shared object file: No such file or directory |
Problem
The default for LD_LIBARY_PATH should be:
Code Block |
---|
|
LD_LIBRARY_PATH=$OMD_ROOT/local/lib:$OMD_ROOT/lib |
But for some reason, the .profile file of the site user seems to be broken, and after the restart of the site, you will face the following issue:
Code Block |
---|
|
Starting apache...apache2: Syntax error on line 236 of /omd/sites/mysite/etc/apache/apache.conf: Syntax error on line 2 of /omd/sites/mysite/etc/apache/conf.d/01_wsgi.conf: Cannot load /omd/sites/mysite/lib/apache/modules/mod_wsgi.so into server: libpython3.9.so.1.0: cannot open shared object file: No such file or directory
..........ERROR |
Solution
Check if the env is right
Code Block |
---|
|
su - mysite
OMD[mysite]:~$ echo $LD_LIBRARY_PATH
/omd/sites/mysite/opt/oracle/instantclient_21_4 |
In that case, the env is not correct. The env is pointing only to the libraries of the Oracle instantclient
Check if the library is available.
Code Block |
---|
|
OMD[mysite]:~$ find -L -name "*libpython3.9.so.1.0*"
./version/lib/libpython3.9.so.1.0
./lib/libpython3.9.so.1.0 |
In that case, the library is only available in the origin and default path of LD_LIBRARY_PATH
Restore the default variable
You will find the original files of .profile or .bashrc in "/omd/versions/2.1.0b7.cee/skel"
Code Block |
---|
|
➜ /omd/versions/2.1.0b7.cee/skel ls -altr
insgesamt 36
-rw-r--r-- 1 root root 2055 Apr 25 00:02 .profile
-rw-r--r-- 1 root root 1091 Apr 25 00:02 .bashrc |
One way would be to copy the LD_LIBRARY_PATH value from .profile and put it directly to the .profile of the site user:
Code Block |
---|
|
su - mysite
OMD[mysite]:~$ vi .profile |
And to make the changes permanent, please enter:
Code Block |
---|
|
OMD[mysite]:~$ source .profile |
set the LD_LIBARY_PATH the right way
extend the LD_LIBRARY_PATH like that ":path/to/oracle/instanclient"
Code Block |
---|
|
OMD[mysite]:~$ vi .profile
OMD[mysite]:~$ source .profile |
At the end, it should look like that:
Code Block |
---|
|
OMD[mysite]:~$ echo $LD_LIBRARY_PATH
/omd/sites/mysite/local/lib:/omd/sites/test/lib:path/to/oracle/instanclient
|
- Now after a restart of the site apache the error should be gone!
Related articles
Filter by label (Content by label) |
---|
showLabels | false |
---|
max | 5 |
---|
spaces | CON |
---|
showSpace | false |
---|
sort | modified |
---|
reverse | true |
---|
type | page |
---|
cql | label in ("apache","troubleshooting") and type = "page" and space = "CON" |
---|
labels | apache |
---|
|