zhangzsm

  磁盘存储

  • 磁盘结构

 

      • 1.1 设备文件
      1. 一切皆文件:open(), read(), write(), close()
      2. 设备文件:关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信
      • 设备号码: 
        • 主设备号:major number, 标识设备类型
        • 次设备号:minor number, 标识同一类型下的不同设备
      • 设备类型:
        • 块设备:block,存取单位“块”,磁盘
        • 字符设备:char,存取单位“字符”,键盘
      • 磁盘设备的设备文件命名:
        1. /dev/DEV_FILE
        2. /dev/sdX   #SCSI, SATA, SAS, IDE,USB
        3. /dev/nvme0n#   #nvme协议硬盘,(如:第一个硬盘:nvme0n1,第二个硬盘:nvme0n2)
        • 虚拟磁盘:
          /dev/vd        
          /dev/xvd
      • 不同磁盘标识:a-z,aa,ab…
        • 示例:/dev/sda,/dev/sdb, ...
      • 同一设备上的不同分区:1,2, ...
        1. /dev/sda1
        2. /dev/sda5
        • 范例:创建设备文件
      • 1.2 硬盘类型
        1. IDE:133MB/s,并行接口,早期家用电脑
        2. SCSI:640MB/s,并行接口,早期服务器 SATA:6Gbps,
        3. SATA数据端口与电源端口是分开的,即需要两条线,一条数据线,一条电源线
        4. SAS:6Gbps,SAS是一整条线,数据端口与电源端口是一体化的,SAS中是包含供电线的,而 SATA中不包含供电线。SATA标准其实是SAS标准的一个子集,二者可兼容,SATA硬盘可以插入 SAS主板上,反之不成
        5. USB:480MB/s
        6. M.2:
      • 服务器硬盘大小
        1. LFF:3.5寸,一般见到的那种台式机硬盘的大小
        2. SFF:Small Form Factor 小形状因数,2.5寸,注意不同于2.5寸的笔记本硬盘
        3. L、S分别是大、小的意思,目前服务器或者盘柜采用sff规格的硬盘主要是考内虑增大单位密度内的磁盘 容量、增强散热、减小功耗
      • 1.3 机械硬盘和固态硬盘
        1. 机械硬盘(HDD)Hard Disk Drive,即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电 机,磁头控制器,数据转换器,接口,缓存等几个部分组成。
        2. 固态硬盘(SSD)Solid State Drive,用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单 元(FLASH芯片、DRAM芯片)组成。
        3. 相较于HDDSSD防震抗摔传输速率功耗重量噪音上有明显优势SSD传输速率性能是HDD 的2倍 相较于SSD,HDD在价格、容量占有绝对优势 硬盘有价,数据无价,目前SSD不能完全取代HHD
      • 1.4 硬盘存储术语

硬盘存储术语 CHS

  1. head:磁头 磁头数=盘面数
  2. track:磁道 磁道=柱面数
  3. sector:扇区,512bytes
  4. cylinder:柱面  1柱面=512 * sector数/track*head数=512*63*255=7.84M
  • 范例:

#查看CHS

 

范例:识别SSD和机械硬盘类型

#1表示机械,0表示SSD

 

  • CHSFDISK在分区期间所需磁盘信息
    1. CHS采用 24 bit位寻址
    2. 其中前10位表示cylinder,中间8位表示head,后面6位表示sector
    3. 最大寻址空间 8 GB
  • LBA(Logical Block Addressing)逻辑块寻址模式。管理的硬盘百空间可达 8.4GB。)
    1. LBA是一个整数,通过转换成 CHS 格式完成磁盘具体寻址
    2. ATA-1规范中定义了28位寻址模式,以每扇区512位组来计算,ATA-1所定义的28位LBA上限达到 128 GiB。2002年ATA-6规范采用48位LBA,同样以每扇区512位组计算容量上限可达128Petabytes
      • LBA和CHS区别
      1. 一、主体不同

        1、lba模式:是描述计算机存储设备上数据所在区块的通用机制,用在像硬盘这样的辅助记忆设备。

        2、chs模式:是FDISK在分区期间所需zhidao的磁盘信息。

      2. 二、方式不同

        1、lba模式:从0开始编号来定位区块,第一区回块LBA=0,第二区块LBA=1,依此类推。

        2、chs模式:每张磁片的正反两面各有一个磁头,一个磁头对应一张磁片的一个面。因此,用第几磁 头就可以表示数据答在哪个磁面。

      3. 三、作用不同

        1、lba模式:可以意指某个数据区块的地址或是某个地址所指向的数据区块。

        2、chs模式:可用于某些不能自动检测模式的BIOSCHS寻址模式。

  • 管理存储
      • 使用磁盘空间过程
      1. 设备分区
      2. 创建文件系统
      3. 挂载新的文件系统
      • 2.1 磁盘分区
      • 磁盘分区的作用
      1. 优化I/O性能
      2. 实现磁盘空间配额限制
      3. 提高修复速度
      4. 隔离系统和程序
      5. 安装多个OS
      6. 采用不同文件系统
      • 分区方式
        两种分区方式:MBR,GPT
      •  MBR分区
        • MBR:Master Boot Record,1982年,使用32位表示扇区数,分区不超过2T
      • 划分分区的单位:
      1. CentOS 5 之前按整柱面划分
      2. CentOS 6 版本后可以按Sector划分
      3. 0磁道0扇区:512bytes 
      4. 446bytes: boot loader 
      5. 64bytes:分区表,其中每16bytes标识一个分区 
      6. 2bytes: 55AA
      •  管理分区
        • 列出块设备:  lsblk
        • 创建分区命令
        1. fdisk  管理MBR分区
        2. gdisk  管理GPT分区
        3. parted 高级分区操作,可以是交互或非交互方式
      •  parted 命令
        注意:parted的操作都是实时生效的,小心使用

      • 格式:parted [选项]... [设备 [命令 [参数]...]...]
      • 范例:
        1. parted /dev/sdb  mklabel gpt|msdos
        2. parted /dev/sdb  print
        3. parted /dev/sdb  mkpart primary 1 200 (默认M)
        4. parted /dev/sdb  rm 1 parted –l   列出所有硬盘分区信息
      •  分区工具fdisk和gdisk
        1. gdisk  [device...]             类fdisk 的GPT分区工具
        2. fdisk -l [-u] [device...]      查看分区
        3. fdisk  [device...]             管理MBR分区
        • 子命令:
        1. p   分区列表
        2. t   更改分区类型
        3. n   创建新分区
        4. d   删除分区
        5. v   校验分区
        6. u   转换单位
        7. w   保存并退出
        8. q   不保存并退出
      • 查看内核是否已经识别新的分区

cat /proc/partations

新增分区用:

partx -a  /dev/DEVICE          

kpartx -a /dev/DEVICE -f: force
 删除分区用:

partx -d --nr M-N /dev/DEVICE

范例:非交互式创建分区

echo -e \'n\np\n\n\n+2G\nw\n\' | fdisk /dev/sdc



 

分类:

技术点:

相关文章: