普通用户添加systemd的开机启动项

2019-04-17 17:28:28 浏览数 (1)

在centos系统中,systemd没有user mode,只有system mode,因此只有root才能执行systemctl enable。如果一个普通用户想把某个服务加入systemd的开机启动,往往需要需要给他sudo的权限。后来我发现可以通过添加target的方法,使得普通用户也能添加开机启动项。

比如需要让用户bar自行添加开机启动项,首先要为他添加一个target。

添加文件/etc/systemd/system/bar.target

代码语言:javascript复制
[Unit]
Description=user bar target

[Install]
WantedBy=multi-user.target

并且enable这个target。

然后创建文件夹/etc/systemd/system/bar.target.wants,并且将文件夹的owner给bar。

这样bar用户在/etc/systemd/system/bar.target.wants文件夹中添加的service,将在开机后自动启动。

bar用户创建的service文件

bar用户创建的service被bar target加载启动

0 人点赞