linux 系统启动
系统启动流程
BIOS
我们称之为基本输入输出系统,一般保存在主板上的BIOS芯片中,负责检查硬件并且查找可启动设备;可设置启动顺序;
如果一个设备是可启动,那么第一个扇区512字节的最后两字节是55aa;
MBR
BIOS找到可启动设备后执行其引导代码
引导代码为第一扇区的前446字节;功能:加载一个更复杂的引导程序
GRUB
真正的引导程序
GRUB是现在linux使用的主流引导程序
可以用来引导几乎所有操作系统
GRUB的相关文件保存在/boot/grub目录中
GRUB的配置文件/boot/grub/grub.conf
进入grub目录,可以看到stage1,stage2和以stage1_5结尾的文件,表示的含义是:
stage1即为MBR,它的大小也刚好是512字节
stage1_5为添加对某种文件系统的支持
stage2真正的引导程序
加载顺序:stage1-->stage1_5-->stage2
grub配置文件
default 采用第一组引导配置(如上图红色框是一个标准的系统配置,如果有多个系统,则配置多个)
timeout 引导等待时间
splashimage 引导程序背景界面
hiddenmenu 隐藏菜单栏
title 名称
root(h0,0) 操作系统存在于第一块硬盘第一个分区
kernel 内核配置
initrd 加载驱动模块
. MBR的引导代码将负责找到并加载linux内核
linux内核:
一般还会加载内核模块打包文件:
linux系统启动会动态加载驱动模块,这样精简了系统内核,使启动更快速,更高效
命令dmesg查看本次启动内核输出信息,或者/var/log/dmesg文件查看
init
Linux系统中第一个进程,是所有进程的父进程
调用/etc/rc.d/rc.sysinit负责对系统进行初始化,挂载文件系统,并且根据运行级别启动相应服务
linux运行级别
可以通过/etc/inittab配置默认运行级别:
每个级别对应的启动服务保存在/etc/rc.d/rc[0123456].d中;
命令runlevel可显示上一个运行级别及当前运行级别;
命令init可用以改变当前运行级别。
linux 系统启动的更多相关文章
- Linux学习之CentOS(二十一)--Linux系统启动详解
在这篇随笔里面将对Linux系统的启动进行一个详细的解释!我的实验机器是CentOS6.4,当然对于现有的Linux发行版本,其系统的启动基本上都是一样的! 首先我们来看下Linux系统启动的几个 ...
- linux基础-附件1 linux系统启动流程
附件1 linux系统启动流程 最初始阶段当我们打开计算机电源,计算机会自动从主板的BIOS(Basic Input/Output System)读取其中所存储的程序.这一程序通常知道一些直接连接在主 ...
- Linux系统启动过程分析
[原创]Linux系统启动过程分析-wjlkoorey258-ChinaUnix博客http://blog.chinaunix.net/uid-23069658-id-3142047.html 经过对 ...
- Linux系统启动流程及安装命令行版本
Debian安装 之前也安装过很多次linux不同版本的系统,但安装后都是直接带有桌面开发环境的版本,直接可以使用,正好最近项目不是很忙,想一直了解下Linux的整个启动流程,以及如何从命令行模式系统 ...
- 【转】Linux系统启动过程分析
[转]Linux系统启动过程分析 转自:http://blog.chinaunix.net/uid-23069658-id-3142047.html 经过对Linux系统有了一定了解和熟悉后,想对其更 ...
- 【转载】Linux系统启动流程
原文:Linux系统启动流程 POST(Power On Self Test/上电自检)-->BootLoader(MBR)-->Kernel(硬件探测.加载驱动.挂载根文件系统./sbi ...
- linux 系统启动流程
原著资料网址:http://wenku.baidu.com/view/414127fdf705cc1755270997.html (版权归原作者所有) Linux系统的启动分5个阶段,每个阶段都完成不 ...
- Linux系统启动流程及grub重建(1)
日志系统 Linux系统启动流程 PC: OS(Linux) POST-->BIOS(Boot Sequence)-->MBR(bootloader,446)-->Kernel--& ...
- Linux系统启动过程介绍
Linux系统启动过程介绍 学习操作系统有必要了解一下系统的启动过程,这样在面对各种系统故障的时候能快速定位解决问题,下面以Centos来分析linux系统的启动过程. 1.BIOS自检:当开机的时候 ...
- linux系统启动过程的列表
linux系统启动过程的列表 载入BIOS的硬件信息并进行自检.然后根据设置取得第一个可启动的设备: 读取并运行第一个启动设备内MBR(master boot record,主引导分区)的boot l ...
随机推荐
- new及placememt new 异同点
new与定位new 区别如下: 简单概括: new 分配的内存地址空间来自于heap堆,用完需使用delete 释放内存 定位new 使用的不是heap堆内存,因此不需要使用delete 释放 定位n ...
- sql之分区域分段统计
sql之分区域分段统计 需求:在一个表中,有两列分别标记行政区划代码和家庭成员人数,需要得到不同乡镇的家庭成员人数在1-2人,3-4人,5-6人,6人以上的家庭数的表格 思路: 用case when对 ...
- leetcode697
public class Solution { public int FindShortestSubArray(int[] nums) { //先找到最大频度的数字都有哪些,加入到一个集合中 var ...
- IOSerialize(序列化)
在讲序列化和反序列化之前,先来阐述文件夹/文件 检查.新增.复制.移动.删除, Directory和DirectotyInfo这两个特性主要是对文件夹进行操作 首先检测文件夹是否存在 if (!Dir ...
- MySQL中函数CONCAT及GROUP_CONCAT函数的使用
一.CONCAT()函数 CONCAT()函数用于将多个字符串连接成一个字符串. 以数据表[user]作为实例: SELECT USER_NAME, SEX FROM USER WHERE USER ...
- Python迭代dict的value
我们已经了解了dict对象本身就是可迭代对象,用 for 循环直接迭代 dict,可以每次拿到dict的一个key. 如果我们希望迭代 dict 对象的value,应该怎么做? dict 对象有一个 ...
- MYSQL的随机查询的实现方法
的确是那么回事. MYSQL的随机抽取实现方法.举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() ...
- GetHashCode作用
除了以下的转载,再补充几点: 1.相同对象的hashcode一定相同,不同的hashcode不一定不相同. 2.好的散列算法可以更均匀的分布,进而可以更快的索引 3.据说,值对象的hashcode由第 ...
- CG中的类型
[Matrix] 通常像下面这样定义Matrix: int1x1 iMatrix; // integer matrix with 1 row, 1 column int4x1 iMatrix; // ...
- 99. Recover Binary Search Tree (Tree; DFS)
Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing ...