0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux系统安装前的一些预备知识

jf_78858299 来源:技术人江湖 作者:吕良 2023-05-12 15:27 次阅读

本文会介绍一些Linux系统安装前的一些预备知识,会涉及到MBR、BIOS和Boot loader等计算机基础概念。

硬盘的第一扇区

在众多设备中,与系统安装关系最密切的就要数硬盘了。因为在安装操作系统时,我们要做的一个最重要的事就是对硬盘进行分区,以便我们可以更加方便和高效的使用电脑

在Linux系统中,一切设备都是以文件的形式存在的,所有设备对应的文件都存储在/dev路径下。硬盘对应的文件名通常都是/dev/sd[a-p],但如果你使用的是虚拟机,那么硬盘对应的文件名很可能是/dev/vd[a-p]

在整个硬盘的存储空间中,它的第一个扇区是特别重要的。硬盘的一个扇区是512字节大小,在第一个扇区的512字节空间中,存储了下面两个东西。

**1. **主引导记录(Master Boot Record, MBR):安装启动引导程序的地方,有446字节;

**2. **分区表(partition table):记录硬盘的分区状态,有64字节。

分区表

由于分区表仅拥有64字节的存储空间,因此最多仅能有存储四组分区信息,每组分区信息记录了对应分区在硬盘上的起始与结束的柱面号。假设硬盘设备文件名为/dev/sda,那么这四个分区在Linux系统中的设备文件名如下所示:

P1:/dev/sda1
P2:/dev/sda2
P3:/dev/sda3
P4:/dev/sda4

这四个分区可以作为主(Primary)分区,也可以作为扩展(Extended)分区。扩展分区的作用是使用额外的扇区来记录分区信息,以使我们可以拥有超过4个的分区数量。

扩展分区本身并不能被用来格式化存储数据。我们可以通过扩展分区所指向的那个区块继续存储其它分区信息。从扩展分区中切割出来的分区叫做逻辑(Logical)分区。由于逻辑分区是由扩展分区继续划分出来的,所以逻辑分区可以使用的硬盘柱面范围就是扩展分区所设置的范围。

主分区、扩展分区和逻辑分区之间的关系如下图所示:

图片

图中分区在Linux系统中的设备文件名分别如下:

P1:/dev/sda1
P2:/dev/sda2
L1:/dev/sda5
L2:/dev/sda6
L3:/dev/sda7
L4:/dev/sda8

注意到这次的文件中不包含/dev/sda3和/dev/sda4。因为前四个号码都是保留给主分区和扩展分区用的,逻辑分区的设备号码只能由5开始。

下面我们对硬盘分区做一个总结:

  1. 所谓的分区只是针对那个64字节的分区表进行设置而已;
  2. 硬盘默认的分区表仅能存储四组分区信息,这四组分区可以是主分区或扩展分区;
  3. 扩展分区最多只能有1个;
  4. 逻辑分区是由扩展分区二次划分出来的分区;
  5. 主分区和逻辑分区可以被格式化后存储数据,扩展分区不能被格式化。

BIOS&MBR

软件是计算机的灵魂,没有运行任何软件的硬件是没有用的,操作系统就是用来管理计算机中各个硬件的软件。

但是在电脑开机前,操作系统也只是躺在硬盘上的一组数据而已,那么计算机要如何读取操作系统文件并运行它呢?这就涉及到计算机的启动程序了。

BIOS是写入到计算机主板上的一个固件(固件就是写入到硬件上的一个软件程序)。这个BIOS就是计算机启动的时候所执行的第一个程序。BIOS会根据用户的设置找到能够启动的设备(硬盘或U盘),如果启动的设备是硬盘,BIOS会从该硬盘的第一个扇区中读取MBR中的启动引导程序。至此,BIOS的工作就结束了,节下来就是MBR内的启动引导程序的工作了。

MBR内的启动引导程序的任务就是加载操作系统内核文件,这个启动引导程序是操作系统在安装的时候所提供的,所以它知道如何加载操作系统内核。

接下来就是操作系统内核开始接管计算机,启动引导程序的任务至此也圆满完成了。

整个启动流程到操作系统之前的过程总结如下:

  1. BIOS:计算机启动后会主动执行的固件,它会找到一个可启动的设备;
  2. MBR:位于可启动设备的第一个扇区内的一块存储空间,只有446字节,用于存储启动引导程序;
  3. 启动引导程序(boot loader):一个可以加载操作系统内核文件的程序;
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11354

    浏览量

    210657
  • 计算机
    +关注

    关注

    19

    文章

    7553

    浏览量

    88797
  • MBR
    MBR
    +关注

    关注

    0

    文章

    12

    浏览量

    11163
收藏 人收藏

    评论

    相关推荐

    介绍一些实用的Linux命令

    作为名软件开发人员,掌握 Linux 命令是必不可少的技能。即使你使用 Windows 或 macOS,你总会遇到需要使用 Linux 命令的场合。例如,大多数 Docker 镜像都基于 L
    发表于 08-01 16:12 378次阅读
    介绍<b class='flag-5'>一些</b>实用的<b class='flag-5'>Linux</b>命令

    梳理嵌入式Linux一些知识

    前言这篇文章简单我们来起梳理嵌入式Linux一些知识,方便于一些想跟我样想要由单片机进阶到
    发表于 11-04 07:33

    大佬都在看的嵌入式Linux一些知识

    前言 这篇文章简单我们来起梳理嵌入式Linux一些知识,方便于一些想跟我样想要由单片机进阶
    发表于 11-05 08:12

    起梳理嵌入式Linux一些知识

    前言这篇文章简单我们来起梳理嵌入式Linux一些知识,方便于一些想跟我样想要由单片机进阶到
    发表于 01-05 07:18

    linux安装一些软件

    linux安装一些软件,jdk和tomcat类的。
    发表于 11-09 17:39 0次下载

    SNMP协议的一些基本知识

    主要介绍了SNMP的协议的一些基本知识,通过了解SNMP,可以对很多大系统进行远程控制。
    发表于 11-10 10:54 0次下载

    kali一些基础安装总结

    kali一些基础安装总结,有兴趣的同学可以参考下载看看啦。
    发表于 03-29 11:12 0次下载

    关于PID一些常用知识

    本文档详细介绍分析了关于PID的一些常用知识
    发表于 08-29 14:22 2次下载

    梳理嵌入式Linux一些知识

    学单片机的朋友有些已经有一些Linux基础了,但也不乏有些朋友没用过Linux,甚至有些初学的读者朋友没听说过Linux,为了照顾这些朋友,这里简单地认识
    的头像 发表于 07-01 16:56 2289次阅读

    关于学习Linux一些建议

    不管是在生活还是工作中,每个人都会逐渐养成一些小习惯。坏习惯旦形成就很难改正,所在在系统学习 Linux 之前,给大家一些建议,刻意去培养
    发表于 07-14 14:22 627次阅读

    嵌入式系统一些基础知识

    本文主要介绍嵌入式系统一些基础知识,希望对各位有帮助。
    的头像 发表于 02-18 10:44 2517次阅读

    图详细讲解计算机预备知识

    图详细讲解计算机预备知识
    发表于 04-19 09:14 2次下载

    射频电路预备基础知识

    射频电路预备基础知识免费下载。
    发表于 06-07 14:37 78次下载

    学习linux内核的一些建议

    学习linux内核,这个可不像学门语言,c或者java个月或者3月你就能精通掌握。学习linux内核是需要
    发表于 05-07 15:20 654次阅读
    学习<b class='flag-5'>linux</b>内核的<b class='flag-5'>一些</b>建议

    分享一些Linux服务器的安全小贴士

    今天浩道跟大家分享一些Linux服务器的安全小贴士,让你维护linux服务器安全上有一些方向!
    发表于 01-29 11:27 347次阅读