Linux引导流程

固件

按下电源的第一个启动步骤:启动固件firmware → POST加电自检

检查硬件的加载情况,如,键盘,内存等。

跟操作系统无关。但不同的硬件平台,固件不同;

当你新添加了一块硬盘,第一步就是应该首先进入到固件模式,检测固件是否已经识别出这块硬盘!

固件最重要的作用,读取MBR -> ...

自举程序

读取MBR[master boot record,主引导记录]

【MBR位于位于磁盘的0柱面,0磁头,1扇区 如图:】

进入这一步骤的目的是读取MBR中的数据[MBR保存了三种数据]:

1、Boot Loader:自举程序,自启动程序,在Linux中为:GRUB

2、Partition table:磁盘分区表

3、Magic Number:结束标志字

/etc/grub.conf简要分析:

kernel /vmlinuz-2.6.32-358.el6.i686 ro root=UUID=6e428aef...用来指定内核的位置

2:主板本号

6:次版本号,如果此处为奇数为测试版,偶数为正式版

32:末版本号

由此可以看出:GRUB最重要的作用 -> 载入内核!

附-关于内核:

1.是一个可执行文件,是一个文件,并不是一堆文件

2.z-代表是一个压缩文件,因此在启动的时候,他会不停的解压缩这个文件

载入内核

内核在此期间只做两个工作:

1、驱动硬件

2、启动进程init:

init启动后读取配置文件inittab,执行缺省运行级别, 从而继续引导。

在UNIX/Linux系统中,init时第一个可以存在的进程,它的PID恒为1[通常,PID是随机分配的,但是init特殊,可以通过命令:ps -el | more 查看],Linux系统中init名义上可以说是所有进程的父进程,虽然init的PID恒为1,但它也必须向一个更高级的功能负责:PID为0的内核调度器(Kernel scheduler),从而获得CPU时间.

内核调度器负责:分配系统时间,进程间切换

init读取配置文件/etc/inittab

Linux的运行级别,如图:

0-halt:关机

1-单用户模式,没有图形界面

【修复模式,类似与Windows的安全模式】

2-多用户模式,但是也没有图形界面,2与3是Linux服务器运用最多的模式

3-与2类似,添加了NFS

4-没有使用的,但可以由用户自定义

5-缺省运行级别:x11说明是图形化的多用户环境

6-重启

运行级别切换:

1.查看当前运行级别 runlevel

N代表没有切换过运行级别

S代表切换之前的运行级别

数字代表当前的运行级别

2.切换运行级别

init [0123456Ss]

或 telinit [0123456Ss]

附-同步软硬件时钟:【两个时间应该是一致的】

hwclock 显示硬件时钟

hwclock --help :其中详细的说明了同步时钟的选项

改变时间:

-s | --hctosys      set the system time from the hardware clock

-w | --systohc      set the hardware clock to the current system time

--set          set the rtc to the time given with --date

E.g.

date MMDDhhmm

hwclock --set --date="9/23/14 16:31:05"

Linux引导流程(第二版)相关推荐

  1. Linux操作系统(第二版)(RHEL 8/CentOS 8)

    Linux操作系统(第二版)(RHEL 8/CentOS 8) 本科教材 主编:     张同光 ISBN号: 9787302538455 出版日期:   2020-1 出版社:     清华大学出版 ...

  2. Purism 发布 PureBoot:高度安全、完整的 Linux 引导流程

    开发四年只会写业务代码,分布式高并发都不会还做程序员? >>>   Purism 近日发布了 PureBoot,这是一个面向 Linux 计算机和任何希望增强 Linux 计算机安全 ...

  3. 【Linux导论】Linux引导流程(The Boot Process)

    原文 LFS101x.2 Introduction to Linux (Linux Foundation) Chapter 03: Linux Structure and Installation - ...

  4. GRUB与Linux系统修复(第二版)

    GRUB配置解析 配置文件保存在 /boot/grub/grub.conf[/boot分区最好应该单独划分出来] 软链接保存在 /etc/grub.conf 1.grub.conf文件分析 defau ...

  5. linux设备驱动程序第二版 序言

    序 作为一名电子工程师,而且是一个什么都想自己做的人,我一向愿意用计算机来控制外部设备.甚至还在我们父辈的Apple-2e时代,我就已经开始寻找别的平台,希望可以与我定制的环境相连,并且可以写我自己的 ...

  6. Linux文件系统构成(第二版)

    Linux文件系统构成 /boot目录: 内核文件.系统自举程序文件保存位置,存放了系统当前的内核[一般128M即可] 如:引导文件grub的配置文件等 /etc目录: 系统常用的配置文件,所以备份系 ...

  7. Linux备份策略(第二版)

    备份策略 备份思想 一.系统潜在的威胁 Ø 系统硬件故障 Ø 软件故障 Ø 电源故障 Ø 用户的误操作 Ø 人为破坏 Ø 缓存中的内容没有及时的写入磁盘 Ø 自然灾害 二.备份介质的选择 备份介质:硬 ...

  8. Linux进程管理(第二版) --计划任务

    计划任务 一.一次性计划任务 at命令 #功能:安排一个/几个命令在指定时间(时刻)运行一次 1.at的命令格式及参数 at [-f 文件名] 时间 at -d 或者 atrm 删除队列中的任务 [a ...

  9. Linux常用命令(第二版) --文件管理命令

    文件管理命令 并不建议:照着像命令大全这类的书来学! 常用命令大约有200个. 文件命名规则: a)除了'/'之外所有字符都合法! b)这些字符最好不用 1.空格符,制表符,退格符 2.连接符 3.特 ...

最新文章

  1. python语言格式化输出_Python format()格式化输出方法详解
  2. 文献记录(part92)--Graph regularized low-rank representation for submodule clustering
  3. 一个同事做的基于yaas平台的一个应用,可以用来学习SAP yaas
  4. python第一个公开发行版_python之基础篇(一)
  5. 数据库系统原理及mysql应用教程_数据库系统原理及MySQL应用教程
  6. 爬虫如何爬取微信公众号文章
  7. Firefox扩展插件开发extension代码调试方法
  8. 【VB底层开发经典入门】VB编写植物大战僵尸辅助开发视频教程
  9. java星星闪烁代码_css3实现星星闪烁效果
  10. 接上一篇Trao文本行数及省略号问题
  11. KITTI如何submit自己的模型效果
  12. 基于ssm框架的校园二手交易平台
  13. 游戏中的图像资源(位图与矢量图比较)
  14. 不同BMP位图与调色板分析
  15. IDG刘雨坤:关于SaaS业务七点经验
  16. SYSU-1,URAL 1894,闽科夫斯基和(黑科技)
  17. 我的世界中国版服务器账号封了,我的世界免费永久服务器
  18. 【计算机二级考试C语言】重点+题库!必考知识点总结,包你过!
  19. 蓝海卓越NSWMP管理协议简介
  20. 离职和入职这一点不容忽视之交接工作

热门文章

  1. 【C语言重点难点精讲】C语言指针
  2. Python以进程方式无黑窗在后台运行(无命令窗)
  3. #pragma pack(1) 的意义是什么
  4. Qt:Qt实现飞秋拦截助手—ARP攻击
  5. There is no getter for property named 'XXX' in class 'aaa.bbb.ccc'(终极骚操作的解决方法)...
  6. JS之scrollTop不起作用的问题(兼容性有问题)
  7. Bjarne Stroustrup语录[C++经验]
  8. Ubuntu 12.04安装Microsoft lifecam studio摄像头
  9. 反直觉的三门问题,为什么80%的人都错了?
  10. 搜索引擎的竞价排名是怎样实现的?