当前位置: 首页 > news >正文

Linux系统下4个扇区的解释

之前有人问过为什么装Linux的时候主分区+扩展分区只能有4个,当时由于基础知识不足,不能及时解决问题,实在有点,有点不好意思吧。
MBR(Master Boot Recorder)主要开机扇区,放置硬盘的信息。MBR 可以说是整个硬盘最重要的地方了,因为在 MBR 里面记录了两个重要的东西,分别是:开机管理程序,与磁盘分割表 ( partition table )。所以我们所做的硬盘分割,也就是在修改partition table。
由于这个 MBR 区块的容量有限,所以,当初设计的时候,就只有设计成 4 个分割纪录,这些分割记录就被称为 Primary ( 主分割 ) 及 Extended ( 延伸分割 ) ,也就是说,一颗硬盘最多可以有 4 个 Primary + Extended 的扇区,其中,Extended 只能有一个,因此,你如果要分割成四块磁盘分割的话,那么最多就是可以:
P + P + P + P
P + P + P + E
的情况来分割了。需要特别留意的是,如果上面的情况中, 3P +E 只有三个『可用』的磁盘,如果要四个都『可用』,就得分割成 4P 了!( 因为 Extended 不能直接被使用,还需要分割成 Logical 才行)
思考一:如果我要将我的大硬盘暂时分割成四个 partition ,同时,还有其它的空间可以让我在未来的时候进行规划,那么该如何分割?
由刚刚的说明,我们可以知道, Primary + Extended 最多只能有四个 partition,而如果要超过 5 个 partition 的话,那么就需要 Extended 的帮忙。因此,在这个例子中,我们千万不能分割成四个 Primary 为什么呢?假如您是一个 20 GB 的硬盘,而 4 个 primary 共用去了 15 GB ,您心想还有 5 GB 可以利用对吧?错!剩下的 5 GB 完全不能使用,这是因为已经没有多余的 partition table 纪录区可以记录了,因此也就无法进行额外的分割,当然啰,空间也就被浪费掉了!因此,请千万注意,如果您要分割超过 4 槽以上时,请记得一定要有 Extended 分割区,而且必须将所有剩下的空间都分配给 Extended ,然后再以 logical 的分割区来规划 Extended 的空间。
思考二:我可不可以仅分割 1 个 Primary 与 1 个 Extended 呢?
当然可以!基本上, Logical 可以有 64 个,因此,你可以仅分割一个主分割,并且将所有其它的分割都给 Extended ,利用 Logical 分割来进行其它的 partition 规划即可!
思考三:假如我的硬盘安装在 IDE 1 的 Master ,并且我想要分割成 6 个可以使用的硬盘扇区,那么每个磁盘在 Linux 底下的代号为何?
说明:
由于硬盘在 Primary + Extended 最多可以有四个,因此,在 Linux 底下,已经将 partition table 1 ~ 4 先留下来了,如果只用了 2 个 P + E 的话,那么将会空出两个 partition number 呦!再详细的说明一下,假设我将四个 P + E 都用完了。其中Extended /dev/hda4包括三个逻辑分区。
实际可以使用的是 /dev/hda1, /dev/hda2, /dev/hda3, /dev/hda5, /dev/hda6, /dev/hda7 这六个 partition!至于 /dev/hda4 这个 Extended 扇区本身仅是用来规划出让 Logical 可以利用的磁盘空间而已!
那么万一我只想要分割 1 个 Primary 与 1 个 Extended 呢?
因为 1~4 号已经被预留下来了,所以第一个 Logical 的代号由 5 号开始计算起来,而后面在被规划的,就以累加的方式增加磁盘代号啰!而其中 /dev/hda3, /dev/hda4 则是空的,被保留下来的代号。









本文转自 liang831002 51CTO博客,原文链接:http://blog.51cto.com/leo0216/70448,如需转载请自行联系原作者

相关文章:

  • Kerberos简介
  • ArgoUML 的简单用法
  • 修改eclipse自动生成的comments中的author名字
  • 怎么配置zen coding,我用的是Adobe Dreamweaver CS5 这个有解决么?
  • 安装jdk、安装Tomcat
  • MongoDB学习笔记
  • 中小企业如何设计存储系统方案
  • 九位不同数字乘法等式的递归与非递归回溯算法(三)
  • 超棒的JS移动设备滑动内容幻灯实现 - Swiper
  • 关于SQLite,SQLCipher和FMDB
  • Android自定义组合控件
  • js判断客户浏览器类型,版本
  • Eclipse Deepin 12.12 代码提示崩溃
  • 做技术到底可以做到哪种地步-技术为什么越走越窄
  • linux转发流程图。
  • angular2 简述
  • Angular6错误 Service: No provider for Renderer2
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • in typeof instanceof ===这些运算符有什么作用
  • JavaWeb(学习笔记二)
  • JS字符串转数字方法总结
  • LeetCode18.四数之和 JavaScript
  • opencv python Meanshift 和 Camshift
  • React-生命周期杂记
  • Redux系列x:源码分析
  • swift基础之_对象 实例方法 对象方法。
  • UMLCHINA 首席专家潘加宇鼎力推荐
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 编写高质量JavaScript代码之并发
  • 关于字符编码你应该知道的事情
  • 缓存与缓冲
  • 老板让我十分钟上手nx-admin
  • 世界上最简单的无等待算法(getAndIncrement)
  • 交换综合实验一
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • $ git push -u origin master 推送到远程库出错
  • $.ajax中的eval及dataType
  • (¥1011)-(一千零一拾一元整)输出
  • (003)SlickEdit Unity的补全
  • (3)nginx 配置(nginx.conf)
  • (安卓)跳转应用市场APP详情页的方式
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (推荐)叮当——中文语音对话机器人
  • (转载)虚函数剖析
  • ***检测工具之RKHunter AIDE
  • .bashrc在哪里,alias妙用
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .Net6使用WebSocket与前端进行通信
  • .Net程序帮助文档制作
  • .NET命令行(CLI)常用命令
  • .sh
  • /proc/stat文件详解(翻译)
  • :中兴通讯为何成功