Linux系统启动流程

init程序类型:

①、SysV:init,centos 5之前,配置文件/etc/init.d/

②、Upstart: init,centos 6,配置文件/etc/init.d/ /etc/init/

③、Systemd:Systemd,centos 7,配置文件/usr/lib/systemd/system、/etc/systemd/system

以上都是向上兼容的。

一、传统的系统启动流程

首先进入/etc/目录下,可以看到有两个init相关的目录,分别是init(给Upstart的配置文件)和init.d(SysVinit),如下:

再看rc相关的目录,可以发现有11个相关的目录,如下:

可以看到init.d rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rc.local rc.sysinit都是一个软连接指向rc.d目录,/etc/init.d里的shell脚本(SysVinit工具所包含的函数库)能够响应start,stop,restart,reload命令来管理某个具体的应用,这些脚本也可以被其他trigger直接激活执行,这些trigger被软连接在/etc/rcN.d/中。

疑问:为什么要创建init.d rc0.d等软连接?

因为Ubuntu没有/etc/rc.d这个目录,为了保持同一种服务在Centos和Ubuntu使用的统一性,将服务脚本都放在/etc/目录下。

需要说明的是:在CentOS和Ubuntu两个版本中,除了服务脚本放置的目录是相同的,服务脚本的编写及服务配置都是不同的。比如CentOS使用Chkconfig进行配置,而Ubuntu使用sysv-rc-conf进行配置。

参考连接:Linux之init.d、rc.d文件夹说明-腾讯云开发者社区-腾讯云 (tencent.com)

相关推荐
GeW4 小时前
超详细!RHCE10版通用备考策略,内含评分细则解读
linux
用户041328465135 小时前
Linux 服务开机自启动怎么配置?systemctl enable 原理详解
linux
草莓熊Lotso14 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
张文君14 小时前
ubuntu26.04坏道坏块分区隔离急速版260831-V0.12
linux·python
贝锐1 天前
从国产化信创设备到商用安卓终端,向日葵如何帮助企业实现统一运维管理?
linux·运维·远程控制
Julien20041 天前
调查和解决 SELinux 问题
linux·运维·服务器·网络·学习方法
小张同学a.1 天前
Docker 容器实战 1—— docker 基础与镜像构建
linux·运维·docker·容器
Best-Wishes1 天前
BurpSuite Pro教育版在linux系统中配置
linux·运维·服务器·网络安全·burpsuite
wuminyu1 天前
深入剖析 Panama Off-heap 的性能损耗与开销
java·linux·c语言·jvm·c++
虎王物联1 天前
RK3568嵌入式Linux跑Docker:内核配置排查到AIoT容器化的完整路径
linux·运维·docker·rk3568·aiot·嵌入式linux