xserver启动后运行脚本

xserver启动后运行脚本

我有一个脚本,希望在 xserver 启动后运行。此文件位于/home/karl/.scripts/startup/sensei-raw-startup.sh

xserver 启动后如何调用此文件?

答案1

最干净的解决方案可能是编写一个新兴工作。在 中创建一个文件/etc/init/myjob.conf。例如,该文件可能如下所示:

description     "My custom upstart job"

start on login-session-start

task

exec /path/to/script.sh

  • 定义description一个简短的解释
  • 语句描述了在哪个事件中执行作业。我认为这里start on不需要语句。stop on
  • 作业task是运行短时间运行的进程的程序,也就是说,虽然程序可能仍需要很长时间才能运行,但具有确定的生命周期和结束状态。
  • exec是这项工作的主要部分。注意脚本需要哪些环境变量才能成功。我假设,由于脚本必须在 X 服务器启动后运行,因此您需要适当的环境变量,例如$DISPLAY$XAUTHORITY,也许还有$DBUS_SESSION_BUS_ADDRESS
  • 如果您遇到麻烦,请查看/var/log/upstart/myjob.log您的所有工作输出到哪里了。

相关内容