Recently, while trying to start the Chronos service using systemctl
, I encountered the following error:
Upon checking the status:
Root Cause
The error status=203/EXEC
means that systemd failed to execute the service script. Common reasons include:
-
Missing shebang (
#!/bin/bash
) at the top of the script. -
Incorrect file permissions — in this case, the script had
chmod 777
, which is too permissive and not allowed by systemd.
Resolution Steps
Here’s what I did to resolve it:
-
Added the shebang to the script:
Placed at the very top of
/etc/rc.d/init.d/chronos
. -
Corrected the script permissions:
-
Verified that the script works manually:
-
Restarted the service:
This time, the service started successfully and showed active (exited)
, which is expected behavior for SYSV-style scripts.
Recommendation
While the issue is resolved, consider migrating to a native systemd
unit file for better process management, logging, and compatibility. Legacy init scripts work, but native units provide more control and clarity.