基本上是标题。有办法吗?或者是一种古怪的方式,无论如何。据我所知,没有“ConditionPermissions =”,“ConditionOwnership =”或类似的东西。
答案1
如果您想在启动 systemd 服务之前检查某些文件权限或所有权,您可以在 systemd 单元文件中运行一个脚本,如本例所示,我在其中检查文件是否具有不同于 644 的权限。
[Service]
ExecStartPre=/bin/bash -xc 'stat -c %a "myfile" != '644' && exit 1 || exit 0'
如果 ExecStartPre 返回错误,则启动过程的其余部分将中止。
通常这种方法被认为不安全,最好的方法是通过设置来确保权限是正确的,而不是通过某些条件进行检查。