Line 205: |
Line 205: |
| service nut start | | service nut start |
| Details: [[bugzilla:2738]] | | Details: [[bugzilla:2738]] |
| + | |
| + | ===Manualy install a service on SME 10 and newer=== |
| + | Starting SME 10 systemd is in used, but there are some backward compatibility for sysvinit and daemontools managed service. |
| + | Prefered way to install a non core service is by using a contrib, but if you need to run a service without any contrib available, then here are the steps. |
| + | First check if the rpm providing the service includes either a /etc/rc.d/init.d/'''servicename''' or a /usr/lib/systemd/system/'''servicename'''.service files. Replace '''servicename''' by the appropriate name. |
| + | |
| + | ====Global steps==== |
| + | Create a db entry in configuration db: |
| + | config set servicename service status enabled |
| + | |
| + | ====only systemd .service file available==== |
| + | Create a dropin file to have this service available under sme-server.target as this is our target, we do not use the regular multi-user.target. |
| + | mkdir -p /etc/lib/systemd/system/'''servicename'''.service.d/ |
| + | printf "[Install]\nWantedBy=sme-server.target\n" > /etc/lib/systemd/system/'''servicename'''.service.d/50koozali.conf |
| + | /etc/e-smith/events/actions/systemd-default |
| + | |
| + | NB: in a contrib, we would use the /usr/lib/systemd/system/'''servicename'''.service.d/50koozali.conf path as it would be provided by an rpm and not by end-user admin. |
| + | |
| + | ====both systemd .service and /etc/rc.d/init.d/'''servicename''' files available==== |
| + | You need to hide the file in init.d from SME Server internals to be able to enable the service form systemd on reboot |
| + | |
| + | mkdir -p /etc/e-smith/templates-custom/etc/systemd/system-preset/49-koozali.preset/ |
| + | printf "{ |
| + | \$customservice=''''servicename''''; |
| + | \$OUT=""; |
| + | \$OUT .= \"enable \$customservice.service\n\" if \${\$customservice}{'status'} eq \"enabled\"; |
| + | }" >> /etc/e-smith/templates-custom/etc/systemd/system-preset/49-koozali.preset/99'''servicename''' |
| + | expand-template /etc/systemd/system-preset/49-koozali.preset |
| + | /etc/e-smith/events/actions/systemd-default |
| + | |
| + | ====only /etc/rc.d/init.d/'''servicename''' file available==== |
| + | |
| + | cd /etc/rc.d/rc7.d |
| + | ln -s ../init.d/'''servicename''' S85'''servicename''' |
| | | |
| ==Packages== | | ==Packages== |