為追求極致 I/O 效能,開發者常在雙硬碟上建立 RAID 0(Striping)陣列安裝 Linux。本文記錄在 雙 1TB 硬碟(MSI B85-G43 主板,偽 RAID 不支援 Linux) 上,使用 mdadm 軟體 RAID 規劃分區、建立 RAID 0 陣列、安裝 Fedora 20、驗證陣列狀態與 hdparm 效能測試的完整實戰過程。
| 掛載點 | RAID 裝置 | 組成分區 | 單顆硬碟大小 | 備註 |
|---|---|---|---|---|
| /boot | - | /dev/sda3 | 300 MB | 主分區,不做 RAID(GRUB2 不支援 /boot 於 RAID) |
| /bootbak | - | /dev/sdb1 | 300 MB | 備份啟動分區 |
| swap | /dev/md0 | sda5 + sdb5 | 1.8 GB | RAID 0 |
| / | /dev/md1 | sda6 + sdb6 | 10 GB | RAID 0 |
| /usr | /dev/md2 | sda7 + sdb7 | 25 GB | RAID 0 |
| /home | /dev/md3 | sda8 + sdb8 | 12.5 GB | RAID 0 |
| /var | /dev/md4 | sda9 + sdb9 | 25 GB | RAID 0 |
| /opt | /dev/md5 | sda10 + sdb10 | 10 GB | RAID 0 |
| /data | /dev/md6 | sda11 + sdb11 | 115.4 GB | RAID 0 |
關鍵決策:/boot 單獨分區不做 RAID,避免 GRUB2 無法從 RAID 讀取核心/initramfs。

su -fdisk -l 確認 /dev/sda5-11、/dev/sdb5-11 大小對應。mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sd{a,b}5mkfs.ext4 /dev/md0 # 必須格式化,否則安裝程式不識別/dev/md0-md6。

/dev/md1 → 掛載點 / → 格式化 ext4 → 更新設定。/usr、/home、/var、/opt、/data、swap(/dev/md0)。/boot 選 /dev/sda3(非 RAID),/bootbak 選 /dev/sdb1。# 查看掛載情況
df -h
# 查看 RAID 狀態
cat /proc/mdstat
# 輸出範例:
# md0 : active raid0 sda5[0] sdb5[1] 3670016 blocks super 1.2 512k chunks
# md1 : active raid0 sda6[0] sdb6[1] 20971520 blocks ...
# ...


yum install -y hdparm
hdparm -tT /dev/sda # 單顆硬碟
hdparm -tT /dev/md0 # RAID 0 陣列

結果解讀:RAID 0 循序讀取速度接近單顆硬碟雙倍,隨機讀寫亦有顯著提升,但任一硬碟故障即導致全盤資料遺失,生產環境必須配合備份策略。
mdadm --detail --scan >> /etc/mdadm.conf 固化陣列資訊。systemctl enable mdmonitor 監控陣列健康狀態。本實戰展示了從分區規劃、mdadm 建陣、安裝器識別、到效能驗證的完整鏈路,可作為軟體 RAID 部署 Linux 的參考範本。