liunx磁盤存儲

設備文件

在linux中一切皆文件,在linux之上所有的操作都是通過文件來實現的,每一個設備都有一個文件作爲他的訪問入口,此文件我們稱爲設備文件。
設備也分爲:
  塊設備:block 單位爲 “塊” 磁盤
  字符設備: char 單位爲 “字符” 鍵盤 設備號碼:用來標識設備。每一個設備都有不同的設備號
  主設備號:major numbar,標識設備類型
  次設備號:minor numbar,設備同一類型下不同的設備。

設備接口類型

並行:
  IDE: 133MB/s
  SCSI:640MB/s
串行:
  SATA :6Gbps
  SAS :6Gbps
  USB : 480MB/s
liunx磁盤存儲

機械硬盤和固態硬盤

  • 機械硬盤(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(字節)

    機械磁盤結構

    liunx磁盤存儲

    固態磁盤和機械磁盤對比

    liunx磁盤存儲

硬盤存儲術語

liunx磁盤存儲

區位記錄磁盤扇區結構

ZBR(Zoned Bit Recording)
liunx磁盤存儲

  • 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尋址方式

分區

兩種分區方式: MBR , GPT .
MBR:1982年,使用32位表示扇區數,最大不超過2T
如何分區:按柱面
0磁道0扇區:512bytes
    446bytes: boot loader
    64bytes:分區表,其中每16bytes標識一個分區
    2bytes: 55AA
MBR分區中一塊硬盤最多有4個主分區,也可以3個主分區加1個擴展分區。

MBR分區結構

liunx磁盤存儲

硬盤主引導記錄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結構

liunx磁盤存儲

MBR中DPT結構

liunx磁盤存儲

GPT 分區

  • GPT:支持128個分區 ,使用64位,支持8Z 64Z 容量
  • 使用128位UUID 表示磁盤和分區GPT分區表,自動備份在頭尾兩份,並有crc校驗位
  • UEFI: 硬件支持GPT ,使操作系統啓動
    liunx磁盤存儲

BIOS+MBR與UEFI+GPT

liunx磁盤存儲

管理分區

  • 列出塊設備 :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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章