linux系统启动流程

BIOS:
- (Basic Input Output System)基本输入输出系统,一般保存在主板上的BIOS芯片中
- BIOS是计算机启动时运行的第一个程序,负责检查硬件并且查找可启动设备。
- 可启动设备在BIOS设置中进行定义,如USB、CDROM、HD.
MBR:
- 大小为512字节,
- BIOS找到可启动设备后执行其引导代码,引导代码为MBR的前446字节,因为他的容量很小,不可能完成对操作系统的所有引导工作,因此,它主要完成的是一个跳转的功能,具体的引导程序在GRUB中。
GRUB:
- 它是现在linux使用的主流引导程序,可以用来引导现在几乎所有的操作系统。
- grub的相关文件保存在/boot/grub目录中,配置文件为/boot/grub/grub.conf。
- /boot/grub/grub.conf==> stage1 512字节,是MBR的镜像文件,可用于备份 ==> xxx_stage1_5,加载对文件系统的支持,==> stage2 ==> 内核
配置文件中内容如下:
default=0——默认采用第一个配置
timeout=0——在开机的引导画面上等待的时间,该设置为0秒
splashimage=(hd0,0)/grub/splash.xpm.gz——引导界面的背景,使用的一个.xpm.gz格式的图片,可自己手动定制。
hiddenmenu——隐藏菜单栏
配置格式如下:
title Fedora (2.6.35.13-92.fc14.i686.PAE)——开机引导画面上显示的名称,可随意设置
root (hd0,0)——操作系统所在的分区,该配置为第一块硬盘的第一个分区
kernel /vmlinuz-2.6.35.13-92.fc14.i686.PAE(内核文件) ro (参数,只读)root=/dev/mapper/vg_embedclub-lv_root (告诉引导程序根分区所在位置)rd_LVM_LV=vg_embedclub/lv_root rd_LVM_LV=vg_embedclub/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=zh_CN.UTF-8 KEYTABLE=us rhgb quiet
initrd /initramfs-2.6.35.13-92.fc14.i686.PAE.img——内核模块打包文件
KERNEL:
- MBR的引导代码将负责找到并加载linux内核,一般还会加载内核模块打包文件:initrd /initramfs-2.6.35.13-92.fc14.i686.PAE.img
- linux为保持kernel的精简将一些不常用的驱动、功能编译为模块,在需要的时候动态加载,而这些模块被打包保存为一个initramfs文件。
- 早期版本的linux使用initrd文件,initramfs是initrd的替代优化版本,比initrd更加节省空间,更加灵活。
- 命令dmesg可以查看本次启动时内核的输出信息,也可以通过/var/log目录下的dmesg进行查看。
INIT:
- linux系统中运行的第一个进程,是所有进程的父进程,会在操作系统的整个运行过程中一直存在,直到系统关机。top 命令可以查看PID,其中1为init
- 调用/etc/rc.d/rc.sysinit负责对系统进行初始化,挂载文件系统,并且根据运行级别启动相应服务。
- linux运行级别:
0 关机
1 单用户模式:该模式下不启动任何服务,并且直接以root用户登录(不需要密码)。在启动界面中为内核kernel传递参数“1”(数字1)或“single”可让系统进入单用户模式,在该模式下可以使用passwd修改root密码,而且并不需要知道以前root的密码(用于在忘记root密码时,重新设置root密码)。

2 不带网络的多用户模式
3 多用户模式
4 未使用
5 xll 图形化多用户
6 重新启动
- 可以通过/etc/inittab配置文件修改默认的运行级别,init中的其他配置文件保存在/etc/init目录下。所以init一共有两个配置文件目录:/etc/inittab和/etc/init
每个级别对应的启动服务保存在/etc/rc.cd/tc[0123456]中
命令runlevel可显示当前及上一个运行级别
命令init可以改变当前运行级别
linux系统启动流程的更多相关文章
- linux基础-附件1 linux系统启动流程
附件1 linux系统启动流程 最初始阶段当我们打开计算机电源,计算机会自动从主板的BIOS(Basic Input/Output System)读取其中所存储的程序.这一程序通常知道一些直接连接在主 ...
- Linux系统启动流程及安装命令行版本
Debian安装 之前也安装过很多次linux不同版本的系统,但安装后都是直接带有桌面开发环境的版本,直接可以使用,正好最近项目不是很忙,想一直了解下Linux的整个启动流程,以及如何从命令行模式系统 ...
- 【转载】Linux系统启动流程
原文:Linux系统启动流程 POST(Power On Self Test/上电自检)-->BootLoader(MBR)-->Kernel(硬件探测.加载驱动.挂载根文件系统./sbi ...
- Linux系统启动流程及grub重建(1)
日志系统 Linux系统启动流程 PC: OS(Linux) POST-->BIOS(Boot Sequence)-->MBR(bootloader,446)-->Kernel--& ...
- Linux 入门记录:十八、Linux 系统启动流程 + 单用户修改 root 密码 + GRUB 加密
一.系统启动流程 一般来说,Linux 系统的启动流程是这样的: 1. 开机之后,位于计算机主板 ROM 芯片上的 BIOS 被最先读取,在进行硬件和内存的校验以及 CPU 的自检没有异常后, BIO ...
- Linux系统启动流程(重要!)
Linux系统启动流程 从上至下为: BIOS MBR:Boot Code 执行引导程序-GRUB(操作系统) 加载内核 执行init run level 1.BIOS(Basic Input ...
- Linux系统启动流程分析
作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells Github:https://github.co ...
- linux 系统启动流程
原著资料网址:http://wenku.baidu.com/view/414127fdf705cc1755270997.html (版权归原作者所有) Linux系统的启动分5个阶段,每个阶段都完成不 ...
- [ 总结 ] Linux系统启动流程
Linux系统启动过程分析: 按下电源 --> BIOS自检 --> 系统引导(lilo/grub) --> 启动内核 --> 初始化系统 --> 用户登录 1. BIO ...
- Linux系统启动流程与系统目录
启动流程 # 1,开机BIOS自检 检查一系列的硬件,最后根据启动顺序启动,是硬盘还是光驱等 # 2,MBR引导 读硬盘0柱面0磁道1扇区的前446字节 1扇区=512字节 MBR=4446字节 四个 ...
随机推荐
- Windows XP与Windows 7系统常见漏洞
1.Windows XP系统常见漏洞 Windows XP系统常见的漏洞有UPNP服务漏洞.升级程序漏洞.帮助和支持中心漏洞.压缩文件夹漏洞.服务拒绝漏洞.Windows Media Player漏洞 ...
- MySQL(20):事务简介 和 事务的四个特性
1. 事务概念引入: 现实生活中,我们往往经常会进行转账操作,转账操作可以分为两部分来完成,转入和转出.只有这两部分都完成了才可以认为是转账成功.在数据库中,这个过程是使用两条语句来完成的,如果其中任 ...
- “ArcGIS数据应用和地图打印输出
中国科学院计算技术研究所教育中心 关于开展“ArcGIS数据应用和地图打印输出” 培训班的通知 各相关单位: 随着信息化.网络化.数字化向纵深发展,互联网与空间地理信息系统相互交织,数字地球.“智慧地 ...
- 源自梦想 自定义ViewGroup的整理_1
今天说说自定义控件,稍微偏底层一点的东西.今天的主要任务是自己完全写代码,写一个ViewGroup,实现一个类似ViewPager这样的一个功能. 大家自定义View肯定写过,不过估计写的也不多.等大 ...
- ValidateRequest="false" 无效
在做牛腩新闻发布系统的时候,部分同学可能会遇到这样的情况: 从客户端(ContentPlaceHolder1_m_ContentPlaceHolder_ftbContent="<P&g ...
- mybatis--MapperProxy事务
上篇 详细分析了org.mybatis.spring.mapper.MapperScannerConfigurer 和 org.mybatis.spring.SqlSessionFactoryBean ...
- amoeba实现MySQL读写分离
amoeba实现MySQL读写分离 准备环境:主机A和主机B作主从配置,IP地址为192.168.131.129和192.168.131.130,主机C作为中间件,也就是作为代理服务器,IP地址为19 ...
- hdu 4494 最小费用流
思路:这题我在下午重现的时候就用的费用流做,可是各种悲催的超时,只是我一开始的那种建图方式多了一个二分查找. 戏剧性的是,求距离的返回值写成int型了,CodeBlock编译器又没有警告,然后就WA啊 ...
- 干掉拖延症!写给新人的GTD方法
部门周会上有一个环节是每个同学讲述本周之最:最认可自己的.最反思的.最困惑的.其中,最认可自己,代表自己阶段性的成就感,在从外界取得成就感之前,首先自己要认可自己.最反思,要注意,不能只反不思,要记录 ...
- MVC Action,Service中筛选int 和list<int>
action: public ActionResult DeleteByID(int id) { this.MessageService.DeleteMailTemplate(id); var fro ...