【发布时间】:2021-01-25 12:54:35
【问题描述】:
我有一个脚本可以处理屏幕亮度,运行良好,很酷,现在我想让它在从挂起唤醒后运行。
所以我尝试使用systemd,我在/etc/systemd/system/myscript.service下有一个文件如下:
[Unit]
Description=Run myscript after wakeup
After=suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/myscript
User=me
#Environment=DISPLAY=:0
[Install]
WantedBy=suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
注意:设置User是因为myscript需要HOME变量。
在我运行sudo systemctl enable myscript 并尝试挂起/唤醒后,myscript 没有运行,journalctl -u myscript.service 输出以下消息:
1 月 25 日 13:42:53 mymachine myscript[24489]:无法打开显示
1 月 25 日 13:42:53 mymachine systemd[1]: myscript.service: Succeeded.
Jan 25 13:42:53 mymachine systemd[1]: Finished Run myscript after wakeup.
如果我取消注释 myscript.service 中的 #Environment=DISPLAY=:0 行,错误是“无法打开显示:0”
任何帮助都会很棒:^)
【问题讨论】:
标签: systemd