Linux高級文件系統管理之磁盤配額、軟RAID及LVM

高級文件系統管理之磁盤配額、軟RAID及LVM

 

本章內容:

設定文件系統配額

設定和管理軟RAID設備

配置邏輯卷

 

一、文件系統配額:

    執行軟限制(soft limit

硬限制(hard limit

    注:磁盤配額只能針對分區控制有效,不能對整個磁盤控制,也不能跨分區控制。

    1、初始化:

分區掛載選項:usrquota、grpquota

初始化數據庫:quotacheck

2、執行:

開啟或者取消配額:quotaonquotaoff

直接編輯配額:edquota username

shell中直接編輯:(命令建立配額限制)

setquota usename 4096 5120 40 50 /home

定義原始標準用戶:edquota -p user1 user2

blob.png

3、報告:

用戶調查:quota username

blob.png

配額概述:repquota /home

blob.png

其它工具:warnquota 

 

事例:將home目錄獨立出來單獨的分區,限制用戶的使用。

1)先創建分區,如下圖的分區sda6

  blob.png

2)命令同步系統的新增加分區,如下圖:

  blob.png

3)命令格式化新分區:

   blob.png

4)創建臨時掛載點,進行數據的遷移,如下圖:

  blob.png

5)遷移home目錄的數據

  blob.png

6)再次將遷移好數據的分區掛載到空目錄home下:

  blob.png

7)修改/etc/fstab配置文件,讓機器啟動自動檢測掛載:

  blob.png

8)再次修改/etc/fstab配置文件,對新分區啟用配額初始化,如下圖:

  blob.png

9)取消和刪除臨時掛載點:

  blob.png

10)關閉selinux

  blob.png

11reboot

12)系統啟動完成后,命令初始化配額數據庫和指定生效的分區掛載的目錄:

  blob.png

13)設置用戶的配額限度:

  blob.png

  blob.png

14)切換用戶測試:

  blob.png

二、RAID

1、什么的RAID?

  多個磁盤合成一個“陣列”來提供更好的性能、冗余,或者兩者都提供。

2、使用RAID的好處:

  提高IO能力:磁盤并行讀寫

  提高耐用性:磁盤冗余來實現

  級別:多塊磁盤組織在一起的工作方式有所不同

3、RAID實現的方式:

  外接式磁盤陣列:通過擴展卡提供適配能力

  內接式RAID:主板集成RAID控制器;安裝OS前在BIOS里配置

4、RAID的級別了解:

1RAID0(條帶卷)

   讀、寫性能提升;

   可用空間:N*min(disk1,disk2,…)

   無容錯能力(壞掉其中任何一塊硬盤都不行)

   最少/多磁盤數:2, 2+

   blob.png

(2RAID1(鏡像卷)

  讀性能提升、寫性能略有下降(因為同一份數據要寫兩次);

  可用空間:1*min(drive1,drive2,…)

  有冗余能力(可以出現壞掉其中的一塊磁盤)

  最少/最多磁盤數:2, 2N

 沒有應對防誤刪的能力。

 blob.png

(3RAID4

 讀、寫性能提升

 可用空間:(N-1)*min(disk1,disk2,…)

 有容錯能力:允許最多1塊磁盤損壞

 最少/最多磁盤數:3, 3+

 多塊數據盤異或運算值,存于專用校驗盤

 可以通過校驗盤的數據來應對其中的一塊硬盤壞掉時,更換上新硬盤時可以恢復時間;但是由于校驗盤的長時間讀寫,比較容易壞掉。

 blob.png

4)、RAID5:(帶有校驗的條帶機)

    讀、寫性能提升

    可用空間:(N-1)*min(disk1,disk2,…)

    有容錯能力:允許最多1塊磁盤損壞

    最少/最多磁盤數:3, 3+

    據塊P為校驗位(當其中的一塊硬盤壞掉時,更換上新的硬盤時,會自動通過校驗位恢復相應的數據)

  blob.png

5)、RAID6讀、寫性能提升

   可用空間:(N-2)*min(disk1,disk2,…)

   有容錯能力:允許最多2塊磁盤損壞

   最少/最多磁盤數:4, 4+

   數據塊P、Q為校驗位(當其中的兩塊硬盤壞掉時,更換上新的硬盤時,會自動通過校驗位恢復相應的數據)

  blob.png

6RAID10混合類型級別:是兩兩成對組成了RAID1,再做RAID0

  (相當于一份數據先RAID0分開兩份寫,再RAID1同時寫兩份)

   讀、寫性能提升

   可用空間:N*min(disk1,disk2,…)/2

   有容錯能力:每組鏡像最多只能壞一塊

   最少/最多磁盤數:4, 4+

  blob.png

7RAID01混合類型級別:是兩兩成對組成了RAID0,再做RAID1

(相當于一份數據先RAID1同時寫兩份,再RAID0分開寫兩份)

  讀、寫性能提升

  可用空間:N*min(disk1,disk2,…)/2

  有容錯能力:每組鏡像可以全壞掉,但是只能壞其中的一組,如果兩組同時出現壞掉其中的一塊則不可以。

  最少/最多磁盤數:4, 4+

 blob.png

8RAID7:可以理解為一個獨立存儲計算機,自身帶有操作系統和管理工具,可以獨立運行,理論上性能最高的RAID模式

9JBODJust a Bunch Of Disks

   功能:將多塊磁盤的空間合并一個大的連續空間使用

   可用空間:sum(S1,S2,…)

 

三、mdadm命令:為軟RAID提供管理界面

1、RAID設備可命名為/dev/md0、/dev/md1、/dev/md2、/dev/md3等等

2、mdadm:模式化的工具

命令的語法格式:mdadm[mode] <raiddevice> [options] <component-devices>

3、支持的RAID級別:LINEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10

4、模式:創建:-C;裝配: -A;監控: -F;管理:-f, -r, –;-D:顯示raid的詳細信息(mdadm -D /dev/md#)。

5C:創建模式

-n #: 使用#個塊設備來創建此RAID

-l #:指明要創建的RAID的級別

-a {yes|no}:自動創建目標RAID設備的設備文件

-c CHUNK_SIZE: 指明塊大小

-x #: 指明空閑盤的個數?

6、管理模式:

-f: 標記指定磁盤為損壞

-a: 添加磁盤

-r: 移除磁盤

7、觀察md的狀態:

cat /proc/mdstat

9、創建軟RAID步驟:

使用mdadm創建并定義RAID設備:#mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

 用文件系統對每個RAID設備進行格式化:#mke2fs -j /dev/md0

10、軟RAID測試和修復:

測試RAID設備:使用mdadm檢查RAID設備的狀況:#mdadm –detail|D /dev/md0

  增加新的成員:#mdadm -G /dev/md0 -n4 -a /dev/sdf1

模擬磁盤故障:#mdadm /dev/md0 -f /dev/sda1

  移除磁盤:#mdadm /dev/md0 -r /dev/sda1

  從軟件RAID磁盤修復磁盤故障:替換出故障的磁盤然后開機;在備用驅動器上重建分區

  #mdadm /dev/md0 -a /dev/sda1

mdadm、/proc/mdstat及系統日志信息

11、軟RAID管理:

生成配置文件:mdadm -D -s >> /etc/mdadm.conf(可以避免停止后啟動不了)

停服務:mdadm -S /dev/md0

激活:mdadm -A -s /dev/md0 激活

強制啟動:mdadm -R /dev/md0

刪除raid信息:mdadm -zero-superblock /dev/sdb1

12、刪除軟RAID

    1#umount /mnt/raid 取消掛載

    2#mdadm -S /dev/md0 停止RAID設備

     blob.png

    3)刪除相應的分區,并同步到系統即可

    4#mdadm –zero-superblock /dev/sd* 清除RAID在各個磁盤分區上的信息

    5)清除/etc/fstab上的掛載信息

    6)刪除RAID的配置文件

       7)刪除掛載點目錄

 

事例:演示在CentOS6系統上做軟RAID5

1)先準備三塊磁盤

blob.png

2)先對其中的一塊磁盤進行分區,把全部的空間分成一個分區,如下圖:

(可以用分區或者用整塊磁盤來做RAID

blob.png

3)將已經分區好的磁盤分區表復制到其他磁盤即可,如下圖:

blob.png

4)需要對同步分區表的磁盤在系統上進行同步:

blob.png

5)使用命令創建RAID5,如下圖:(創建/dev/md0塊設備,-a yes是讓創建時默認回答yes-l 5是指定RAID的級別為5;-n 3是指定有幾塊磁盤分區在使用;-x 1指定有幾個磁盤分區為空閑狀態;后面跟上哪些磁盤分區組成RAID5

blob.png

blob.png

6)創建RAID5完成,效果如下圖:

blob.png

7)生成配置文件,以免出現啟動不了時可以進行恢復:

blob.png

8)格式化磁盤:

blob.png

9)修改/etc/fstab

blob.png

blob.png

10)掛載RAID5設備:

blob.png

blob.png

11)模擬其中的一個分區磁盤壞掉,測試效果如下圖:

blob.png

blob.png

12)恢復模擬損壞的磁盤分區:

blob.png

 

 

事例:刪除軟RAID

1)先取消掛載和停止RAID設備:

blob.png

2)刪除各個磁盤分區

blob.png

blob.png

blob.png

3)查看清除磁盤分區后的系統磁盤信息:

(如果是一個磁盤分了多個分區的,需要使用命令#partx -d –nr N-M /dev/sd*逐個同步;*為各個磁盤的編號)

blob.png

4)修改/etc/fstab

blob.png

5)刪除RAID配置文件:

blob.png

6)刪除掛載目錄:

blob.png

 

 

四、LVM(邏輯卷管理器)

blob.png

(注:LVM可以彈性的更改LVM的容量;刪除邏輯卷必須先刪除LV,再刪除VG,最后刪除PV

1、允許對卷進行方便操作的抽象層,包括重新設定文件系統的大小

2、允許在多個物理設備間重新組織文件系統:

 (1)將設備指定為物理卷

 (2)用一個或者多個物理卷來創建一個卷組

 (3)物理卷是用固定大小的物理區域(Physical Extent,PE)來定義的

 (4)在物理卷上創建的邏輯卷是由物理區域(PE)組成

 (5)可以在邏輯卷上創建文件系統

3pv管理工具:

 (1)顯示pv信息:(pvs:簡要pv信息顯示;pvdisplay

   blob.png

 (2)創建pvpvcreate /dev/DEVICE

 (分區需要更改分區的ID編號,則拿整個磁盤不需要去做ID的更改)

blob.png

blob.png

blob.png

blob.png

4vg管理工具:

1)顯示卷組:vgs或者vgdisplay

2)創建卷組:vgcreate vg0 /dev/sd{a6,b}

    blob.png

 (3)管理卷組:vgextend vg0 /dev/sdc

           vgreduce vg0 /dev/sdc

 (4)刪除卷組:先做pvremove,再做vgremove

5、lv管理工具:

 (1)顯示邏輯卷:lvs或者Lvdisplay

  (2)創建邏輯卷:lvcreate-L #[mMgGtT] -n NAME VolumeGroup

  (3)刪除邏輯卷:lvremove/dev/VG_NAME/LV_NAME

  (4)重設文件系統大?。?/span>fsadm[options] resize device [new_size[BKMGTEP]];

resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

blob.png

blob.png

(注:如下圖,/dev/vg0/lv0其實是一個軟鏈接)

blob.png

格式lv0邏輯卷:

blob.png

修改/etc/fstab配置文件:

blob.png

創建掛載點和掛載邏輯卷:

blob.png

5、擴展和縮減邏輯卷:

   1)擴展邏輯卷:

# lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

# resize2fs /dev/VG_NAME/LV_NAME

blob.png

blob.png

 (2)縮減邏輯卷:

# umount/dev/VG_NAME/LV_NAME

# e2fsck -f /dev/VG_NAME/LV_NAME

# resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]

# lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME

# mount

6、擴展邏輯卷卷組空間:

   1)創建物理卷:pvcreate /dev/sdc

    blob.png

 2)為卷組分配物理卷:vgextend vg0 /dev/sdc

 blob.png

 

 

  

1:創建一個可用空間為1GRAID1設備,要求其文件系統為ext4,有一個空閑盤,開機可自動掛載至/backup目錄

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

2:創建由三塊硬盤組成的可用空間為2GRAID5設備,要求其chunk大小為256k,文件系統為ext4,開機可自動掛載至/mydata目錄

blob.png

blob.png

 

3、創建lv

blob.png

blob.png

blob.png

blob.png

4、擴展lv

blob.png

5、擴展卷組:

 擴展前:

 blob.png

 擴展后:

 blob.png

 

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

(0)
Aaron_wangAaron_wang
上一篇 2016-09-01
下一篇 2016-09-01

相關推薦

  • 壓縮與解壓

        compress 命令使用“Lempress-Ziv”編碼壓縮數據文件。compress是個歷史悠久的壓縮程序,文件經它壓縮后,其名稱后面會多出”.Z”的擴展名。當要解壓縮時,可執         &nbsp…

    2017-08-14
  • 常用linux命令小計(1)

    關于linux那些事兒—常用命令小結(1) 系統相關信息 Uname –m顯示處理器的架構 Uname –r顯示正在使用的內核版本 cat /proc/cpuinfo顯示cpu的具體信息 cat /proc/version顯示內核的版本 cat /proc/swaps顯示哪些分區被使用 data顯示系統日期 cal –y顯示當年的日歷 date 021920…

    Linux干貨 2017-02-19
  • DNS中view的實現

    [root@localhost /var/named]# ll total 32 -rw-r–r–. 1 root ?root ??173 Jan 20 14:46 magedu.com.zone -rw-r–r–. 1 root ?root ??173 Jan 20 14:46 magedu.com.zone…

    2018-01-22
  • 數組

    數組 變量:存儲單個元素的內存空間 數組:存儲多個元素的連續的內存空間,相當于多個變量的集合 數組名和索引 索引:編號從0開始,屬于數值索引 注意:索引可支持使用自定義的格式,而不僅是數值格式,即為關聯索引, 八十的數組支持稀疏格式(索引不連續 聲明數組: Declare -a ARRAY_NAME Declare -A ARRAY_NAME:關聯數組 注意…

    Linux干貨 2018-01-02
  • Linux磁盤管理及其相關命令使用

    Linux磁盤及文件系統    CPU MEMORY(RAM) I/O    I/O:disks entercard    Disks:持久存儲數據    接口類型:      IDE(ata):并行 133MB/s     &n…

    Linux干貨 2016-08-26
  • 上篇博客簡單提了一下Nginx配置文件的大體組成部分,這次來好好解釋一下這些個配置文件。 一、main配置段 分類:    正常運行必備的配置    優化性能相關的配置    用于調試及定位問題相關的配置   …

    Linux干貨 2016-10-26

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-01 17:43

    文章內容很完整,通篇下來能讓讀者學到很多知識,繼續努力。

欧美性久久久久