深入理解linux下rc.d/目录文件以及程序开机自启动
深入理解linux下rc.d/目录文件以及程序开机自启动
由于我日常开发使用的是fedora9,所以,就已fedora9为例。
其中,x.d为目录,其他的均为脚本可执行文件。
在讲述这几个目录以及文件的作用及关系之前,我们需要了解linux(RedHat系列)的启动顺序。
系统上电之后,会进行硬件自检,然后初始化启动bootloader,加载内核,内核被加载到内存中之后,就开始运行启动。一旦内核启动,就可以初始化硬件设备,加载根文件系统。内核转载根文件系统,初始化设备驱动以及相关数据结构之后,就会启动一个init用户级程序,完成引导进程。那么,这个init进程就回去读取/etc/inittab文件中的系统运行级别。
系统运行级别有0~6共7个运行级别:
#0 ——停机(不能使用)
#1——单用户模式
#2——多用户模式,但是没有NFS
#3——完全多用户模式
#4——没有使用
#5——图形界面模式
#6——重启模式(不能使用)
id:5:initdefault(运行模式设置)。
那么,init进程就会读取这个系统运行级别设置,然后运行/etc/rc.d/rc脚本。
通过这个脚本,然后进入rcx.d。启动相应的程序。其中rcx.d为/etc/rc.d/rcx.d(x为对应的系统运行级别)
/etc/rc.d/rcx.d/下的文件均为符号链接,最终绝大部分都是都是链接到/etc/rc.d/init.d下面。
到这里,我们可以知道,/etc/rc.d/init.d目录下面的都是开启启动脚本文件,用来启动相应的程序。
版权申明:
转载文章请注明原文出处http://blog.csdn.net/feiyinzilgd/archive/2010/07/20/5750168.aspx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述