安全的動態磁碟策略
linux核心可以類比RAID控制器,用來管理硬碟,但只支援層級0,1,4,5
RAID0 又稱striping
把連續的資料訪問分散到多個磁碟上來提高儲存效能,速度最快,但最危險。
RAID1 又稱Mirror或Mirroring
最大限度的保證使用者資料的可用性和可修複性,使用者資料100%自動複製到另外一個硬碟上,速度稍慢,因為要同時寫多個硬碟。
RAID5 最少需三個硬碟
不對儲存的資料時行備份,而把資料和對應的同位資訊分別儲存在不同的磁碟上,當一個磁碟資料發生損壞後,利用剩下的資料和相應的同位資訊去恢複被損壞的資料。
RAID0+1 也稱RAID10
結合RAID0和RAID1的優點,很多公司在應用
Linux中的軟體RAID
1.預設核心已支援軟體RAID控制器
2.需用到raidtools工具來建立管理RAID裝置,但Fedora Core5不使用這個,而用mdadm工具。
3.軟體RAID裝置檔案名稱:/dev/mdN (N=0,1,2…)
4.軟體RAID裝置可以當分區看待,需格式化後掛載
#mkfs.ext3 /dev/md1
#mount /dev/md1 /opt
使用mdadm來建立和管理RAID
RAID0
添加硬碟
RAID裝置的成員是硬碟分區,需先對硬碟分區,分區不能在同一物理硬碟上
#fdisk /dev/sdb
n建立主要磁碟分割,t分區類型fd,w寫儲存
#fdisk /dev/sdc
#mdadm –Cv /dev/md0 –l0 –n2 /dev/sdb1 /dev/sdc1
-C,--create 建立一個新的陣列
-v,verbose 顯示細節
/dev/md0 陣列裝置的名稱
-l,--level= 陣列層級,如0,1,4,5,6
-n,--raid-devices= 陣列活動數目
/dev/sd[bc]1 陣列包含的裝置列表
#more /proc/mdstat 查看陣列狀態
#mkfs.ext3 /dev/md0 建立檔案系統
#mount /dev/md0 /mnt/raid
讓系統自動掛載,修改/etc/fstab,添加
/dev/md0 /mnt/raid ext3 defaults 0 0
RAID5 故障類比
前面已建立了一個RAID5裝置md0
#mdadm –Cv /dev/md0 –l5 –n3 –x1 –c128 /dev/sd[b,c,d,e]1
1.將/dev/sdb1標記為已損壞的裝置
#mdadm /dev/md0 –f /dev/sdb1
這時陣列開始重構和恢複資料
2.移除損壞的裝置
#mdadm /dev/md0 –r /dev/sdb1
3.將新裝置添加到陣列
注意,一:對硬碟正確分區,二:添加裝置名稱要與被移除的一致,如sdb1
#mdadm /dev/md0 –a /dev/sdb1
組建組態檔案/etc/mdadm.conf
格式如下:
DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 ARRAY /dev/md10 level=raid10 num-devices=4 UUID=12334343dkfj
其中UUID資訊通過#mdadm –D /dev/md10得到
#mdadm –Ds 掃描該檔案資訊
常用陣列維護命令
1.啟用陣列
#mdadm –As /dev/md0
-A 啟用已存在的陣列
-s 以/etc/mdadm.conf為依據
沒有建立mdadm.conf檔案,則採用如下方法啟用
#mdadm –A /dev/md0 /dev/sd[bc]1
2.停止陣列
#mdadm –S /dev/md0
3.顯示陣列詳細資料
#mdadm –D /dev/md0