![有什么方法可以以普通用户身份运行服务](https://linux22.com/image/754253/%E6%9C%89%E4%BB%80%E4%B9%88%E6%96%B9%E6%B3%95%E5%8F%AF%E4%BB%A5%E4%BB%A5%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E8%BA%AB%E4%BB%BD%E8%BF%90%E8%A1%8C%E6%9C%8D%E5%8A%A1.png)
我们有一些服务需要提升权限。默认情况下,它们将以 root 模式运行。但客户要求使用普通用户而不是 root 用户。
因此,我在 centos 上将其添加到 wheel 组,并尝试运行后台可执行文件来检查权限,但仍然显示为“必须以 root 权限运行”。
意思是它并没有真正获得权利。
因此,请建议我如何将服务更改为具有 root 权限的用户而不是直接的 root 用户。
答案1
升级到 EL8,它具有足够新的 systemd 和 PolicyKit 版本。
在 .service 单元(或扩展它的 .service.d 目录)中提供所需的用户
User=root
Group=root
定义 polkit 配置以允许所需的用户管理单元。就像他们自己一样。