【linux】主分区,扩展分区,逻辑分区,动态分区,引导分区,标准分区

目录

主分区,扩展分区,逻辑分区

主分区和引导分区


主分区,扩展分区,逻辑分区(标准分区)

硬盘一般划分为一个“主分区”和“扩展分区”,然后在扩展分区上再分成数个逻辑分区。

磁盘=主分区+扩展分区(逻辑分区1+逻辑分区2+……)

简易的记忆就是:

主分区就是"C盘","C盘"之外就是扩展分区,可以扩展分区分出D盘,E盘,F盘等逻辑分区。

主分区可以有多个(最多4个),这个时候主分区就不是‘C盘’了,而是选其中一个当‘C盘’。

主分区和引导分区(引导区)

二者并不平级,引导分区就是主分区和逻辑分区上的一块区域,个人认为应该叫分区的”引导区“,记录主分区和逻辑分区信息,引导程序如何去读写数据。

例如:主分区的引导区

主分区的数据区:用于存储操作系统、程序文件和用户数据等

主分区的引导分区:存储操作系统的启动扇区和引导加载程序

简易的理解就是:

主分区就是“C盘“,引导区就是"C盘"的引导启动区域,上电后硬件先读引导区上的信息,然后启动"C盘"数据区的操作系统。

粗略的启动过程描述:

简略:

硬件启动-->引导分区-->主分区-->启动完成,可以开始读写其他分区。

概述:

硬件启动,BIOS或UEFI固件会从引导分区读取引导信息,启动引导加载程序(如GRUB),引导记载程序加载数据到内存中,启动操作系统内核,操作系统内核并继续完成操作系统的启动过程,操作系统会访问硬盘上的其他分区(包括主分区和逻辑分区)

引导分区(或称为启动分区)确实存放了操作系统的启动扇区和引导加载程序。当计算机启动时,BIOS或UEFI固件会从这个引导分区读取引导信息(也称为启动扇区或MBR扇区),并将控制权交给引导加载程序(如GRUB、LILO、Windows Boot Loader等)。

然而,在启动过程中,引导加载程序并不直接从主分区读取操作系统数据来启动操作系统。相反,引导加载程序会加载操作系统内核文件(例如Windows的NTLDR或Linux的vmlinuz)和相关的初始化文件(如INITRD或initrd.img),这些文件通常存储在特定的文件系统分区上(可以是主分区或逻辑分区)。引导加载程序将这些文件加载到内存中,并配置必要的硬件和软件环境,然后将控制权交给操作系统内核。

操作系统内核在内存中启动后,会接管计算机的控制权,并继续完成操作系统的启动过程。在这个过程中,操作系统会访问硬盘上的其他分区(包括主分区和逻辑分区),以加载必要的驱动程序、配置文件和用户数据等。

因此,虽然引导分区在启动过程中起到了关键的作用,但它并不直接读取主分区上的操作系统数据来启动操作系统。相反,它是通过引导加载程序来加载操作系统内核和初始化文件,然后由操作系统内核完成启动过程。

逻辑分区和标准分区的区别

标准分区(或称为逻辑分区),二者同一个概念。

交换分区Swap

类似于windows的虚拟内存。

作用是:Linux的交换分区Swap类似于Windows的虚拟内存,都是当物理内存不足时,将部分数据从内存中移至硬盘的某个区域,从而为当前运行的程序提供足够的内存空间。

Linux的交换分区Swap vs Windows的虚拟内存

  1. 管理方式:虚拟内存挂在某个盘符下,Swap分区通常是一个独立的分区
  2. 使用时机:Windows即使物理内存没有用完也会去用到虚拟内存,而Linux只有当物理内存用完的时候才会去动用虚拟内存(即Swap分区)。
  3. 数据交换:内存不足时,OS会把内存中暂时不用的数据交换出去,放在Swap分区中--SWAP OUT。当某进程需要这些数据,OS又会把Swap分区中的数据交换回物理内存中--SWAP IN。而在Windows中,虚拟内存的管理方式可能有所不同。

Linux分区方案介绍

1.标准分区(逻辑分区):可以包含文件系统或swap交换空间,也能提供一个容器,用于软件RAID和LVM物理卷。

2.BTRFS:Btrfs是一个具有几个设备相同的特征的文件系统。它能够处理和管理多个文件,大文件和大体积比的ext2,ext3和ext4文件系统。

3.LVM(逻辑卷):创建一个LVM分区自动生成一个LVM逻辑卷。 LVM可以在使用物理磁盘时,提高性能。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理(LVM)功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小

4.LVM精简配置:使用自动精简配置,你可以管理的自由空间,被称为精简池,它可以根据需要由应用程序时,可以分配给设备任意数量的存储池。所需的存储空间具有成本效益的分配时,薄池可以动态地扩展。某些分区固定只能是标准分区,即使选择LVM也会自动设置为标准分区。

 

二.Linux手动分区标准及建议:

https://www.cnblogs.com/xiaoyao404/p/17890596.html)

1. boot分区(标准分区):一般300Mb左右

作用:引导分区,包含了系统启动的必要内核文件,即使根分区损坏也能正常引导启动,一般这些文件所占空间在200M以内。

分区建议:分区的时候可选100M-500M之间,如果空间足够用,建议分300-500M。避免由于长期使用的冗余文件塞满这个分区。

分区格式:建议ext4,可按需求更改。

2. /boot/efi分区:一般200M左右

 作用:对于GPT分区表(UEFI启动模式),efi分区是必须的,它用来存放操作系统的引导器(loader)和启动操作系统所必需的引导文件和相关驱动程序

分区格式:EFI System Partition格式

3. swap分区:一般是物理内存的1-2倍,如2048mb 4096mb

作用:类似于Windows的虚拟内存,在内存不够用时占用硬盘的虚拟内存来进行临时数据的存放,而对于linux就是swap分区

分区建议:建议是物理内存大小的1-2倍

分区格式:swap格式

4. / 分区(根分区):所有分区完成后,剩余全部空间

作用:Linux系统具有 “一切皆文件” 的思想和特点,所有的文件都从这里开始。如果我们有大量的数据在根目录下(比如做FTP服务器使用)可以划分大一点的空间。

分区建议:15G+。根分区和home分区的大小类似于C盘和D盘的空间分配,主要占空间在哪儿就把那里分大容量。

分区格式:建议ext4

5. var分区(可选):最少300-500M,一般2-3G

作用:用于log日志的文件的存放,如果不分则默认在/目录下

分区建议:如果你安装的linux是用于服务器或者经常做日志分析,请划分var分区,避免日志文件不断膨胀塞满导致根分区而引发问题。

分区格式:建议ext4

6.home分区(可选):2G-10G大小(每个用户100M左右)

作用:存放用户数据,HOME的结构一般是 HOME/userName/userFile,如果不分则默认在/目录下

分区建议:如果用户数据多可以考虑将此分区适当增大,请参考“根分区”分区建议;一般硬盘的主要容量几乎都在Home分区和根分区下

分区格式:建议ext4

 

三.Linux文件系统格式介绍

1. Ext:第一代扩展文件系统, 于1992年4月发表,是为Linux核心所做的第一个文件系统。采用Unix文件系统(UFS)的元数据结构,以克服MINIX文件系统性能不佳的问题。

2. Ext2: 第二代扩展文件系统 是Linux内核所用的文件系统。它开始由Rémy Card设计,用以代替ext,于1993年1月加入Linux核心支持之中。ext2 的经典实现为Linux内核中的ext2fs文件系统驱动,最大可支持2TB的文件系统,到Linux核心2.6版时,扩展至可支持32TB。

3. Ext3: 第三代扩展文件系统(英语:Third extended filesystem,缩写为ext3)

4. Ext4: 第四代扩展文件系统是Linux系统下的日志文件系统,是ext3文件系统的后继版本。Ext4是由Ext3的维护者Theodore Tso领导的开发团队实现的,并引入到Linux2.6.19内核中。

5.XFS:XFS是一个日志型的文件系统,能在断电以及操作系统崩溃的情况下保证数据的一致性。XFS最早是针对IRIX操作系统开发的,后来移植到linux上,目前CentOS 7已将XFS作为默认的文件系统。

6.swap:swap文件系统用于Linux的交换分区。在Linux中,使用整个交换分区来提供虚拟内存,其分区大小一般应是系统物理内存的2倍,在安装Linux操作系统时,就应创分交换分区,它是Linux正常运行所必需的,其类型必须是swap,交换分区由操作系统自行管理。

7.vfat: Linux对DOS,Windows系统下的FAT(包括fat16和Fat32)文件系统的一个统称

8.NFS: NFS即网络文件系统,用于在UNIX系统间通过网络进行文件共享,用户可将网络中NFS服务器提供的共享目录挂载到本地的文件目录中,从而实现操作和访问NFS文件系统中的内容。

9.EFI system partition: EFI BIOS的文件系统分区,里面包含了启动操作系统所必须的文件,当BIOS使用UEFI模式是,必须使用此格式创建EFI系统分区。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/9250.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaWeb之过滤器(Filter)与监听器(Listener)

前言 过滤器(Filter) 1.什么是过滤器 2.过滤器的语法格式 3.使用场景 3.1.如何防止用户未登录就执行后续操作 3.2.设置编码方式--统一设置编码 3.3.加密解密(密码的加密和解密) 3.4.非法文字筛选 3.5.下载资源的限制 监听器(Listener) 1.什么是监听器 2.监听器分类…

Ci24R1 (SOP8)2.4GHz无线收发一体、双向系统的智能家居芯片

Ci24R1 (SOP8)工作范围在2.4GHzISM频段,专为低系统应用成本的无线场合设计,集成嵌入式ARQ基带协议引擎的无线收发器芯片。它的工作频率范围为2400MHz-2525MHz,共有126个1MHz带宽的信道。 Ci24R1 (SOP8&…

IPFoxy Tips:什么是静态住宅IP?静态ISP代理指南

静态住宅代理(也称为静态ISP代理)是最流行的代理类型之一。它们也是隐藏您的身份并保持在线匿名的最佳方法之一。您为什么要使用住宅代理而不是仅使用常规代理服务?下面我具体分享。 一、什么是静态住宅代理? 首先,我…

无监督式学习

1.是什么? 无监督式学习与监督式学习**最大的区别就是:**没有事先给定的训练实例,它是自动对输入的示例进行分类或者分群; 优点:不需要标签数据,极大程度上扩大了我们的数据样本,其次不受监督信…

STC8增强型单片机开发day02

逻辑分析仪 什么是逻辑分析仪 逻辑分析仪(Logic Analyzer)是一种工具,用于分析数字信号,例如控制信号,时钟信号等等。它可以用于调试和验证数字电路、嵌入式系统等等 本人采用的是mini版USB 逻辑分析仪。总共有10个…

刷题《面试经典150题》(第九天)

加油! 学习目标:学习内容:学习时间:知识点学习内容:跳跃游戏 II - 力扣(LeetCode)H 指数 - 力扣(LeetCode)盛最多水的容器 - 力扣(LeetCode)矩阵置…

Spring学习笔记

目录 1. Spring有什么优势 1.1 模块化 1.2 轻量级 1.3 方便集成各种优秀框架 1.4 提供了分层开发下的完整技术解决方案 1.5 Java语言编写的开源框架,使用了多种设计模式 2. Spring的第一个程序 2.1 开发环境 2.2 环境搭建 2.3 编码测试 2.4 BeanFactory的UML类图…

pytest教程-42-钩子函数-pytest_runtest_makereport

领取资料,咨询答疑,请➕wei: June__Go 上一小节我们学习了pytest_runtest_teardown钩子函数的使用方法,本小节我们讲解一下pytest_runtest_makereport钩子函数的使用方法。 pytest_runtest_makereport 钩子函数在 pytest 为每个测试生成报…

交易复盘-20240509

仅用于记录当天的市场情况,用于统计交易策略的适用情况,以便程序回测 短线核心:不参与任何级别的调整,采用龙空龙模式 一支股票 10%的时候可以操作, 90%的时间适合空仓等待 百合花 (4)|[9:25]|[17717万]|1.93 时代万恒…

多线程学习D10 收尾了应该

线程安全集合类概述 重点介绍java.util.concurrent.* 下的线程安全集合类,可以发现它们有规律,里面包含三类关键词:Blocking、CopyOnWrite、Concurrent Blocking 大部分实现基于锁,并提供用来阻塞的方法 CopyOnWrite 之类容器修改…

代码随想录刷题随记31-贪心5

代码随想录刷题随记31-贪心5 435. 无重叠区间 leetcode链接 按照右边界排序,从左向右记录非交叉区间的个数。 此时问题就是要求非交叉区间的最大个数。 这里记录非交叉区间的个数还是有技巧的,如图: 左边界排序可不可以呢? 也是…

mysql安装及基础设置

关系型数据库 MySQL是一种关系型数据库管理系统,采用了关系模型来组织数据的数据库,关系数据库将数据保存在不同的表中,用户通过查询 sql 来检索数据库中的数据。 yum 方式安装 mysql # yum -y install mysql-server # systemctl start my…

信号槽机制

目录 信号槽机制 Qt 中的信号 槽函数 槽函数定义 通过代码创建槽函数 通过ui文件创建槽函数 自定义信号 带参数的信号与槽 信号槽断开绑定 信号槽机制 信号和槽机制是 Qt 中一个非常重要的一个机制, 因为有信号和槽机制, 就可以通过某些条件的触发来调用这些槽函数, …

ASP.NET信息安全研究所设备管理系统的设计与实现

摘 要 以研究所的设备管理系统为背景,以研究所设备管理模式为研究对象,开发了设备管理系统。设备管理系统是设备管理与计算机技术相结合的产物,根据系统的功能需求分析与定义的数据模式,分析了应用程序的主要功能和系统实现的主…

zabbix动作执行命令失效不起作用?

1. zabbix在web界面设置完主机组,主机,监控项,触发器,动作之后 监控项监控到了,触发器触发动作,但是执行的指令不起作用 流程 在zabbix-agent端将nginx服务down掉,zabbix会自动监控并执行重启的…

TypeScript学习日志-第二十一天(声明文件d.ts)

声明文件d.ts 在使用 Typescript 并使用第三方库 的时候 我们会发现会有很多的提示或补全,这都是声明文件起的作用,但是有写冷门的第三方库是没有声明文件的,这时候引用就会报错,我们就使用 express 库作为例子来展示一下&#x…

CMake创建跨平台OPenGL工程(学习笔记)

一、跨平台环境基本配置 1、环境搭建 1)linux OpenGL环境搭建参考:ubuntu18.04 OpenGL开发(显示YUV)_ubuntu opengl-CSDN博客 https://blog.51cto.com/cerana/6433535 2)windows下环境搭建 OpenGLVisual Studio20…

【Linux系统】进程控制

再次理解进程 进程:内核的相关管理数据结构(task_struct(进程控制块PCB),mm_struct(地址空间),页表) 代码和数据 那么如何理解进程具有独立性? 我们之前已经学习过进程控制块啊,地址空间啊,页表啊&…

GitHub Actions 手动触发方式

目录 前言 Star Webhook 手动触发按钮 前言 GitHub Actions 是 Microsoft 收购 GitHub 后推荐的一款 CI/​CD 工具早期可能是处于初级开发阶段,它的功能非常原生,甚至没有直接提供一个手动触发按钮一般的触发方式为代码变动(push 、pull…

【2024版】最新6款漏洞扫描工具来了!(附下载)看完这一篇就够了

目录 一、Nessus 二、AWVS 三、ZAP 四、w3af 五、北极熊 六、御剑 七、网络安全学习路线 (2024最新整理) 八、学习资料的推荐 1.视频教程 2.SRC技术文档&PDF书籍 3.大厂面试题 特别声明: 渗透测试收集信息完成后&#xf…