佐须之男的博客

技术需要沉淀,成长需要痛苦,成功需要坚持,敬仰需要奉献

跟着佐大学Lede/OpenWrt开发入门培训班讲义-23 OpenWrt 如何创建开机自启动服务

备注:

    此文是佐须之男"跟着佐大学OpenWrt开发"入门培训班教学视频演讲稿提纲,虽是内部资料但再三考虑后对外公布,通过公众的监督来鞭策自己。如对完整内容感兴趣,可以参加"跟着佐大学OpenWrt开发"入门培训班:http://forgotfun.org/2018/04/openwrt-training-2018.html

课程试听地址:

    https://pan.baidu.com/s/13nCmoaXTEfKc9F9-bdtHcA


    在课时14中已经大致讲了开机启动的过程,现在我们来创建一个开机启动的服务。OpenWrt开机启动服务实现和普通Linux发行版并无明显差异,基本上就是/etc/init.d和/etc/rc.d两个目录在起关键作用。/etc/init.d目录存放的是所有的开机启动脚本(包含启动和未启用的服务),/etc/rc.d存放的是启用的开机启动脚本。服务的启用和禁用可以通过service enable/disable命令来实现。

    虽然通过/etc/rc.local脚本也可以实现创建开机启动脚本,但并不推荐。首先开机启动的顺序不可控、管理混乱、其次违背了openwrt service的规则。通常作为service通常需要具备start、stop、restart、enable、disable几大操作,rc.local仅仅提供了start的操作。假如我们把/etc/rc.local打包到package的话会导致管理混乱,rc.local是全局性的开机启动脚本并不属于某个package。/etc/rc.local是最后被执行的,隶属于S95done。

    代码下载

    http://forgotfun.org/zb_users/upload/2018/08/lesson23-examples.zip



Powered By Z-BlogPHP 1.5 Zero

© 2016 佐须之男版权所有 | 联系方式 forgotfun@qq.com | 业务合作 181-1435-4589 (陆工)