bootstrap 引导程序;鞋带 -> 简称 boot 启动

pull oneself up by one’s bootstraps.(体现计算机系统启动的难处)

Linux系统启动分为两大部分:

一. 第一部分:机器启动(BIOS到 加载内核 ,其实跟Linux关系不大。)

1.BIOS:Basic Input Output System 三步走
(1)通电/硬件自检
(2)读取CMOS中的设置进行初始化
(3)根据CMOS设置寻找引导程序,并加载到内存
现在比较新的笔记本电脑用的是BIOS改进版EFI/UEFI

2.MBR: Master Boot Record 主引导记录 (与之等价的有GPT)
MBR是硬盘上最前面的512个字节,其最后两个字节是55AA,表示是可以启动的。前446个字节代码区存放指针,用于指向真正的引导程序,在Linux中是GRUB。

3.GRUB
重要配置文件 grub.conf 修改此文件可以改变以下界面

4.加载内核:将/boot目录下的相关内核文件加载到内存中

二. 第二部分

  1. init进程(第一个进程,PID=1,是之后所有进程的父进程)
    1.1守护进程:
    即Windows里面的服务,一开机就会运行,不用用户自己启动。
    守护进程(Daemon)一般以d结尾,如atd,crond,httpd。
    如登陆界面,图形化界面(不是Linux必须)

1.2启动守护进程的两种机制:
1.2.1 init机制
将守护进程分成三种类型:自己类,独立启动(小),超级守护进程(大,要启动可能要先启动子进程)。针对这三种进程提供三种命令:init、chkconfig、service。

运行级别:不同级别下启动的程序数目不同。
例如级别2:不带网络模式的多用户——就不去启动网卡驱动之类的程序

要启动一个程序,就会有一个脚本。
如果发现tomcat没启动,如何手动启动?
sudo /etc/init.d/apache2 start
或者
service apache2 start(apache是一个service)

明白这些遇到问题时就很有用。
用户登录的三种方式:
在命令行——运行级别1:单用户模式
在shell——运行级别3:普通多用户
在图形化界面——运行级别

用户登录一定是在init启动之后,那么在用户登录出现之前可以修改密码。

1.2.2 systemd机制

init机制的缺点

  1. 串行,启动时间长
  2. 启动脚本复杂

systemd取代init成为第一个进程,CentOS 7+和其他较新的发行版均采用该机制,其主要特点是:
(1) 一个守护进程被视作一个unit(服务单元),unit按功能被分为多种类型(如service,socket-即要使用网络),多个unit组合成一个target(服务组)-联系前面的运行级别。
(2) 使用systemctl主命令统一管理守护进程。
(3) 向下兼容init.d管理机制。

systemd结构过于复杂,违反了kiss规约。

文章最后列出它的一些用法:

Linux 引导和系统启动相关推荐

  1. linux从接通电源到操作系统启动,第4章-Linux引导过程及原理要点.ppt

    <第4章-Linux引导过程及原理要点.ppt>由会员分享,可在线阅读,更多相关<第4章-Linux引导过程及原理要点.ppt(98页珍藏版)>请在人人文库网上搜索. 1.Li ...

  2. Linux 引导过程内幕

    linux 启动过程 分析 linux 引导过程内幕 从主引导记录到第一个用户空间应用程序的指导 级别: 初级 m. tim j (mtj@mtjones.com), 顾问工程师, emulex 20 ...

  3. 10 Linux引导过程和服务控制

    Linux引导过程和服务控制 一 引导过程 开机自检→MBR引导→GRUB菜单→加载内核→运行INIT进程 →读取配置文件 1 开机自检 根据主板bios中的设置对CPU.内存.显卡.等硬件设备进行初 ...

  4. linux 从grub 进入rescue,在grub的rescue模式修复linux引导

    今天在windows 10系统收到系统更新通知,没看清楚就手贱点了马上更新.以为只是像那些普通更新一样重启一下更新就完了,万万没想到这个是覆盖更新,也就是说这是一个全新的系统更新而不是系统补丁.在安装 ...

  5. Linux 引导过程精讲

    Linux 引导过程内幕 从主引导记录到第一个用户空间应用程序的指导 引导 Linux 系统的过程包括很多阶段.不管您是引导一个标准的 x86 桌面系统,还是引导一台嵌入式的 PowerPC 机器,很 ...

  6. Win7Linux双系统下,修复Linux引导。

    今天坑爹了,在家里环境用的是wifi,然后今天linux mint开机,wifi搜索不到热点,其他手机都能搜索到,但是linux下的无线功能打开了,可是就是搜索不到,个人判断应该是无线网卡驱动有问题了 ...

  7. redhat双系统Linux引导,用wingrub引导windows与redhat linux双系统

    用wingrub可以在windows下安装和配置grub,以达到引导双系统启动的目的.今天我就"研究"了一下wingrub的使用方法. 安装过程就不用多说了.打开WINGRB.ex ...

  8. Linux引导启动详细过程

    目 录 1 Linux引导过程 2 BIOS功能描述 3 BootLoader流程分析 4 vmlinuz文件分析 5 initrd (initramfs)文件分析 6 Linux systemd启动 ...

  9. 一天一看————Linux引导过程与服务控制

    Linux引导过程与服务控制 Linux操作系统引导过程 系统初始化进程 Systemd单元类型 Systemd运行级别 修复MBR扇区故障 排除启动类故障 修复GRUB引导故障 修复GRUB引导故障 ...

最新文章

  1. Linux下配置SNMP
  2. Array.splice()--删除数组中重复的数据
  3. pku1548 Robots
  4. 详解 Linux 中 apt 命令的使用
  5. libgmailer更新了,俺的下载空间又可以使用了(使用G-Share)
  6. python 线程(创建2种方式,锁,死锁,递归锁,GIL锁,守护进程)
  7. mysql中find_in_set()函数的使用(转载)
  8. 如何选择VC界面库产品?(四)— DSkinLite vs DirectUI
  9. 十本数据结构与算法书籍推荐
  10. win7 php7.1,win7下php7.1运行getenv('REMOTE_ADDR')fastcgi停止运行-Go语言中文社区
  11. java实现人民币金额大写
  12. Ubuntu无法联网解决方案
  13. 接口,implement,多继承
  14. 关于程序设计大赛环境部署的WBS图
  15. Dim Temp%的意思
  16. Java生成二维码带LOGO底部标题竖版字体
  17. 物联网平台在AIoT领域8大场景应用
  18. ROS学习第二讲(1)
  19. 零基础入门C语言,只需2小时轻松学会!
  20. 餐饮巨头被攻击的“致命”48小时

热门文章

  1. iOS NSObject对象内存大小
  2. UIBezierPath和CAShapeLayer创建不规则View(Swift 3.0)
  3. Windows环境下启动Mysql服务提示“1067 进程意外终止”的解决方案
  4. nginx 启动脚本
  5. Apache Hive 快速入门 (CentOS 7.3 + Hadoop-2.8 + Hive-2.1.1)
  6. 那些进入 Alexa 排名前 250 的 WordPress 网站
  7. scala akka 修炼之路5(scala特质应用场景分析)
  8. 前端面试官,我为什么讨厌你。
  9. .NET Winform也能画出类似QQ、飞信这样的窗口风格和控件效果
  10. 在.Net Micro Framework中显示汉字