Linux磁盤管理(一)之分區、格式化、掛載使用

磁盤管理(一)

 

本章節內容:

磁盤結構

分區類型

  管理分區

  管理文件系統

  掛載設備

 

一、磁盤結構:

1、設備號碼:

 主設備號:major number, 標識設備類型

次設備號:minor number, 標識同一類型下的不同設備

 blob.png 

2、磁盤接口類型:

   并行:IDE、SISC

   串口:SATA 、SAS 、USB

   rpmrotatons、per minute

3、磁盤設備的設備文件命名:

   IDE/dev/hd

   SISC/dev/sda、/dev/sdb、……   (不同的設備,使用a-z

   (同一設備上,不同的分區,采用數字來命名區分,如:/dev/sda1/dev/sda2……)

4、  磁盤結構及磁盤存儲:

如下圖,結構:磁臂、電機、扇區(secotr\磁道(track)、磁頭(head)、盤片、柱面(cylinder

   blob.png

(注:每個磁道有63個扇區,每個盤面有1024個磁道,每個磁盤最多有255個磁頭,每個扇區最多能存儲512個字節。柱面:每個盤面都有零磁道/扇區,每個盤片有兩面,因此每個盤片有兩個零磁道/扇區,每個磁盤有多個盤片,所以,磁盤的所有零磁道/扇區組成的立體為零柱面,其他柱面也是如此?。?/span>

二、分區類型:

1、首先了解為什么要分區?

   A、 優化I/O性能

B、實現磁盤空間配額限制

C、提高修復速度

D、隔離系統和程序

E、安裝多個OS

2、磁盤的兩種分區方式:

   MBR GPT

1MBR分區:采用32位表示扇區數,分區不超過2T。

   0磁道0扇區:512bytes446bytesboot loader;64bytes為分區表(16bytes標示一個分區);2bytes55aa

   支持最多4個主分區(3個主分區+1擴展分區[N個邏輯分區]

   blob.png

2GPT分區:最大支持128個主分區,使用64位,支持8Z512bytes/block)和64Z4096bytes/block)。

     使用128UUID 表示磁盤和分區GPT分區表自動備份在頭和尾兩份,并有CRC校驗位。

   UEFI (統一擴展固件接口)硬件支持GPT。

   blob.png

3、查看硬盤分區信息:

   A、命令lsblk

   B、cat /proc/mounts

   Cls /dev/sd*

4、檢查磁盤是否分區:

 blob.png

5、備份磁盤和還原分區表:

 備份:dd if=/dev/sda of=/root/mbr bs=1 count=512

 blob.png

 還原:dd if=mbr of=/dev/sda

 如下圖,查看備份出來的mbr分區表信息(注:或者在備份前也可以使用命令查看,#hexdump -C -n 512 /dev/sda

 blob.png

 blob.png

6、清除分區表信息(寫零):

   命令:dd if=/dev/zero of=/dev/sdc bs=1 count=64 skip=446 seek=446(跳過446字節)

7、清除boot loader信息(寫零):

   命令:dd if=/dev/zero of=/dev/sdc bs=1 count=446

 blob.png

注:上面所提到的清除步驟,勿在系統安裝的磁盤上操作。

三:管理分區:

1、如何列出系統中的磁盤分區:(命令#lsblk

  blob.png

  命令:blkid查看分區的UUID、系統類型等信息

 blob.png

2、分區創建:

fdisk

gdisk

主要創建MBR分區,也支持GPT,但對于一塊磁盤最多只能管理15個分區

主要創建GPT分區,也可以將MBR分區轉換成GPT

# fdisk /dev/sda(功能選項)

blob.png

# gdisk /dev/sda (功能選項)

blob.png

blob.png

blob.png

blob.png

blob.png blob.png

注:parted高級分區操作(創建、復制、調整大小等等)

3、同步分區表命令:

CentOS5

CentOS6

CentOS7

新建分區同步

#partprobe /dev/DEVICE

partx -a -n M:N /dev/DEVICE

kpartx -a /dev/DEVICE -f: force

#partprobe /dev/DEVICE

刪除分區同步

#partprobe /dev/DEVICE

partx -d -n M:N /dev/DEVICE 刪除一個分區

partx -d –nrN-M  /dev/DEVICE 刪除多個分區

#partprobe /dev/DEVICE

4、parted命令創建GPT分區:

 #parted /dev/sdb mklabel gptparted /dev/sdb mklabel msdos[MBR]

 blob.png

 blob.png 

 # parted /dev/sdb mkpart primary 1 1024  (從1開始到10241G

 blob.png

 刪除分區:#parted /dev/sdb rm 1  1為分區的編號)

 blob.png

   注:parted的操作都是實時生效的,小心使用

四、管理文件系統:

1、什么是文件系統:

   文件系統是操作系統用于明確存儲設備或分區上的文件的方法和數據結構;即在存儲設備上組織文件的方法。操作系統中負責管理和存儲文件信息的軟件結構稱為文件管理系統,簡稱文件系統。

   從系統角度來看,文件系統是對文件存儲設備的空間進行組織和分配,負責文件存儲并對存入的文件進行保護和檢索的系統。具體地說,它負責為用戶建立文件,存入、讀出、修改、轉儲文件,控制文件的存取,安全控制,日志,壓縮,加密等。

2、文件系統類型:

   Linux文件系統: ext2, ext3, ext4, xfsSGI, btrfsOracle, reiserfs, jfsAIX, swap(交換分區)、光盤(iso9660

   Windowsfat32, ntfs

   Unix: FFSfast, UFSunix, JFS2

   網絡文件系統:NFS, CIFS

   集群文件系統:GFS2, OCFS2oracle

  分布式文件系統:ceph, moosefs, mogilefs, glusterfs, Lustre

   RAW:未經處理或者未經格式化產生的文件系統

3、文件系統類型分類:

   根據其是否支持"journal"功能:

日志型文件系統: ext3, ext4, xfs, …

非日志型文件系統: ext2, vfat

 文件系統的組成部分:

內核中的模塊:ext4, xfs, vfat

用戶空間的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

    Linux的虛擬文件系統:VFS

   查前支持的文件系統:cat /proc/filesystems

4、創建文件系統:

   1)、mkfs命令:

        使用格式有:mkfs.ext2 mkfs.ext3、 mkfs.ext4、 mkfs.xfs 、mkfs.btrfs 、mkfs.vfat

        如下圖:

        blob.png

        使用選項:

            -t FSTYPE[DEVICE]ext2 ext3 ext4

            即:mkfs.ext2=mkfs -t ext2

       blob.png

         blob.png

       

         -L :設置分區卷標

           #mkfs.ext4 /dev/sda2 -L ‘卷標名稱

         blob.png

   2)、mke2fs命令:管理格式化ext系列的文件系統。

      #mke2fs -t {ext2|ext3|ext4} /dev/sda3

      -j: 相當于-t ext3

mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3

      blob.png

5、ext系列文件系統的管理工具:

   1)、mke2fs命令:ext系列文件系統專用管理工具

    -b {1024|2048|4096}

-L 'LABEL'

-i #: 為數據空間中每多少個字節創建一個inode;此大小不應該小于block的大小

    -N #:為數據空間創建個多少個inode

-I 一個inode記錄大小128—4096

-m #: 默認5%,為管理人員預留空間占總空間的百分比

-O FEATURE[,…]:啟用指定特性

-O ^FEATURE:關閉指定特性

例題:選項-O的使用,如下圖關閉指定特性日志功能:

blob.png

blob.png

2blkid系統分區信息查詢:

 A、blkid:塊設備屬性信息查看

blkid[OPTION]… [DEVICE]

-U UUID: 根據指定的UUID來查找對應的設備

-L LABEL:根據指定的LABEL來查找對應的設備

 Be2label:管理ext系列文件系統的LABEL

# e2label DEVICE [LABEL]

 Cfindfs:查找分區

findfs[options] LABEL=<label>

findfs[options] UUID=<uuid>

   3tune2fs:重新設定ext系列文件系統可調整參數的值

-l:查看指定文件系統超級塊信息;super block

-L 'LABEL':修改卷標

-m #:修預留給管理員的空間百分比

blob.png

-j: ext2升級為ext3

-O: 文件系統屬性啟用或禁用,-O ^has_journal

-o: 調整文件系統的默認掛載選項,-o ^acl

例題:啟用分區的日志功能,如下圖:

blob.png

blob.png

-U UUID: 修改UUID號(此處可以通過命令產生隨機UUID#uuidgen

blob.png

  (4dumpe2fs

             查看superblockdumpe2fs /dev/sda3

-h:查看超級塊信息(分組信息),分區用分組管理

6、文件系統的檢測與修復:

   常發生于死機或者非正常關機之后;掛載為文件系統標記為“dirty”

   fsck: File System Check

    fsck.FS_TYPE

    fsck -t FS_TYPE

    -a: 自動修復錯誤

    -r: 交互式修復錯誤

blob.png

blob.png

 注意: FS_TYPE一定要與分區上已經文件類型相同;

 e2fsckext系列文件專用的檢測修復工具

-y:自動回答為yes

-f:強制修復

blob.png

五:管理掛載設備:

    1、什么是掛載和卸載:

   掛載:將額外文件系統與根文件系統某現存的目錄建立起關聯關系,進而使得此目錄做為其它文件訪問入口的行為。

   卸載:為解除此關聯關系的過程

2、掛載條件與特殊:

   掛載點目錄一般為空

   掛載點下原有文件在掛載完成后會被臨時隱藏

3、掛載和卸載命令:

   進程正在使用的設備是無法被卸載的。

   把設備關聯掛載點:mount /PATH/TO/dir

     卸載時:umount /PATH/TO/dir

     blob.png

4、掛載方法:

A、mount /dev/sda3 /mnt/sda3

B、mount -L ‘backup’(卷標名) /mnt/sda3

C、mount -U ‘UUID’ /mnt/sda3

5、掛載后的操作:

A、查看掛載情況:findmnt /mnt/sda3

B、查看正在訪問指定文件系統的進程:losf /mnt/sda3fuser /mnt/sda3

C、終止所有正在訪問指定的文件系統的進程:fuser –km /mnt/sda3

6、mount命令:(注:mount掛載使用所相應的選項達到的效果都不是永久的,機器一旦重啟將丟失。)

A、使用格式:mount [-fnrsvw] [-t vfstype] [-o options] device dir

       B、常用選項:

               -t vsftype:指定要掛載的設備上的文件系統類型

               -r: readonly,只讀掛載

              blob.png

               -w: read and write, 讀寫掛載

               -n: 不更新/etc/mtab,相當于#mount

               -a:自動掛載所有支持自動掛載的設備(定義在了/etc/fstab文件中,且掛載選項中有auto功能)

               -L 'LABEL': 以卷標指定掛載設備

               -U 'UUID': UUID指定要掛載的設備

               -B, –bind: 綁定目錄到另一個目錄上

               查看內核追蹤到的已掛載的所有設備:cat /proc/mounts

       C-o的常用選項:

             -o options(掛載文件系統的選項),多個選項使用逗號分隔

async:異步模式

sync:同步模式,內存更改時,同時寫磁盤

atime/noatime:包含目錄和文件

diratime/nodiratime:目錄的訪問時間戳

auto/noauto:是否支持自動掛載,是否支持-a選項

exec/noexec:是否支持將文件系統上運行應用程序

dev/nodev:是否支持在此文件系統上使用設備文件(devmkdir /mnt/sda3/cdrom ;mknod cdrom b 11 0;mount /dev/sda3/cdrom /media/

suid/nosuid:不否支持suidsgid權限

remount:重新掛載

ro:只讀

rw:讀寫

user/nouser:是否允許普通用戶掛載此設備,默認管理員才能掛載

acl:啟用此文件系統上的acl功能(在CentOS6上系統安裝完成后新分出來的分區是不啟用acl的,此處雖然可以掛載時生效啟用acl,但不是永久有效的,建議還是用tune2fs -o acl /dev/sda3 

              Defaults:相當于rw, suid, dev, exec, auto, nouser, async

               

  

演示:分區,格式,掛載

  分區:

  blob.png

  blob.png

  blob.png

                

  格式化:

  blob.png

  blob.png         

  blob.png         

           

  分區掛載:

  blob.png

  blob.png         

原創文章,作者:Aaron_wang,如若轉載,請注明出處:http://www.www58058.com/40200

(3)
Aaron_wangAaron_wang
上一篇 2016-08-26
下一篇 2016-08-26

相關推薦

  • LINUX課堂筆記(第一周)

    2018.03.05 LINUX: 切換虛擬終端:CTRL+ALT+F[1-6] 查看當前得終端設備命令:tty 查看內存: cat /proc/meminfo free -h 查看分區: cat /proc/partitions lsblk 查看CPU: lscpu cat /proc/cpuinfo 查看版本 cat /etc/centos-releas…

    Linux干貨 2018-03-15
  • OpenSSL用法詳解

    OpenSSL用法詳解 OpenSSL:        組件:libcrypto,libssl                 openssl &nb…

    Linux干貨 2016-09-23
  • linux 系統啟動流程

    假設以個人架設的linux主機為例:當你按下電源鍵之后,計算機硬件會主動讀取BIOS來加載硬件信息及進行硬件系統的自我測試,之后系統會主動讀取系統第一個可啟動的設備,此時就可以讀入引導裝載程序了。 引導程序可以指定使用哪個內核文件來啟動,并實際加載內核到內存中解壓縮與執行,此時內核就能夠開始在內存內活動,并檢測所有硬件信息,與加載適當的驅動程序來使這部主機開…

    Linux干貨 2016-09-12
  • 基于mysql虛擬用戶認證?

    虛擬用戶:                             用戶賬號存儲于何處? …

    Linux干貨 2016-10-17
  • 馬哥教育網絡班21期+第7周課程練習

    1、創建一個10G分區,并格式為ext4文件系統; (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;(2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; [root@itop ~]# fdisk /dev/sda&nbsp…

    Linux干貨 2016-08-30
  • vim編輯器

    vim編輯器三種模式轉換 G跳到尾行 gg:跳到首行 H:跳到當前頁的首行 L: 跳到當前頁的尾行 M: 跳到當前而的中間行 dd: 刪除光標所在的行 #dd:多行刪除 yy:復制行 #yy: 復制多行 ? Y: 復制整行 cc:刪除當前行并輸入新內容 #cc:刪除多行 C:刪除當前光標到行尾,并切換成插入模式 修改配置文件 全局: /etc/vimrc 用…

    2017-08-05
欧美性久久久久