Linux磁盘存储

设备文件

在linux中一切皆文件,在linux之上全部的操做都是经过文件来实现的,每个设备都有一个文件做为他的访问入口,此文件咱们称为设备文件。
设备也分为:
  块设备:block 单位为 “块” 磁盘
  字符设备: char 单位为 “字符” 键盘 设备号码:用来标识设备。每个设备都有不一样的设备号
  主设备号:major numbar,标识设备类型
  次设备号:minor numbar,设备同一类型下不一样的设备。 linux

设备接口类型

并行:
  IDE: 133MB/s
  SCSI:640MB/s
串行:
  SATA :6Gbps
  SAS :6Gbps
  USB : 480MB/s
Linux磁盘存储 centos

机械硬盘和固态硬盘

  • 机械硬盘(HDD)
      即传统的硬盘,构造通常由,盘片,轴,马达,机械臂,磁头组成。
  • 固态硬盘(SSD)
      用固态电子存储芯片组成的硬盘,使用方法和普通的硬盘相同。
    相较于HDD,SSD在防震抗摔、传输速率、功耗、重量、噪音上有明显优点,SSD传输速率性能是HDD的2倍
    相较于SSD,HDD在价格、容量占有绝对优点
    硬盘有价,数据无价,目前SSD不能彻底取代HHD。

    设备文件

    磁盘设备的设备文件命名:/dev/DEV_FILE
    SCSI,SATA,SAS,IDE,USB:/dev/sd
    一些虚拟磁盘: /dev/vd , /dev/xvd
    不一样磁盘标识:/dev/sda/, /dev/sdb, ...
    同一设备上的不一样分区:1. 2 .....
             /dev/sda1, /dev/sda5
    磁盘存储术语:
      head :磁头
      track:磁道
      cylinder :柱面
      sector :扇区 , 512baytes(字节) ide

    机械磁盘结构

    Linux磁盘存储

    固态磁盘和机械磁盘对比

    Linux磁盘存储

硬盘存储术语

Linux磁盘存储

区位记录磁盘扇区结构 工具

ZBR(Zoned Bit Recording)
Linux磁盘存储性能

  • CHS
    采用24bit位寻址
    其中前10位表示cylinder,中间8位表示head,后6位表示sector
    最大寻址空间8GB
  • LBA
    LBA是一个整数,经过转换成CHS格式完成磁盘具体寻址
    ATA-1规范中定义了28位寻址模式,以每扇区512位组来计算,ATA-1所定义的28位LBA上限达到128 GiB。2002年ATA-6规范采用48位LBA,一样以每扇区512位组计算容量上限可达128 Petabytes 操作系统

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

分区

两种分区方式: MBR , GPT .
MBR:1982年,使用32位表示扇区数,最大不超过2T
如何分区:按柱面
0磁道0扇区:512bytes
    446bytes: boot loader
    64bytes:分区表,其中每16bytes标识一个分区
    2bytes: 55AA
MBR分区中一块硬盘最多有4个主分区,也能够3个主分区加1个扩展分区。 接口

MBR分区结构

Linux磁盘存储

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

MBR结构

Linux磁盘存储

MBR中DPT结构

Linux磁盘存储

GPT 分区

  • GPT:支持128个分区 ,使用64位,支持8Z 64Z 容量
  • 使用128位UUID 表示磁盘和分区GPT分区表,自动备份在头尾两份,并有crc校验位
  • UEFI: 硬件支持GPT ,使操做系统启动
    Linux磁盘存储

BIOS+MBR与UEFI+GPT

Linux磁盘存储

管理分区

  • 列出块设备 :lsblk
  • 建立分区使用:
      fdisk :建立MBR分区
      gdisk :建立GPT分区
      parted: 高级分区操做
    从新设置内存中的内核分区表版本
      partprobe

    parted命令

    parted命令的操做都是实时生效的,必定要当心使用
    用法:
      parted /dev/sdb mklabel gpt|msdos   parted /dev/sdb print
      parted /dev/sdb mkpart primary 1 200(默认是M)
      parted /dev/sdb rm 1
      parted -l 列出分区信息 同步

分区工具fdisk和gdisk

gdisk /dev/sdb 类fdisk的GPT分区工具
fdisk -l :查看分区
fdisk /dev/sdb 管理分区
子命令:
  p :分区列表
  t :更改分区类型
  n :建立新分区
  d :删除分区
  v :效验分区
  u :转换单位
  w :保存并退出
  q :不保存退出

同步分区表

  • 查看内核是否已经识别新的分区
      cat/proc/partations
  • centos6通知内核从新读取硬盘分区表   新增分区用:   partx -a /dev/DEVICE   kpartx -a /dev/DEVICE   删除分区用   parts -d --nr M-N /dev/device centos5和7:使用partprobe   partprobe /dev/device
相关文章
相关标签/搜索