我创建了一个 Upstart 作业/etc/init
,它是一份简单的作业,如下所示:
start on desktop-unlock
exec <my script>
我的脚本位于/usr/bin
且可执行。
但 Upstart 似乎只识别以 开头的事件。:sys:
我使用 upstart-monitor 和我做的另一项工作得出结论。
这是 upstart-monitor 的一个屏幕截图:
我不知道我错过了什么。
答案1
Upstart 有两种类型的作业,会话和系统。系统作业仅对系统事件做出反应,但会话作业可以对会话事件或系统事件做出反应(使用 :sys: 前缀时)。
desktop-lock
并且desktop-unlock
会议事件。您需要将您的 upstart 作业放入其中~/.config/upstart/
才能使其正常工作。请注意,它将以您的用户身份运行,而不是以 root 身份运行。