歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> 關於Unix

Linux下采用軟件實現RAID

數據的 安全 性是人們在使用計算機中最重要的問題之一。通常情況下,人們會在 服務器 環境中采用硬盤鏡像技術,以達到數據的雙重備份。同樣在 Linux 環境下,我們可以采用這種技術。在Linux環境下,我們可以采用Raidtool工具,不僅可以將兩個硬盤進行鏡像。 數據的安全性是人們在使用計算機中最重要的問題之一。通常情況下,人們會在服務器環境中采用硬盤鏡像技術,以達到數據的雙重備份。同樣在Linux環境下,我們可以采用這種技術。在Linux環境下,我們可以采用Raidtool工具,不僅可以將兩個硬盤進行鏡像。還可以制作軟RAID0、RAID4、RAID5。說是軟RAID,是因為通常情況下,RAID盤是通過專用的RAID卡進行的。而在Linux 環境下,我們可以利用軟件raidtool達到RAID功能。 


所以稱為軟RAID。建立並使用RAID盤有以下幾種方法: 


第一種方法: 


自行下載並編譯raidtools軟件包,較早版本的raidtool軟件包名為md,現在已正式更名為raidtool。下載地址: 


中國自由軟件庫,通過搜索引擎查找下載。 


如果你已經從網上下載了raidtools-0.41.tar.gz軟件包。解開後,自行編譯,步驟如下: 


$gunzip -d raidtools-0.41.tar.gz 


$tar -xvf raidtools-0.4.1.tar 


在使用raidtools之前,首先要知道目前正在使用的核心是否支持md。如果你正在使用的核心是2.0.x,並且不是 


自己編譯過的話,大多數情況下是支持軟RAID的。如果不能確定,則應自己編譯核心。在配置時,應選擇對md的支持。 


確定了正在使用的核心支持RAID。則編譯raidtools軟件包如下: 


$cd raidtools-0.41 


$./configure 


$ make 


$make install ##make install在/dev下產生md0-md3共4個設備。 


OK, 安裝完成。 


在使用raidtool前,首先決定自己要使用的RAID的種類。目前使用raidtool可以作RAID0,RAID1,RAID5。 


由於只有兩塊硬盤而無法使用RAID5,除了RAID5外,還可以選擇作linear模式或RAID0。筆者選擇了作RAID0。 


以下為制作過程: 


首先,關機,將兩塊小硬盤分別加到第一個IDE控制器的slave接口上。將第二塊硬盤接到第二個IDE控制器上的slave 


接口上(筆者這台機器上的CDROM接在第二個IDE控制器的master上)。 


加電啟動系統,以root登錄,運行以下命令對硬盤進行分區: 


#fdisk /dev/hdb 


將全部硬盤劃分給一個主分區,建立一個/dev/hdb1分區。 


#fdisk /dev/hdd 


同樣將全部硬盤劃分給一個主分區,建立一個/dev/hdd1分區。 


之後: 


#/sbin/mdcreate raid0 -c4k /dev/md0 /dev/hdb1 /dev/hdd1 


當然,為了提高訪問速度,你可以將硬盤進行比較細致的劃分,盡可能將分區合理分布在不同的硬盤上。然後再用 


mdcreate將它們組合成一個mdx(x:1,2,3) 


為了使用新建立的RAID設備,首先應啟動它: 


#/sbin/mdadd -ar 


之後,查看/proc/mdstats文件的內容,以檢查RAID0的狀態。 


#cat /proc/mdstats 


系統顯示: 


personalities : [1 linear] [2 raid0] 


read_ahead not 8092 sectors 


md0 : active raid0 hdb1 hdd1 xxxx blocks 8k chunks 


md1 :inactive 


md2 :inactive 


md3 :inactive 


這表示,新建的RAID0已經可以正常運行了。為了使用新RAID盤,還應在新盤上建立新的文件系統,建立過程如下: 


#mke2fs /dev/md0 ##注:在新的存儲設備上建立ext2文件系統 


建立了新的文件系統,再將它mount到根下的某個目錄上,就可以正式使用了。安裝方法如下: 


#mount  /dev/md0  /opt ##注:/opt為筆者在根分區建的一個mount點 


當然,如果有必要的話,你還可以用raidtools建立raid5。以提高數據的可靠性。 


最後,將RAID0的加載及文件系統的加掛全加入到init.sysinit文件中,這樣,只要系統一啟動,首先就執行RAID, 


用戶就不必再手工安裝了。 


用戶應將以下兩個命令加入到init.syinit文件中。 


/sbin/mdrun -ar 


mount /dev/md0 /opt 


當然,如果你不覺得麻煩,也可以手工運行以上命令,以手動方式啟動軟RAID盤。 


第二種方式:如果你安裝的Linux發行版較新,其中已經帶有raidtool工具,那麼就不必再下載軟件並自己編譯了。 


使用時可以這樣處理: 


首先建立一個文件/etc/raidtab(以制作raid0為例),文件內容如下: 


raiddev /dev/md0 


raid-level 0 


nr-raid-disks 2 


persistent-superblock 1 


chunk-size 4 


device /dev/hdb1 


raid-disk 0 


device /dev/hdd1 


raid-disk 1 


然後,運行以下命令: 


#mkraid /dev/md0 


這樣就可以生成一個新的設備:/dev/md0。 


啟用軟raid方法: 


#raidstart /dev/md0 


其余操作同上。 


如果你正在使用的發行版很新,可能以下兩種情況都不不適用於你,那麼,你可以采用以下方式使用軟RAID。 


筆者的一台PC上安裝了Red hat Linux 6.1,自行編譯raidtool0.42,0.50beta2時,先是找不到所要的頭 


文件,經筆者將所需頭文件復制後,編譯仍然通不過。原來,由於新的發行版采用了一系列新的函數,情況稍有 


一點不同。不過,新的發行版中,提供了raidtools,在/sbin目錄中,有raidtools的一系列工具,其中有 


mkraid,raid0run,raidstop,raidstart等一組工具。如果你想自己編譯,可以從中國自由軟件庫中查找到 


了最新版為0.9的raidtool。自行編譯了0.9版的raidtool。編譯正常通過。 


新版的raidtool稍有一點不同,筆者使用系統自帶的raidtool,制作軟RAID方法如下: 


1、 首先建立文件/etc/raidtab,2、 文件內容如下: 


raiddev /dev/md0 


raid-level     0 


nr-raid-disks     2 


persistent-superblock    0 


chunk-size     8 


device      /dev/hdb1 


raid-disk     0 


device      /dev/hdd1 


raid-disk     1 


  


3、 生成軟raid設備4、 ,5、 運行以下命令: 


# mkraid -c /etc/raidtab /dev/md0 


之後,運行以下命令,以查看目前RAID的運行狀態。 


[root@rh61 /proc]# cat mdstat 


如果系統顯示如下: 


Personalities : [raid0] 


read_ahead 1024 sectors 


md0 : active raid0 hdd1[1] hdb1[0] 2202416 blocks 8k chunks 


unused devices: 


表示,你的RAID0已正常運行了。 


3、建立新的文件系統 


現在,為了使用新生的設備,我們應在新的RAID盤上建ext2文件系統,建立新的文件系統的命令如下: 


[root@rh61 /sbin]# mkfs.ext2 /dev/md0 


經過大約兩三分鐘,新的文件系統正確生成。現在就可以開始使用它了。使用方法如下: 


[root@rh61 /sbin]# mount -t ext2 /dev/md0 /opt 


將/dev/md0設備加掛(mount)到/opt安裝點上。 


此後,筆者在此軟RAID盤上安裝了Sybase 11.0.3.3,經過測試,發現整個RAID0系統的性能還不錯。 


最後,在使用Raidtools時應注意:采用raidtool制作軟RAID,最好不要在一塊硬盤上分多個分區,再將這 


些分區同raidtool制作成RAID。因為這樣做不但不會提高硬盤的訪問速度,反而會降低整修系統的性能。要 


使用軟RAID盤,最好是將一個硬盤分成多個分區,再將不同硬盤的分區制作成軟RAID盤。再有,用戶最好不 


要將/usr目錄放置到RAID盤上。如果RAID盤出錯,那你可就完了。系統的交換分區最好也不要放到RAID盤上, 


盡管有人認為這樣可以提高訪問速度,但是,筆者擔心,萬一你在使用系統時,交換分區上有交換了很多系統時, 


這時忽然RAID盤出錯了,那可就完了。

Copyright © Linux教程網 All Rights Reserved