startup-scripts – 运行级别脚本的执行顺序

前端之家收集整理的这篇文章主要介绍了startup-scripts – 运行级别脚本的执行顺序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在/etc/rc0.d中的运行级别0脚本,应该在停止时执行,例如

> K05foo – > …
> K10bar – > …
> K80baz – > …
> S10somemore – > …
> S90halt – > …

是正确的,执行顺序如上所列,即

>首先按升序优先顺序杀死所有杀戮
>然后所有开始,按升序排列
>所有这些,与我们切换的运行级别无关(S,0-6)
>所有脚本总是被调用(即,没有额外的检查会阻止脚本被调用,例如,在之前的运行级别中是否实际上启动了脚本)

我很困惑,因为在我的嵌入式系统中,一些脚本似乎没有被执行,that page

S20 link is started before a S91 and and K91 is kill before K20.

这与我上面的文字相矛盾.

解决方法

为了完整起见,回答我自己的问题:

我在OpenEmbedded系统上使用busyBox. /etc/init.d/rc中的rc脚本具有以下行为:

>在目标运行级别中,所有Kill都在所有Starts之前执行
>所有脚本都按升序优先顺序执行
>但是:只有在前一个运行级别中没有等效的开始时才执行启动(即,它是新启动的)
>并且,如果目标运行级别为0(暂停)或6(重新启动),则启动实际上将执行为Kills – 即“stop”作为参数传递.但仍然在所有杀戮之后,如果在之前的运行级别中存在等效的开始,则仍然没有.

另外,我现在的关闭实际上切换到运行级别1而不是运行级别0.你必须使用halt或powerofffor runlevel 0.所以我的脚本在rc0.d里没有真正执行,只有那些碰巧也在rc1.d.

猜你在找的Linux相关文章