[systemd-devel] systemd - how to run system service by user target

Andrei Borzenkov arvidjaar at gmail.com
Sat Oct 22 06:17:24 UTC 2016

20.10.2016 15:00, Lennart Poettering пишет:
> On Thu, 20.10.16 05:23, Kamil Jońca (kjonca at o2.pl) wrote:
>> Lennart Poettering <lennart at poettering.net> writes:
>>> On Wed, 19.10.16 12:46, Kamil Jońca (kjonca at o2.pl) wrote:
>>>> Assume we have openvpn.service.
>>>> This service neccessary only when I want to connect to my work from
>>>> home.
>>>> Is it possible to make user target which will be automatically run this
>>>> service?
>>> Whenever a user logs in it will get a per-user slice unit
>>> started. When the user logs out, the slice unit is removed. You could
>> Unfortunately we cannot say about user login/logout - I have my laptop
>> and it is only hibernated or sleeping. 
>> I thought rather about:
>> --8<---------------cut here---------------start------------->8---
>> systemctl --user start work-at-home.target
>> --8<---------------cut here---------------end--------------->8---
>> which runs vpn, mounts network discs etc.
>> Is it possible?
> Well, this would require a privilege elevation. You can configure that
> by invoking "systemctl start --system" on the right system units, and
> then telling PK via its policy language that your user shall be
> allowed to do that. But I am not PK policy pro, you'd have to check
> the policy language to figure out how best to do this.

To figure out how to best to do this we need to know what information
systemd provides with polkit request (i.e. which details are available
to make decision upon). I could not find documentation that describes
it. Without details this is all or nothing.

More information about the systemd-devel mailing list