Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

Linux 軟體 RAID 實戰 (一):舊版系統 raidtools 配置 RAID 0 完整流程

編輯:關於伺服器

歷史背景:從 md 到 raidtools

早期 Linux (2.0/2.2 核心) 軟體 RAID 由 MD 驅動 提供核心支援,用戶空間工具包命名為 md,後更名為 raidtools (含 mdcreate, mdadd, mdrun, mdstop 等)。適用於無 mdadm 的舊版發行版 (如 Red Hat 5.x/6.0、Debian 2.x、Slackware 4.x/7.0)。

核心前置條件

  1. 核心支援 MD:2.0.x/2.2.x 核心編譯時需啟用 CONFIG_BLK_DEV_MD=y (或模組 md_mod)。預設核心通常已包含。
  2. 編譯安裝 raidtools:
$ gunzip -d raidtools-0.41.tar.gz
$ tar -xvf raidtools-0.41.tar
$ cd raidtools-0.41
$ ./configure && make && make install
# make install 於 /dev 建立 md0-md3 四個區塊裝置節點

RAID 等級選擇與硬體準備

  • RAID 0 (Striping):效能最大化,容量加總,**零冗餘**,任一磁碟損壞導致全盤資料遺失。適合暫存、快取、可重建資料。
  • RAID 1 (Mirroring):完全鏡像,容量減半,最高冗餘。需 2 顆磁碟。
  • RAID 5 (Parity):分散式奇偶校驗,兼顧效能與冗餘,**需 ≥3 顆磁碟**。

本文實戰環境:兩顆 IDE 硬碟掛載於 Primary Slave (/dev/hdb) 與 Secondary Slave (/dev/hdd),構建 RAID 0。

完整建立流程

1. 硬體安裝與分區

# 關機安裝硬碟,開機以 root 登入
# fdisk /dev/hdb
Command: n → p → 1 → Enter → Enter → t → fd (Linux raid autodetect) → w
# fdisk /dev/hdd  (同步操作,建立 /dev/hdd1)

2. 建立 RAID 0 裝置 (mdcreate)

# /sbin/mdcreate raid0 -c4k /dev/md0 /dev/hdb1 /dev/hdd1
; -c4k 設定 chunk size 4KB (條帶大小),可依負載調整 (4K-128K)

成功輸出:mdcreate: /dev/md0 created with chunk size 4096

3. 啟動 RAID 陣列 (mdadd / mdrun)

# /sbin/mdadd -ar          ; 掃描所有持久化超級區塊,自動組裝啟動
; 或手動指定:# /sbin/mdadd /dev/md0 /dev/hdb1 /dev/hdd1
# /sbin/mdrun -p /dev/md0  ; 啟動指定陣列 (若 mdadd 未自動啟動)

4. 驗證陣列狀態

# cat /proc/mdstat
personalities : [linear] [raid0]
read-ahead not 8192 sectors
md0 : active raid0 hdb1 hdd1 2097152 blocks 4k chunks
md1 : inactive
md2 : inactive
md3 : inactive

active raid0 表示陣列正常運行,顯示成員磁碟、總區塊數、chunk size。

5. 建立檔案系統 (mke2fs)

# mke2fs /dev/md0
; 建立 ext2 檔案系統 (舊版系統預設),新版建議 mkfs.ext3 或 mkfs.ext4

6. 掛載使用

# mkdir /opt
# mount /dev/md0 /opt
; df -h 驗證掛載點容量 = 兩磁碟容量總和

開機自動啟動配置

編輯 /etc/rc.d/rc.sysinit (或 /etc/rc.local) 在網路啟動前加入:

/sbin/mdrun -ar
mount /dev/md0 /opt

或使用 /sbin/mdadd -ar + mount 組合。確保掛載點目錄預先存在。

常見問題與除錯

現象可能原因對策
mdcreate: invalid raid level核心不支援該 RAID 等級重編核心啟用對應 MD 模組 (CONFIG_MD_RAID0/1/5)
mdadd: /dev/hdb1 not found分區未建立或裝置節點缺失檢查 fdisk 分區類型為 fd;ls -l /dev/hdb1 確認節點
陣列狀態 inactive超級區塊損壞或成員磁碟順序錯誤檢查 mdadm --examine /dev/hdb1 (若有);重建超級區塊
掛載後資料損壞未建立檔案系統直接掛載必須先 mke2fs/mkfs.ext3 格式化

從 raidtools 遷移至 mdadm (現代系統)

若系統升級至含 mdadm 的版本:

  1. 備份關鍵資料
  2. 停止舊陣列:mdstop /dev/md0
  3. 建立 /etc/mdadm.conf 並匯入既有陣列:mdadm --detail --scan >> /etc/mdadm.conf
  4. 使用 mdadm 管理:mdadm --assemble --scan 替代 mdrun -ar

注意:raidtools 格式超級區塊 (0.90 版) 與 mdadm 預設 1.2 版超級區塊不相容,遷移時需謹慎處理。

Copyright © Windows教程網 All Rights Reserved