1. 程式人生 > >Linux系統管理-磁盤管理1

Linux系統管理-磁盤管理1

physical 沒有 linu partx mod rac eboot 結構 .com

1、磁盤結構

  扇區sector:  每個扇區存儲512byte

  磁道track:  每個磁道劃分63個扇區

  磁頭head:  邏輯磁頭(盤面)數設為255個

  柱面cylinder:  一個柱面的大小=255X63X512byte=8M(Linux分區單位)

技術分享

  硬盤或分區的容量=柱面大小X柱面數

2、硬盤啟動過程

  識別硬盤--->規劃分區--->格式化--->掛載--->讀寫數據

3、常見分區模式

  1>MBR(Master Boot Record)分區

    分區方式:第一扇區(521bit)+4個主分區(3個主分區+1個擴展分區)+若幹邏輯分區

    缺點:最多4個主分區、最大支持2.2TB

  2>GPT (GUID Partition Table)

    優勢:可以劃分多個分區,最大支持18EB(1EB=1024PB=1024X1024TB=1024X1024X1024GB)

   註:MBR分區與GPT分區不能共存

4、磁盤分區工具

  fdisk------>支持MBR分區

  parted------>支持GPT分區、MBR分區

  1>fdisk工具

    fdisk -l  顯示系統分區信息

  技術分享

  fdisk /dev/sdb  對磁盤sdb進行分區,操作後進入以下界面

  技術分享

  輸入m或者help顯示常用命令及幫助信息

  技術分享

  創建主分區2G:

    n(創建新分區)--->p(創建主分區)--->1(輸入分區號)--->1(輸入分區的起始柱面,一般為上一分區的結束柱面)--->+2G(輸入分區大小)--->w(保存並退出)--->partprobe /dev/sdb(獲取新的分區表)--->ls /dev/sdb*(查看以創建的分區)

    創建磁盤分區時的ID號即為磁盤的分區標識,每個分區的類型都通過不同的ID號來區分的,通過l查看已有的ID號,通過t可以修改分區的ID

  創建擴展分區10G:MBR分區只能創建1個擴展分區

    n(創建新分區)--->e(創建主分區)--->2(輸入分區號)--->263(輸入分區的起始柱面,一般為上一分區的結束柱 面)--->+10G(輸入分區大小)--->w(保存並退出)--->partprobe /dev/sdb(獲取新的分區表)--->ls /dev/sdb*(查看以創建的分區)

  創建邏輯分區2G:邏輯分區創建在擴展分區內,總的分區大小不能超過擴展分區大小  

    n(創建新分區)--->l(創建主分區)--->263(輸入分區的起始柱面,一般為上一分區的結束柱 面)--->+2G(輸入分區大小)--->w(保存並退出)--->partprobe /dev/sdb(獲取新的分區表)--->ls /dev/sdb*(查看以創建的分區)

  2>parted分區工具

  4.2.1>查看分區表:parted /dev/sda print

  Model: VMware, VMware Virtual S (scsi)
  Disk /dev/sda: 21.5GB
  Sector size (logical/physical): 512B/512B
  Partition Table: msdos

  Number Start End Size Type File system Flags
  1 1049kB 316MB 315MB primary ext4 boot
  2 316MB 19.4GB 19.0GB primary ext4
  3 19.4GB 21.5GB 2114MB primary linux-swap(v1)
  4.2.2>進入交互模式:parted /dev/sda
  GNU Parted 2.1
  Using /dev/sda
  Welcome to GNU Parted! Type ‘help‘ to view a list of commands.

  4.2.3>常用操作
  mktable  :創建分區表,即創建磁盤分區格式

  mkpart  :創建磁盤分區

  rm +分區號  :刪除分區

  quit    :保存並退出

  4.2.4>創建磁盤分區過程

  mktable[msdos|gpt]--->mkpart[primary|extended|logical]--->[ext4|vfat]--->開始柱面--->終止柱面

  創建GPT分區

  parted /dev/sdb

  (parted) mktable gpt    [建立GPT分區表]

  mkpart primary ext4 0 4G  [建立第一個4G大小的主分區]

  mkpart primary ext4 4G 8G  [建立第二個4G大小的主分區]

  mkpart primary ext4 8G 100%[將剩余空間作為最後一個分區]

  分區表如下:

  Number Start End Size File system Name Flags
  1 17.4kB 4000MB 4000MB primary
  2 4000MB 8000MB 3999MB primary
  3 8000MB 21.5GB 13.5GB primary

5、獲取新的分區表

  創建完磁盤分區後可以通過一下方法獲取新的分區表

  1>partx -a /dev/sdb
  2>partprobe /dev/sdb
  3>reboot

6、格式化磁盤

  將磁盤創建完分區後需要格式化磁盤,對磁盤賦予文件系統後磁盤才能夠使用

  mkfs.文件系統  [磁盤分區]:mkfs.ext4 /dev/sdb1

7、swap分區

  Linux內核為了提高讀寫效率與速度,會將文件在內存中進行緩存,這部分內存就是 Cache Memory(緩存內存)。即使你的程序運行結束後,Cache Memory也不會自動釋放。這就會導致你在Linux系統中程序頻繁讀寫文件後,你會發現可用物理內存變少。當系統的物理內存不夠用的時候,就需要將物 理內存中的一部分空間釋放出來,以供當前運行的程序使用。那些被釋放的空間可能來自一些很長時間沒有什麽操作的程序,這些被釋放的空間被臨時保存到 Swap空間中,等到那些程序要運行時,再從Swap分區中恢復保存的數據到內存中。這樣,系統總是在物理內存不夠時,才進行Swap交換。

  若要將一個分區作為swap分區則需先將這個分區格式化為swap分區

    mkswap /dev/sdb1

  啟用/dev/sdb1到swap分區

    swapon /dev/sdb1

  停用/dev/sdb1作為swap分區

    swapoff /dev/sdb1

  查看swap分區

    free -m

    swapon -s

  利用文件創建swap分區

  dd if=/dev/zero(源設備) of=/tmp/swap.db(目標設備) bs=1M(塊大小) count=1024(塊數量)  創建1G大小的文件

  mkswap /tmp/swap.db  格式化swap分區

  swapon /tmp/swap.db  加載swap分區

  swapon -s        查看swap分區

    Filename Type Size Used Priority
    /dev/sda3 partition 2064380 6500 -1
    /dev/sdb1 partition 3906228 0 -2
    /tmp/swap.db file 1048572 0 -3

  

  

  

  
  

    

    

Linux系統管理-磁盤管理1