Linux磁盘管理

Posted dugukeling

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux磁盘管理相关的知识,希望对你有一定的参考价值。

磁盘管理主要包括以下内容:

  • 磁盘结构

  • 分区介绍

  • 管理分区

  • 管理文件系统

  • 挂载设备

  • 管理虚拟内存

此篇主要介绍磁盘结构和分区介绍,剩余内容将在后续篇中介绍

 

磁盘结构

 

1.设备文件

设备类型:    

  • 块设备:block,存取单位“块”,如磁盘
  • 字符设备:char,存取单位“字符”,如键盘

设备文件:

      关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信

设备号码:

  • 主设备号:major number, 标识设备类型
  • 次设备号:minor number, 标识同一类型下的不同设备

技术分享图片

磁盘设备的设备文件命名:/dev/DEV_FILE

  • SCSI, SATA, SAS,IDE,USB:  /dev/sd(在centos5上IDE接口的硬盘被命名为/dev/hd)
  • 虚拟磁盘:/dev/vd
  • 不同磁盘标识:a-z,aa,ab…           例如 /dev/sda, /dev/sdb, ...
  • 同一设备上的不同分区:1,2, ...      例如 /dev/sda1, /dev/sda5...

 

2.硬盘接口类型

并行:

  • IDE:133MB/s
  • SCSI:640MB/s

串口:

  • SATA:6Gbps
  • SAS:6Gbps
  • USB:480MB/s

rpm:

     rotations  per minute,机械硬盘每分钟转速,常见的转速有5400,7200,10000,15000

 

3.机械硬盘和固态硬盘

机械硬盘(HDD):

        Hard Disk Drive,即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。机械硬盘中所有的盘片都装在一个旋转轴上,每张盘片之间是平行的,在每个盘片的存储面上有一个磁头,磁头与盘片之间的距离比头发丝的直径还小,所有的磁头联在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。数据通过磁头由电磁流来改变极性方式被电磁流写到磁盘上,也可以通过相反方式读取。硬盘为精密设备,进入硬盘的空气必须过滤

固态硬盘(SSD):

       Solid State Drive,用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也与普通硬盘一致

两者对比:

  • 相较于HDD,SSD在防震抗摔、传输速率、功耗、重量、噪音上有明显优势,SSD传输速率性能是HDD的2倍
  • 相较于SSD,HDD在价格、容量、使用寿命上占有绝对优势
  • 硬盘有价,数据无价,目前SSD不能完全取代HHD

技术分享图片

本篇以介绍机械硬盘为主

 

4.机械硬盘结构

硬盘存储术语

 

  • 磁头(head):对磁盘的数据进行读写
  • 磁道(track):当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道。 磁盘上的磁道是一组记录密度不同的同心圆
  • 扇区(sector):磁盘上的每个磁道被等分为若干个弧段,这些弧段便是硬盘的扇区。硬盘的第一个扇区,叫做引导扇区。 一个扇区的大小为512个字节
  • 柱面(cylinder):在有多个盘片构成的盘组中,由不同盘片的面,但处于同一半径圆的多个磁道组成的一个圆柱面

 

技术分享图片

 技术分享图片

 

 5. 寻址方式:CHS和LBA

CHS

  • 采用24bit位寻址
  • 其中前10位表示cylinder,中间8位表示head,后面6位表示sector
  • 最大寻址空间8GB

LBA(logical block addressing)

  • LBA是一个整数,通过转换成CHS格式完成磁盘具体寻址
  • LBA采用48个bit位寻址
  • 最大寻址空间128PB

由于CHS寻址方式的寻址空间在大概8GB以内,所以在磁盘容量小于大概8GB时,可以使用CHS寻址方式或是LBA寻址方式;在磁盘容量大于大概8GB时,则只能使用LBA寻址方式

 

 

分区介绍

 

1.为什么分区

  • 优化I/O性能
  • 实现磁盘空间配额限制
  • 提高修复速度
  • 隔离系统和程序
  • 安装多个OS
  • 采用不同文件系统

 

2.两种分区方式:MBR和GPT

(1)MBR: Master Boot Record,主引导记录,使用32位表示扇区数,分区不超过2T

  • 如何分区:按柱面
  • 0磁道0扇区:512bytes

                           446bytes: boot loader
                           64bytes:分区表
                                      16bytes: 标识一个分区
                          2bytes: 55AA

  • 4个主分区;3主分区+1扩展(N个逻辑分区)

 技术分享图片

硬盘主引导记录MBR由4个部分组成

  • 主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序
  • 出错信息数据区,偏移地址0089H--00E1H为出错信息,00E2H--01BDH全为0字节
  • 分区表(DPT,Disk Partition Table)含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4
  • 结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA

技术分享图片

MBR中DPT(分区表)结构

技术分享图片

(2)GPT : GUID(Globals Unique Identifiers)partition table 支持128个分区,使用64位,支持8Z(512Byte/block )64Z (4096Byte/block)

  • 使用128位UUID(Universally Unique Identifier) 表示磁盘和分区GPT分区表自动备份在头和尾两份,并有CRC校验位
  • UEFI (统一扩展固件接口)硬件支持GPT,使操作系统启动

EFI部分又可以分为4个区域:EFI信息区(GPT头)、分区表、GPT分区、备份区域

技术分享图片

技术分享图片

 




以上是关于Linux磁盘管理的主要内容,如果未能解决你的问题,请参考以下文章

【Linux命令】磁盘管理(逻辑卷与物理卷)

Linux 下磁盘管理--逻辑卷--LV

20磁盘管理—linux磁盘管理详解(分区)

Linux 磁盘管理

Linux 磁盘管理

Linux磁盘管理(fdisk磁盘管理工具|swap交换分区|LVM逻辑卷管理)