systemd用户单元解决了错误的$ HOME

时间:2019-02-17 12:20:44

标签: service systemd

我已经使用Fedora 29迁移到新机器上,并且正在设置systemd单元,我打算将其作为用户单元运行。

显然,systemd --user解析环境变量的方式与实际用户看到的方式不同。

例如,单位的ExecStartPre运行一个脚本,该脚本创建一个配置目录

 > ExecStartPre=... -->
   ....
   mkdir -p $HOME/.config/
   ....

如果该单元的假定父用户名为“ myuser”,则根据journalctl,该单元将使用ExecStartPre脚本失败,因为它无法访问/创建我的(亲属)(家庭)名称下的路径,例如

 mkdir -p /home/IFAMILY/.config/

当我以用户的身份手动运行部门的前任和主要执行人员时,一切正常。

我在用户和系统上下文中重新加载了所有守护程序,并重新引导了几次。 / etc或/ usr上的grep -r没有任何提示。

所以,我想知道'systemd --user'是从哪里获得环境的,为什么它会解决错误的(?)$ {HOME}。

0 个答案:

没有答案