Linux学习笔记(一)--系统启动过程
2018-03-30 11:10
260 查看
大致分为5个阶段
内核的引导
运行init
系统初始化
建立终端
用户登录系统
操作系统接管硬件后,首先读入/boot目录下的内核文件。
init程序首先需要读取配置文件 /etc/inittab
init进程的一大任务,就是去运行这些开机启动的程序。
但是不同的场合需要启动不同的程序,比如用作服务器时,就需要启动Apache,用作桌面就不要
Linux允许为不同的场合,分配不同的开机启动程序,这就叫做“运行级别”,启动时根据运行级别确定要运行哪些程序
![](https://img-blog.csdn.net/20180330104743205?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTI2MTE2NDQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
Linux系统7个运行级别:
运行级别0 系统停机状态,系统默认运行级别不能为0,否则不能正常启动
运行级别1 单用户工作状态,root权限,用于系统维护,禁止远程登录
运行级别2 多用户状态(没有NFS)
运行级别3 完全的多用户状态,登录后进入控制台命令行模式
运行级别4 系统未使用,保留
运行级别5 X11控制台,登录后进入图形GUI模式
运行级别6 系统正常关闭并重启,默认运行级别不能设为6.否则不能正常启动
它主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务。
init 接下来会打开6个终端,以便用户登录系统。在inittab中的一下6行就是定义了6个终端。
![](https://img-blog.csdn.net/20180331113544147?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTI2MTE2NDQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
内核的引导
运行init
系统初始化
建立终端
用户登录系统
内核引导
当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件后,首先读入/boot目录下的内核文件。
运行Init
init进程是系统所有进程的起点,你可以把他比你成系统所有进程的老祖宗,没有这个进程,系统中任何进程都不会启动。init程序首先需要读取配置文件 /etc/inittab
运行级别
许多程序需要开机启动。他们在windows叫做“service”,在linux中叫做“守护进程”init进程的一大任务,就是去运行这些开机启动的程序。
但是不同的场合需要启动不同的程序,比如用作服务器时,就需要启动Apache,用作桌面就不要
Linux允许为不同的场合,分配不同的开机启动程序,这就叫做“运行级别”,启动时根据运行级别确定要运行哪些程序
Linux系统7个运行级别:
运行级别0 系统停机状态,系统默认运行级别不能为0,否则不能正常启动
运行级别1 单用户工作状态,root权限,用于系统维护,禁止远程登录
运行级别2 多用户状态(没有NFS)
运行级别3 完全的多用户状态,登录后进入控制台命令行模式
运行级别4 系统未使用,保留
运行级别5 X11控制台,登录后进入图形GUI模式
运行级别6 系统正常关闭并重启,默认运行级别不能设为6.否则不能正常启动
系统初始化
在init配置文件中有一行:si:sysinit:/etc/rc.d/rc.sysinit 他调用执行了/etc/rc.d/rc.sysinit,而rc.sysinit是一个bash shell的脚本,它主要完成一些系统初始化的工作,rc.sysinit是每一个运行级别都要首先运行的重要脚本它主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务。
建立终端
rc执行完毕后,返回init。这时候系统环境已经设置好了,各种守护进程也已经启动了。init 接下来会打开6个终端,以便用户登录系统。在inittab中的一下6行就是定义了6个终端。
用户登录系统
一般来说,用户的登录方式有三种:①命令行登录 ②ssh登录 ③图形界面登录相关文章推荐
- linux学习笔记(六):系统启动过程、关机过程
- Android系统启动过程概述
- Linux系统启动过程及grub引导故障排错(二)
- Android开发——Android系统启动以及App启动过程
- 剖析Linux系统启动过程
- Android系统启动过程
- 分析Android 根文件系统启动过程(init守护进程分析)
- Android系统Surface机制的SurfaceFlinger服务的启动过程分析
- MAC 系统的启动过程和系统启动时运…
- 分析Android 根文件系统启动过程
- 描述linux系统的启动过程
- 分析Android 根文件系统启动过程(init守护进程分析
- Android系统进程Zygote启动过程的源代码分析
- 详解linux系统的启动过程及系统初始化 推荐
- qtopia 文件系统启动过程分析
- Android系统在新进程中启动自定义服务过程(startService)的原理分析
- 分析Android 根文件系统启动过程(init守护进程分析)
- linux系统引导启动过程分析
- 嵌入式Linux系统启动过程
- uCOS ARM系统的启动过程及系统构架分析