使用 upstart 时,我曾经通过/etc/init.d/
(sym-linked, from /etc/rc2.d/
) 中的 shell 脚本在启动时设置某些文件的权限:
link="/sys/class/backlight/intel_backlight"
chgrp backlight "$link/brightness"
chgrp backlight "$link/bl_power"
chmod 664 "$link/brightness"
chmod 664 "$link/bl_power"
但是自从 Ubuntu 15.04 有了 systemd 之后,我就不知道该如何做了。
使用 systemd,哪些文件可用于在启动时以 root 权限执行命令?
谢谢
感谢 JdeBP,我找到了一种方法来设置每次启动时生成的文件的权限。它使用临时文件,systemd 的一个组件:
backlight.conf
我在中创建了一个名为(the .conf
matters)的文件/etc/tmpfiles.d
,其中包含以下行:
# Type Path Mode UID GID Age Argument
f /sys/class/backlight/intel_backlight/brightness 0664 root backlight -
f /sys/class/backlight/intel_backlight/bl_power 0664 root backlight -
现在,这两个文件.../brightness
具有.../bl_power
正确的分组权和正确的写入权。
(这解决了我的问题,但没有回答我的问题)
答案1
也许可以通过将这些行添加到/etc/rc.local
和中来sudo chmod a+x /etc/rc.local
实现,这也是对 init 的推荐操作。
但我认为应该有更好的方法来控制背光,例如这里:无法更改背光亮度 Ubuntu 14.04