linux开机流程、模块管理与Loader(续)
1.init处理系统初始化流程:
1)/etc/rc.d/rc.sysinit这个脚本用来设定系统环境,具体为:
取得网络环境与主机类型(读取/etc/sysconfig/network取得主机名与默认网关等网络环境)
测试与挂载内存装置/proc及USB装置/sys(除了挂载内存装置/proc外,还会主动侦测系统上是否具有usb的装置,若有则会注定加载usb的 驱动程序,并尝试挂载usb的文件系统)
决定是否启动SELinux
启动系统的随机数生成器
设定终端机字形
设定显示于开机过程中欢迎画面
接口设备的侦测与PnP(Plug and Play)参数的测试,根据核心在开机时侦测的结果(/proc/sys/kernel/modprobe)开始进行ide/scsi/网络/音效等接口设备的侦测,以及利用已加载的核心模块进行PnP装置的参数测试
用户自定义模块的加载,使用者可以在/etc/sysconfig/modules/*.moudles加入自定义的模块,则此时会被加载到系统当中
加载核心相关的设定,系统会主动去读取/etc/sysctl.conf这个档案的设定值,使核心功能成为我们想要的样子
设定主机与初始化电源管理模块(ACPI)
初始化软件磁盘阵列:主要是透过/etc/mdadm.conf来设定好的
初始化LVM的文件系统功能
以fsck检验磁盘文件系统:会进行filesystem check
进行磁盘配额quota的转换(非必要)
重新以可擦写模式挂载系统磁盘
启动quota功能:所以我们不需要自动定义quotaon的动作
启动系统虚拟随机生成器
清除开机过程当中的临时文件
将开机相关信息加载/var/log/dmesg档案中
2.启动系统服务与相关配置文件
加载核心让整个系统准备接受指令来工作,再经过/etc/rc.d/rc.sysinit的系统模块与相关硬件信息的初始化后,你的CentOS系统应该已经顺利工作了。只是,我们还的要启动系统所需的各项服务,这样主机才能提供我们相关的网络或者是主机功能。
3./etc/inittab中的实例:“l5:5:wait:/etc/rc.d/rc 5”解读:
1)透过外部第一号参数来取得想要执行的脚本目录。即由/etcrc.d/rc 5可以取得/etc/rc5.d/这个目录来准备处理相关的脚本程序
2)找到/etc/rc5.d/K??*开头的档案,并进行/etc/rc5.d/K??* stop
3)找到/etc/rc5.d/S??*开头的档案,并进行/etc/rc5.d/S??* start
/etc/rc5.d/S??*底下实际是一些链接档,链到/etc/init.d/目录下对应的服务程序
4.在完成预设runlevel指定的各项服务启动后,就会执行/etc/rc.d/rc.local这个档案用于用户设定自己想要的开机后执行的程序或服务。
5.在完成了系统所有服务的启动后,接下来Linux就会启动终端机或者Xwindow来等待使用者登入。另外在/etc/inittab中“x:5:respawn:/etc/X11/prefdm -nodaemon”这句的意思是当后面的指令被终止(terminal)时,init会主动的重新启动该项目,这就是为何我们登入tty1终端接口后,以exit离开后,系统还是会重新等待用户输入的原因。
转载于:https://blog.51cto.com/7613577/1603743
linux开机流程、模块管理与Loader(续)相关推荐
- 开机流程,模块管理与loader0.0
Linux开机流程 Linux执行的时候,虽然没有任何画面,但其实有很多的程序在背景底下执行的,例如登录文件程控程序,例行性工作安排,还有一大堆网络服务,邮件服务器,www服务器 如果不正常关机将会导 ...
- 【Linux鸟哥笔记】20-启动流程、模块管理与Loader
[Linux鸟哥笔记]20-启动流程.模块管理与Loader 目录浏览 章节学习 BIOS加载 内核功能 init进程 内核与内核模块 Boot Loader: Grub initrd 文件 启动过程 ...
- 鸟哥的Linux私房菜(基础篇)- 第二十章、启动流程、模块管理与 Loader
第二十章.启动流程.模块管理与 Loader 最近升级日期:2009/09/14 系统启动其实是一项非常复杂的程序,因为核心得要侦测硬件并加载适当的驱动程序后,接下来则必须要呼叫程序来准备好系统运行的 ...
- Linux开机流程Systemdgrub
Linux开机流程&Systemd&grub fromNet,感谢网络 带来有趣/专业 总结: 1.Boot : 'pull oneself up by one's bootstra ...
- Linux学习笔记43——开机流程、模块管理与 Loader
一.Linux 的开机流程分析 1 开机流程一览 2 BIOS, boot loader 与 kernel 载入 Boot Loader 的功能 3 第一支程序 systemd 及使用 default ...
- 第十九章 启动流程,模块管理,Loader
启动流程 多重引导.忘记root密码,如何直接直接进行纯命令行等问题都需要了解liunx启动流程 启动流程一览 加载BIOS->读取第一个MBR启动引导程序->根据引导程序加载内核-> ...
- linux c 读写mbr_一文看懂Linux开机流程BIOS-MBR-GRUB-Kernel-Init-Runlevel
概述 Linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布.在加上用户空间的应用程序之后,成为Linux操作系统.Linux是自由软件和 ...
- Linux学习(CentOS-7)---Linux开机流程
Linux开机流程图: 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信 ...
- Note For Linux By Jes(14)-启动流程、模块管理与 Loader
Linux的启动流程分析: 启动流程一览 加载BIOS 的硬件资讯与进行自我测试,并依据配置取得第一个可启动的装置: 读取并运行第一个启动装置内MBR 的boot Loader (亦即是grub, s ...
最新文章
- NC45实现二叉树先序、中序和后序遍历
- Java8 HashMap实现原理探究
- Linux学习之Vi编辑器常用命令
- Java 使用List集合实现图书增删改查
- SuperMap 房产政务协同管理平台
- Tomcat启动报404(eclipse)
- 机器学习面试题(part3)
- 解决Entry fileTemplates//Singleton.java.ft not found in C:/Dev/android-studio/lib/resources_en.jar
- Python风格总结:判断元素是否在列表中存在
- 大数据之-Hadoop之HDFS_Fsimage和Edits文件的解析---大数据之hadoop工作笔记0071
- 【ASP.NET Core】处理异常(下篇)
- c++局部对象是什么_什么是Java内部类?
- VS2017使用C#编写程序员告白小软件
- 用 Python 爬取网易严选妹子内衣信息,探究妹纸们的偏好
- 应运而生的教学工具——《爱上micro:bit》读书笔记
- 思科Cisco 2960系列交换机配置命令
- java swing小程序:手动绘制美国队长盾牌
- win10自动安装软件
- 漫画:什么是IaaS、PaaS、SaaS?
- python生成word目录_Python 文件与目录操作方法总结
热门文章
- (0061)iOS开发之iPad开发:UISplitViewController分割视图控制器
- Effective java 系列之更优雅的关闭资源-try-with-resources
- 【Cucumber】【命令行】
- Alpha 冲刺 (3/10)
- stm32.cube介绍
- java019异常、File类
- C#程序输出信息到调试窗口的几种方式
- B-tree/B+tree/B*tree
- 反向域名解析的用途,如何设置?
- error: xxxx.o: Relocations in generic ELF (EM: 3)解决办法