当前位置: 首页>>技术教程>>正文


Upstart 可以参加哪些活动?

,

问题描述

是否有可用于 Upstart 的可用事件列表?

例如 start on local-filesystems 所以 local-filesystems 是一个事件,但它什么时候触发,还有哪些其他事件?

最佳答案

Manpages

从 Ubuntu 11.04 开始,James Hunt 创建了一个很棒的手册页,名为 usptart-events,所以从终端运行:

man upstart-events

它也可以从 Ubuntu 在线联机帮助页 upstart-events 获得,但丢失了一些格式,因此对于相同信息的更好的在线资源来自 Upstart cookbook

工作和事件的可视化

还有一个出色的工具,initctl2dot,用于可视化暴发户事件。下面是使用该命令从 Ubuntu 12.04 生成图像的示例。

查看所有职位:

initctl2dot -o - | dot -Tpng -o upstart.png

仅查看 plymouth、lightdm 和 mountall 工作:

initctl2dot -r plymouth,lightdm,mountall -o - | dot -Tpng -o upstart2.png

Source

grep 初始化

您还可以 grep 在以下目录中发出:

grep -r emit /etc/init /etc/init.d /etc/network/if*.d

这会给你大部分,其他的由 dbus 桥发出。


有关更多信息和最佳实践,请参阅 The Upstart Cookbook

次佳答案

这些事件由 upstart 本身或 mountall 发出,它们都有自己的 man 页面:

\\n

mounting mounted virtual-filesystems\\n local-filesystems all-swaps filesystem\\n remote-filesystems started starting\\n stopping stopped startup runlevel(7)

\\n

任何应用程序都可以发出自己的事件,例如通过

initctl emit suspend

其中一些你可以看到作为输出

grep emit /etc/init/*

更多信息也请访问:

http://netsplit.com/2008/04/27/upstart-05-events/

http://upstart.at/

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12895.html,未经允许,请勿转载。