青蛙学Linux—系统初始化init及运行级

Posted 青蛙学Linux

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了青蛙学Linux—系统初始化init及运行级相关的知识,希望对你有一定的参考价值。

1、什么是init和运行级

1.1、init

Linux系统的启动首先从Bios开始,接下来Linux的引导程序将内核映像加载到内存,进行内核初始化。在内核初始化的最后一步,就是启动PID为1的init进程,这个进程是系统的第一个进程,负责启动那些开机时需要启动的服务。

大多数的Linux发行版的init系统都是和System V兼容的,所以也被称为sysinit,这是最早也是最流行的init系统。sysinit概念简单清晰,主要依赖于shell脚本。它一次一个串行启动进程,导致了它的致命缺点,启动太慢。当Linux被应用到移动设备上时,这个缺点就成了大问题。

当前已经在使用upstart和systemd来替代sysinit。ubuntu采用upstart;从CentOS 7开始,已经使用systemd代替了sysinit。所以这里所说的init机制及运行级的概念只适用于CentOS 6以及之前的版本。

1.2、运行级

init可以根据使用者定义的执行等级(runlevel)来唤醒不同的服务,进入不同的操作模式,这些执行等级就称为运行级。Linux提供了以下7种运行级:

  • init0:关机模式
  • init1:单用户援救模式
  • init2:字符界面多用户模式,无网络支持
  • init3:字符界面多用户模式,运行一个完整的系统
  • init4:保留未使用
  • init5:图形界面模式
  • init6:重启模式

以上是关于青蛙学Linux—系统初始化init及运行级的主要内容,如果未能解决你的问题,请参考以下文章

青蛙学Linux—进程管理

青蛙学Linux—用户组权限和文件属性

青蛙学Linux—CentOS 6.10的安装

青蛙学Linux—Zabbix Web使用之模板③触发器

青蛙学Linux—Zabbix Web使用之Zabbix发现功能③低级别发现

青蛙学Linux—MySQL主从复制