On 15/03/2016, at 21:44, Fajar A. Nugraha <list@fajar.net> wrote:
On Tue, Mar 15, 2016 at 2:27 PM, Ibrahim Almahfooz <ibrahim.nezar@gorannet.net> wrote:
Hi everyone,
We currently using freeradius version 3.0.11 and it is compiled to work with oracle db and everything is fine and smooth when running the service using radiusd -X or radiusd.
Once we start the service using systemctl start radiusd.service or systemctl restart radiusd.service then we receive the below error:
"Job for radiusd.service failed because the control process exited with error code. See "systemctl status radiusd.service" and "journalctl -xe" for details."
What does "systemctl status radiusd.service" and "journalctl -xe" say? It should tell you what it thinks is wrong.
One possibility is that oracle depends on $ORACLE_HOME env variable, which is present when you log in as root/normal user, but not available when started by systemd. If that's the case, use Environment or EnvironmentFile inside the systemd unit. Look at your existing systemd unit files (e.g. ssh.service) for example.
Another thing to check is your selinux config. Services started under systemd can get more/less permissions than you expect. Watch /var/log/audit/audit.log when you start it. You might also try disabling selinux (setenforce 0) temporarily to test. You should write a policy that does what you want if you prove that selinux is the problem though, rather than disabling it. It’s not too difficult. -- Nathan Ward