How to run service not as root

1

1

I created successfully a service on my Linux RedHat by copy the Unit-File to /usr/lib/systemd/system/mediation.service

I can successfully start/stop/enable/... the service with

systemctl enable mediation
systemctl start mediation
etc.

However, since systemctl is usually executed by root, my application runs also as root. How can I configure the service that it runs under a different (non-privileged) user?

Wernfried Domscheit

Posted 2016-07-07T19:16:26.607

Reputation: 507

What if you separately add the commands to the sudoers file of the non-root user you want to run as? – ivanempire – 2016-07-07T19:34:38.683

Answers

2

Use:

User=myuser

In your unit file.

This is documented in man systemd.exec

Also, custom files should not go in /usr/lib/systemd/system, they should go in /etc/systemd/system. The former is where packages install their files. The later is where system administrators should put their files.

Mark Stosberg

Posted 2016-07-07T19:16:26.607

Reputation: 497