第七周

1、創建一個10G分區,并格式為ext4文件系統;

   (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;

第一步先在磁盤上創建分區:fdisk /dev/sdc

n –> e –> 5 –> default –> +10G –> w

第二步內核加載:partx -a /dev/sdc執行兩遍

第三步創建文件系統:mke2fs -t ext4 -b 2048 -m 2 -L MYDATA -o acl /dev/sdc5

   (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳;

mount  -o noexec,atime /dev/sdc5 /data/mydata

 

 

 

2、創建一個大小為1Gswap分區,并創建好文件系統,并啟用之;

第一步先在磁盤上創建一個1Gswap分區:fdisk /dev/sdc6

n –> e –> 6 –> default –> +1G –> t –> 82 –>w

第二步內核加載:partx -a /dev/sdc執行兩遍

第三步創建swap文件系統:mkswap /dev/sdc6

第四步查看系統內存空間:free -h或是cat /proc/swaps

第五步開起swap交換分區:swap on /dev/sdc6 ;注:加 -a 表示定義在/etc/fstab/   文件上的所有swap設備

第六步查看和關閉:free  swapoff /dev/sdc6

 

 

 

3、寫一個腳本

   (1)、獲取并列出當前系統上的所有磁盤設備;

   (2)、顯示每個磁盤設備上每個分區相關的空間使用信息;

#!/bin/bash

 fdisk -l | grep “^/dev/sd.*” | cut -d” ” -f 1

 df -h | grep “/dev/sd.*”

 

 

 

4、總結RAID的各個級別及其組合方式和性能的不同;

獨立磁盤冗余陣列(RAID, Redundant Array of Independent Disks),舊稱廉價磁盤冗余

陣列(Redundant Array of Inexpensive Disks).RAID最初的基本思想是把多塊相對便宜的硬盤組織結合起來,成為硬盤陣列組,使組合成的這個陣列組的性能超過一塊價格昂貴、容量巨大的硬盤。但隨著RAID的發展,人們發現組成磁盤陣列事實上非常昂貴,于是折衷把“Inexpensive”改為“Independent”

對于磁盤性能來說,增強性能意味著提高IO能力,即單位時間內的數據處理量更

大,說白了就是提高處理速度。對于數據可靠性來說,增強可靠性意味著提高容錯能力及磁盤冗余能力,這樣磁盤損壞了數據還能正常存儲。除此之外,RAID相比單塊磁盤還有增加磁盤容量、增強數據集成度的好處。

RAID提高IO能力是通過磁盤并行讀寫實現,而提高耐用性(增強數據可靠性)則

是通過磁盤冗余來實現。

總結來說,獨立磁盤冗余陣列(RAID, Redundant Array of Independent Disks)就是通過

把多塊磁盤組織起來,以實現增強磁盤讀/寫性能(即增大處理量)、增強容錯功能及磁盤冗余能力、增強數據集成度、增大容量的功能,這是相比于單塊磁盤而言的。操作系統將磁盤陣列邏輯為一個硬盤,因此對于用戶來說只需知道這是可存儲的一塊硬盤即可。

RAID各級別特性

磁盤陣列RAID有標準RAID及混合RAID。以下介紹不同版本的RAID.

標準RAID

RAID-0

    RAID-0又稱條帶卷(strip)RAID-0是將多塊硬盤(兩塊以上)平行組織起來當做一塊硬盤使用,將數據用RAID的控制器分割成chunk后條帶化地存儲進多塊硬盤中。在所有級別的RAID中,RAID-0的讀、寫性能最佳。理論上,RAID-0的讀寫性能是單塊硬盤的N倍,事實上受到controller分割或組合chunk在時間上的限制。但是,RAID-0是用降低數據存儲可靠性換來存儲器讀、寫性能的提升,因此RAID-0既不具備容錯能力,也沒有冗余能力,只要有一塊硬盤損壞,則整個系統上的數據都會丟失。所以在對數據安全性要求不高的場合下才會使用RAID-0

RAID-0特點總結如下:

(1)讀、寫性能提升

(2)可用空間:N*min(S1,S2,…)

(3)無容錯/無冗余能力

(4)最少磁盤數:2,2+

 

RAID-1

    RAID-1又稱鏡像卷,即將多塊硬盤(兩塊以上)組織起來,當開始存儲數據時,將要存儲的數據復制成多份,分別存儲進不同的磁盤中。因此,雖然使用RAID-1在讀性能上有所提升,但寫性能略有下降。但使用RAID-1還有一個好處,那就是數據存儲的可靠性最佳,因為同樣的數據在硬盤級別上存儲了多份。

RAID-1特性總結如下:

(1) 讀性能提升、寫性能略有下降

(2) 可用空間:1*min(S1,S2,…)

(3) 有容錯、冗余能力:(N-1)塊硬盤

(4) 最少磁盤數:2, 2+

 

RAID-2

    RAID-2RAID-0的改良版,其以漢明碼(Hamming Code)的方式對數據進行線性編碼并存儲至不同硬盤中,并加入了錯誤修正碼(ECC,Error Correction Code),因此存儲的數據量比原始數據量大一些。RAID-2至少需要3塊硬盤,雖然提高了數據可靠性,但使讀、寫性能大大下降,而且RAID-2具體實施技術復雜,因此在商業環境中很少使用。

 

RAID-3

    RAID-3采用Bitinterleaving(數據交錯存儲)技術,將數據進行編碼后,檢查這些數據的同位置比特,并將同位置的比特存儲分別獨立存儲在一塊硬盤上。缺點是讀取一小段數據可能需要對所有硬盤進行訪問,導致讀、寫性能大大下降,因此一般RAID-3適于需要讀取大量數據時使用。

 

 

    RAID-4

    RAID-4專門用一塊硬盤當做校驗盤,校驗盤上存儲的是校驗碼(可以是數據異或的結果)RAID-4可以說是對RAID-1在存儲性能上的改進,但問題是每次訪問數據時都需要從校驗盤上取出對應的同比特數據進行核對,因此對校驗盤來說可能會造成系統IO性能瓶頸,而這一缺陷也限制了RAID-4的存儲性能。除此之外,RAID-4還有一個缺陷,那就是最多只能損壞一塊硬盤。當有一塊硬盤損壞時,工作狀態為降級模式。

RAID-4總結如下:

(1) 除校驗盤外,讀、寫性能提升

(2) 可用空間:(N-1)*min(S1,S2,…)

(3) 有容錯能力:1塊硬盤

(4) 最少磁盤數:33+

 

    RAID-5

    RAID-5采用了循環存儲校驗碼的機制,力求兼顧磁盤讀、寫性能及數據可靠性,可視為RAID-0RAID-1的折衷方案或者是對RAID-4存儲性能這一問題的改進。

    RAID-5校驗碼存放有左對稱和有對稱兩種布局,一般采用左對稱布局。RAID-5至少需要3塊磁盤,但RAID-5RAID-4一樣,最多只允許1塊硬盤損壞,因此數據存儲的安全性依然不夠高,后來發展出了以下要介紹的RAID-6。另外,RAID-5RAID-4相同,當有一塊硬盤損壞時,工作為降級模式。

 

RAID-5特性總結如下:

(1) 讀、寫性能提升

(2) 可用空間:(N-1)*min(S1,S2,…)

(3) 有容錯能力:1塊磁盤

(4) 最少磁盤數:3,3+

 

 

 RAID-6

    相對于RAID-5來講,RAID-6也采用了循環存儲校驗碼的機制,不同的是,RAID-6相當于使用兩塊校驗盤來存儲呢校驗碼,因此任意兩塊硬盤損壞不會影響數據的完整性,數據存儲的可靠性非常高。

(1) 讀、寫性能提升

(2) 可用空間:(N-2)*min(S1,S2,…)

(3) 有容錯能力:2塊硬盤

(4) 最少磁盤數:4, 4+

 混合RAID

    RAID-10

    RAID-10先將多塊硬盤兩兩一組做成RAID-1(即鏡像卷),再把所有的RAID-1做成RAID-0(即條帶卷)。這種存儲方式比較可靠。

RAID-10特性總結如下:

(1) 讀、寫性能提升

(2) 可用空間:N*min(S1,S2,…)/2

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

(4) 最少磁盤數:4, 4+

 

RAID-01

    先把多塊硬盤分成兩組做成RAID-0(即條帶卷),再把這兩組做成RAID-1(即鏡像卷)。RAID-01只要有一個硬盤損壞,同組RAID-0的其他硬盤將停止工作,只剩下其他組的硬盤工作。如下圖所示,即使第一組RAID-0中的Disk0和第二組RAID-0Disk3同時損壞,因為每組RAID-0的控制器分割成chunk的機制不同,所以同樣無法恢復數據,數據可靠性很低。

RAID-01特性總結如下:(m代表RAID-0的組數)

(1) 讀性能提升,寫性能略有下降

(2) 可用空間:N*min(S1,S2,…)/m

(3) 有容錯能力:最多只允許(m-1)組硬盤損壞

(4) 最少磁盤數:4, 4+

 

 

RAID-50

    RAID-50是先把多塊硬盤做成RAID-5,再把各RAID-5組做成RAID-0。每組RAID-5至少需要3塊硬盤,因此構成多組RAID-5至少需要6塊硬盤。例如:有6塊硬盤,每3塊硬盤構成一個RAID-5組,再把兩組RAID-5組成RAID-0。

spacer.gif

  

RAID-60

    RAID-60是先把硬盤做成RAID-6,再把各RAID-6組做成RAID-0。每組RAID-6至少需要4塊硬盤,因此構成多組RAID-6至少需要8塊硬盤。例如:有12塊硬盤,每4塊硬盤構成一個RAID-6組,再把兩組RAID-6組成RAID-0

 JBOD

    JBOD(Just a Bunch Of Disks)只是將多塊硬盤的空間合并為一個大的連續邏輯的硬盤空間,其可用空間為組合成JBOD的各個硬盤空間之和。不具備容錯、冗余能力,數據可靠性和RAID-0相當。

 

RAID-7

    RAID-7Storage Computer Corporation的專利硬件產品名稱,并非公開的標準。RAID-7RAID-3、RAID-4的強化版,存儲性能極為強大。

需要注意的是,RAID2、3、4較少實際應用,因為RAID5已經涵蓋了所需的功能,因此RAID23、4大多只在研究領域有實現,而實際應用上則以RAID5為主。

 

 

 

5、創建一個大小為10GRAID1,要求有一個空閑盤,而且CHUNK大小為128k;

第一步創建210G的分區:fdisk /dev/sdc

n –> e –> 7 –> default –> +10G –> t –> 7 –> fd

n –> e –> 8 –> default –> +10G –> t –> 8 –> fd –> w

第二部內核加載分區:partx -a /dev/sdc 執行兩遍

第三部分查看RAID的詳細信息:mdadm -D

第四步創建RAID1mdadm -C md0 -n 1 -x 1 -a yes -c 128 -l raid1 /dev/sdc7 /dev/sdc8

第五步創建文件系統:mke2fs -t ext4 /dev/md0

第六步掛載:mount /dev/md0 /md0

 

 

 

6、創建一個大小為4GRAID5設備,chunk大小為256k,格式化ext4文件系統,要求可開機自動掛載至/backup目錄,而且不更新訪問時間戳,且支持acl功能;

第一步創建32G大小的分區:fdisk /dev/sdc

n –> e –> 9 –> default –> +2G –> t –> fd

n –> e –> 10 –> default –> +2G –> t –> fd

n –> e –> 11 –> default –> +2G –> t –> fd –> w

第二部內核加載分區:partx -a /dev/sdc 執行兩遍

第三步創建RAID5mdadm -C md1 -n 3  -c 256 -a yes -l raid5 /dev/sdc{9,10,11}

第四步創建文件系統:mke2fs -t ext4 /dev/md1

第五步開機自動掛載:vi /etc/fstab

底行輸入:UUID=”UUID” /dev/backup ext4 acl,noatime 0 0

 

 

 

7、寫一個腳本

   (1) 接受一個以上文件路徑作為參數;

   (2) 顯示每個文件擁有的行數;

   (3) 總結說明本次共為幾個文件統計了其行數;

#!/bin/bash

#

if [ $# -le 2 ] ;then

    echo “Wrong is numher of parameter.”

    exit 1

else

     for i in $*;do

           wc -l $i

     done

fi

echo “Couts the number of rows for $# files.”

 

 

8、寫一個腳本

   (1) 傳遞兩個以上字符串當作用戶名;

   (2) 創建這些用戶;且密碼同用戶名;

   (3) 總結說明共創建了幾個用戶;

#!/bin/bash

#

if [ $# -le 1 ];then

      echo “Wrong is number of parameter.”

      exit 1

else

     for i in $*;do

          if [[ “$i” < 2 ]];then

                      echo ” $i is at least two characters.”

                       exit 2

           elif id $i &> /dev/null;then

                        echo “$i is exists.”

                          exit 3

           else

                          useradd $i

                          echo “$i” | passwd  –stdin  $i  &>/dev/null

             fi

    done

fi

echo “Add $# users.”

9、寫一個腳本,新建20個用戶,visitor1-visitor20;計算他們的ID之和;

#!/bin/bash

sum=0

for i in {1..20};do

              if id version$i &> /dev/null;then

                      echo “version$i already exists, create terminated.”

                      exit 1

              else

                        useradd version$i

             fi

done

 

for j in  $(cat /etc/passwd | grep “^version” |  cut -d: -f 3);do

                  sum=$(($sum +$j))

done

echo $sum

原創文章,作者:N26-xiaocong,如若轉載,請注明出處:http://www.www58058.com/76202

(0)
N26-xiaocongN26-xiaocong
上一篇 2017-05-18
下一篇 2017-05-18

相關推薦

  • N26—第三周

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@localhost ~]# who | cut -d ' ' -f 1 |sort -u l_cong root (unknown)   2、取出最后登錄到當前系統的用戶的相關信息。 [l_cong@localhost ~]$…

    Linux干貨 2017-02-15
  • Linux 入門(二)

    又一個周的時間過去了,覺得時間過的好快的呢,大概是因為沉迷于學習吧(害羞臉),在這一周里學習了不少東西呢,下面就來總結一下吧 (1)    cp 復制 如果只是單純的敲cp復制文件而不加任何選項的時候,如果目的目錄文件已經存在,就會直接覆蓋,而不會出現任何提示信息,而當在實際操作時,就算不加 –i選項,也會提示要不要覆蓋文件 原…

    2017-07-22
  • mount命令使用詳解

    一、掛載(mount)初識     1.什么是掛載         將額外文件系統與根文件系統某現存的目錄建立起關聯關系,進而使得此目錄作為其它文件訪問入口的行為。     2.常用的文件系統類型 &…

    Linux干貨 2016-09-01
  • 推薦-HA專題: 編譯安裝并配置DRBD

    HA專題: 編譯安裝并配置DRBD 前言 實驗環境 DRBD介紹 安裝前準備工作 獲取并編譯安裝DRBD 配置DRBD 分區 配置文件 啟動并設置DRBD 格式化并掛載 驗證冗余性 總結 前言 上篇我們講到使用corosync+pacemaker實現MySQL高可用, 但是NFS容易成為單點故障從而導致數據丟失等嚴重問題, 我們可以使用drbd來實現MySQ…

    Linux干貨 2016-04-12
  • linux文件管理命令及用法

    Linux目錄和路徑   說到linux的文件管理,就不得不說文件的路徑,在linux系統中,路徑分為絕對路徑和相對路徑:絕對路徑是從根目錄/開始的,相對路徑是以 . 或 ..開始的.  .  :表示當前目錄; ..  :表示當前目錄的上一級目錄; –   :表示前一個工作目錄; ~ &…

    Linux干貨 2016-11-06
  • 第一天,學習

    好好學習,天天向上

    Linux干貨 2016-08-08

評論列表(1條)

  • luoweiro
    luoweiro 2017-06-26 22:58

    對于raid相關的知識很多面試過程都會問到,尤其是他們之間的對比,希望能通過表格方式去看究竟差別在哪,而不僅僅是文字羅列。

欧美性久久久久