linux系统启动详解

要学习linux的命令,我们需要先了解linux系统是如何工作的,这里我们先了解linux是如何在一台电脑上启动加载的!!

linux系统启动过程

第一步、  BIOS初始化
  1.  BIOS检测所有的外置设备,查看有哪些外围设备在活动区
  2.  开始寻找启动磁盘--根据BIOS的设置导找启动文件存放的位置
 第二步、执行启动加载器
  1. 先到MBR(主引导记录)磁盘导找启动文件,比如:grub /LILO
  2. 到boot partition(启动分区)去找启动文件-比如:grub /LILO
  3. 启动加载器,加载启动文件(通过分区表查找活动分区,并且将活动分区的加载程序读取到内存里运行)
 第三步、加载内核
  给内核传递内核启动参数化,比如运行级别参数 3-支持网络,但只支持命令行 5--支持网络,且支持图形界面
(加载器会根据/boot/grub.conf配置文件中所设置的信息,从/boot/所在的分区上读取Linux内核映像,然后把内核
映像加载到内存中并把控制权交给Linux内核)
  第四步、内核获得
1. 控制权后
   1.1  检测硬件
   1.2  解压缩并安装必要驱动
   1.3  初始化与文件系统相关的虚拟设备
   1.4  装载根文件系统,挂载根目录下面
   1.5  以上4步完成之后linux在进程空间里加载init程序-init获得控制权
2. 启动init并初始化服务
  2.1  执行/etc/rc.d/rc.sysinit脚本文件-----初始化环境变量,网络配置、启动swap、检查并挂载文件系统
  2.2  执行rc文件-----rc文件中定义了不同的运行级别的对应的初始化配置
  3.3   执行rc.local文件----针对不同的用户,初始化个性配置
  4.4   建立使用环境
   一切初始化完成,这时候就是使用用户名和密码登录啦
 总结
  BIOS初始化--->寻找并执行加载器--->载入启动内核并执行内核初始化(主要是根文件挂载,驱动安装)--->启动init服务(初始化系统的公共配置)--->初始化用户的个人配置--->启动桌面

时间: 2024-10-14 04:30:19

linux系统启动详解的相关文章

10.Linux系统启动详解

10.Linux系统启动详解 ·1.BIOS,负责检查硬件并且查找可启动设备, ·2.MBR:Boot Code, ·bios找到可启动设备后执行其引导代码,MBR的前446字节, ·/boot/grub/stage1内容为当前硬盘MBR的镜像, ·3.执行引导程序-GRUB ·grub是现在Linux使用的主流引导程序,可以用来引导大多数主流系统, ·Linux的grub可以识别windows的启动程序,但windows的会覆盖Linux的,故先windows后Linux, ·grub相关文件

Linux系统启动详解(一)

本篇主要以Centos为例,讲述整个Linux系统启动过程,包括了grub引导,initramfs流程,/sbin/init执行rc.sysinit及rc的大体流程. 另外,本篇有一个实例来说明,将整个操作系统运行在内存的实例(系统默认是使用一块物理磁盘存储操作系统). 1       概述 Linux系统从软件角度,启动大致过程如下: 1)         硬件及BIOS加载,通过启动项找到MBR,读取MBR中的boot loader,即我们常用的grub工具. 2)         boot

Linux系统启动详解(二)

上节讲到了Linux启动大体流程,及grub的作用,本节主要扯扯initramfs的那些事,并且通过简单修改initramfs,将整体操作系统运行到了内存中. 3       initramfs 3.1     简述 在2.4内核中initrd为boot loader initialized RAM Disk,linux启动前boot loader先将initrd文件解压,并加载到内存中.boot loader加载内核后,会先运行initrd,再switch_root到真正root fs. 在2

Linux入门-8 Linux系统启动详解

系统启动流程 BIOS MBR GRUB KERNEL INIT 单用户修改root密码 GRUB加密 系统启动流程 BIOS MBR: Boot Code 执行引导程序 - GRUB 加载内核 执行init runlevel BIOS Basic Input Output System,一般保存在主板的BIOS芯片中 计算机启动时首先运行BIOS,负责检查硬件并且查找可启动设备 可启动设备在BIOS设置中进行定义,如USB, CDROM, HD MBR 不同的系统有不同的MBR BIOS找到可

Linux系统启动详解(三)

上节已系统initramfs已启动完成,将系统控制权交给了真正的rootfs的/sbin/init,下面就是/sbin/init干活的时间了. 4       /sbin/init initramfs的init脚本,通过switch_root命令,切换到真正的root fs后,执行的第一个程序就是root fs下的/sbin/init, 4.1     switch_root swith_root newroot init [arg] eg: initramfs中切换到真正的rootfs命令是s

Linux 目录详解 树状目录结构图

1.树状目录结构图 2./目录 目录 描述 / 第一层次结构的根.整个文件系统层次结构的根目录. /bin/ 需要在单用户模式可用的必要命令(可执行文件):面向所有用户,例如:cat.ls.cp,和/usr/bin类似. /boot/ 引导程序文件,例如:kernel.initrd:时常是一个单独的分区[6] /dev/ 必要设备, 例如:, /dev/null. /etc/ 特定主机,系统范围内的配置文件. 关于这个名称目前有争议.在贝尔实验室关于UNIX实现文档的早期版本中,/etc 被称为

Linux信号详解

Linux信号详解 一 信号的种类 可靠信号与不可靠信号, 实时信号与非实时信号 可靠信号就是实时信号, 那些从UNIX系统继承过来的信号都是非可靠信号, 表现在信号 不支持排队,信号可能会丢失, 比如发送多次相同的信号, 进程只能收到一次. 信号值小于 SIGRTMIN的都是非可靠信号. 非可靠信号就是非实时信号, 后来, Linux改进了信号机制, 增加了32种新的信号, 这些信 号都是可靠信号, 表现在信号支持排队, 不会丢失, 发多少次, 就可以收到多少次. 信号值 位于 [SIGRTM

linux awk详解与应用

文章来自于本人个人博客: linux awk详解与应用 1.awk awk是一个强大的文本分析工具,它可以通过分析文本来生成一个数据报告.它的原理就是读取每行的输入,然后按照分隔符切分(默认是空格),再进行定制计算. awk '{print $1}' /etc/passwd   #打印出passwd文件的所有行的第一列 这是awk的基础语法,在awk中$n代表列数,即$1--第一列,$2---第二列....,但是$0代表整行 接下来我们按照指定的分隔符打印数据: awk -F ':' '{pri

Gentoo Linux安装详解--根据官方WiKi整理

1. 前期准备 远程登录: 开启ssh服务: /etc/init.d/sshd start 设置密码: passwd 以便使用putty.ssh client远程登录上传stage等(有时在线下载很慢,而局域网上传很快) 准备磁盘: 分区: fdisk /dev/sda /dev/sda1 : /boot 100M(32-100M) 设启动笔记-a/dev/sda2 : / 20G/dev/sda3 : /home 20G/dev/sda5 : /swap 1G (内存< 512 MB,分区分配