硬件设备在Linux中文件名

如今IDE 磁盘几乎被淘汰,市面上最常见的磁盘就是SATA和SAS。个人计算机主要是SATA。很多Linux发行版下都将IDE磁盘文件名也都被仿真成 /dev/sd[a-p] ,所以不用太担心磁盘设备文件名的问题。此外, 如果你的机器使用的是跟ISP申请的云端主机,比如阿里云主机,很大程度上是虚拟机。虚拟机磁盘文件名为磁盘文件名为 /dev/vd[a-p]

例题:现有两个SATA磁盘以及一个USB磁盘,主板上面有六个SATA的插槽。两个SATA磁盘分别插在主板上的SATA1, SATA5插槽上, 请问这三个磁盘在Linux中的设备文件名为何?
答:由于是使用侦测到的顺序来决定设备文件名,并非与实际插槽代号有关,因此设备的文件名如下:

SATA1插槽上的文件名:/dev/sda
SATA5插槽上的文件名:/dev/sdb
USB磁盘(开机完成后才被系统捉到):/dev/sdc

磁盘分区

一张磁盘并不是拿过来直接用,需要先分区。磁盘本身有很多属于,sector,cylinder,partion等。我们说cylinder通常是文件系统的最小单位,也就是分区的最小单位。为什么说“通常”呢?因为近来有 GPT 这个可达到 64bit 纪录功能的分区表, 现在我们甚至可以使用扇区 (sector) 号码来作为分区单位。MBR和GPT是目前主流的两种分区方式。

MBR

MBR结构

MBR(Master Boot Record, 主引导记录)。早期的 Linux 系统为了相容于 Windows 的磁盘,以支持 Windows 的MBR的方式来处理boot loader与partion table。boot loader与partion table都放在磁盘的第一个扇区,具体分布如下

partion table仅有64 Bytes容量,primary partion + extend partion最多4个分区,每个分区记录起始cylinder number

extend partion下面可以在划分logic partion,这样总的分区数量就可以>4。当logic partion也不是无限的,上限受OS控制。

primary partion + extend partion最多4个分区,这是磁盘的限制。

extend partion最对一个,这是OS的限制。

primary partion 、logic partion可以格式化,extend partion不可以格式化

MBR缺陷

操作系统无法抓取到 2.2T 以上的磁盘容量!

MBR 仅有一个sector,若被破坏后,经常无法或很难救援。

MBR 内的存放开机管理程序的区块仅 446Bytes,无法容纳较多的程序代码。

GPT

GPT结构

GPT为了处理大硬盘,使用LBA编址。原来MBR占用的第一个sector现在是LBA0。GPT 使用了 34 个 LBA 区块来纪录分区信息!同时与过去 MBR 仅有一的区块,被干掉就死光光的情况不同, GPT 除了前面 34 个LBA 之外,整个磁盘的最后 33 个 LBA 也拿来作为另一个备份。具体就够如下

LBA0 (MBR 相容区块)

与MBR模式相近,前446B还是boot loader,后64B换成一个特殊标记,用于表面此磁盘是GPT格式。

LBA1 (GPT 表头纪录)

纪录分区表本身的位置与大小,备份 GPT 分区 放置的位置, 以及校验码

LBA2-33 (实际纪录分区信息处)

从 LBA2 区块开始,每个 LBA 都可以纪录 4 笔分区纪录,所以在默认的情况下,总共可以有 4^32 = 128 笔分区纪录

MBR优点

GPT 分区没有所谓的primary、extend、logic partion的概念,每个分区都可以视为主分区,都可以格式化。
新版的 Linux 大多支持 GPT 分区表

MBR缺点

在磁盘管理工具上面, fdisk 并不支持 GPT !要使用 GPT 的话,可以使用 gdisk 或 parted。

boot loader方面, grub 第一版并不认识 GPT 喔!得要 grub2 以后才会认识

并不是所有的操作系统都可以读取到 GPT 的磁盘分区,能否读取 GPT 格式又与开机的检测程序(BIOS 或 UEFI)有关

不是所有的硬件都可以支持 GPT 格式

Linux磁盘管理——MBR 与 GPT的更多相关文章

  1. Linux学习之十九-Linux磁盘管理

    Linux磁盘管理 1.相关知识 磁盘,是计算机硬件中不可或缺的部分磁盘,是计算机的外部存储器中类似磁带的装置,将圆形的磁性盘片装在一个方的密封盒子里,这样做的目的是为了防止磁盘表面划伤,导致数据丢失 ...

  2. 【转载】Linux磁盘管理:LVM逻辑卷管理

    Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一. ...

  3. Linux 磁盘管理

    Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...

  4. df、du、fdisk:Linux磁盘管理三板斧的使用心得(转载)

    From:http://os.51cto.com/art/201012/240726_all.htm 作者介绍:李洋(博客),博士毕业于中科院计算所.10多年来一直从事计算机网络信息安全研发工作,曾主 ...

  5. linux 磁盘管理学习笔记

    磁盘管理命令:fdisk df du fdisk #查看硬盘分区表 df #查看分区使用情况 du #查看文件占用空间情况lvdisplay #逻辑分区 [1] 李洋.df.du.fdisk:Linu ...

  6. linux磁盘管理系列-软RAID的实现

    1 什么是RAID RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使得性能大幅提高. R ...

  7. linux磁盘管理系列-LVM的使用

    LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...

  8. linux磁盘管理系列三:LVM的使用

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  9. linux磁盘管理系列二:软RAID的实现

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

随机推荐

  1. Spring cloud微服务安全实战-7-12整合链路追踪和日志监控

    调用链路的监控和统一日志的监控结合起来.比如说我在调用链监控上发现有一个调用订单的服务慢了.通过pinpoint可以看到 .用户发出来的请求,经过了网关,经过了order,经过了pagement.通过 ...

  2. python 中requests的返回数可直接使用json

    对Python的request不是很了解,在使用时才发现,可以把request的请求结果,直接使用.json()['字段名']方法进行一个取值,案例如下 def test_tiantian(self) ...

  3. 【SSH进阶之路】Spring的IOC逐层深入——源码解析之IoC的根本BeanFactory(五)

    我们前面的三篇博文,简单易懂的介绍了为什么要使用IOC[实例讲解](二).和Spring的IOC原理[通俗解释](三)以及依赖注入的两种常用实现类型(四),这些都是刚开始学习Spring IoC容器时 ...

  4. javascript实现每秒执行一次的方法

    javascript实现每秒执行一次的方法 <pre> i=0; function showzhandou() { $('.zhandouresult p').eq(i).fadeIn() ...

  5. linux grep的用法

    linux grep的用法<pre>[root@iZ23uewresmZ ~]# cat /home/ceshis.txtb124230 b034325 a081016 m7187998 ...

  6. python 坑1

    目录 1.编码解码 2.基础数据类型补充: 2.1 str: 2.2list: 2.3tuple: 2.4dict: 2.5set: 3.坑 4.类型转换: 5.数据类型: 1.编码解码 编码:将文字 ...

  7. 一个长耗时SQL在TiDB和Mysql上的耗时测试

    之前看到的TiDB和MySql的性能对比都是大量短耗时请求下的压测,单机情况下TiDB和MySql的确有些差距,不过笔者最近碰到的场景更多是sql要扫描的行数不小的情况下单sql比较耗时的问题,所以自 ...

  8. html中实现某区域内右键自定义菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. windows10 iis浏览wcf报404.3错误

    报错:HTTP错误404.3-Not Found 由于扩展配置问题而无法提供您请求的页面.如果该页面是脚本,请添加处理程序.如果应下载文件,请添加MIME映射. 解决步骤如下: 控制面板->打开 ...

  10. Springboot 结合百度IORC实现自定义模板图片识别

    前言: 首先呢,最近再公司的项目当中遇到这样的一个问题,就是需要识别图片,提取图片当中的关键语句,而且识别的语句当然是人家手写体识别,翻来覆去一想,最终还是决定使用百度的OCR帮助我解决这一项需求 话 ...