Linux 磁碟 RAID 設定與管理
在伺服器運維與資料儲存領域中,資料的安全性與可用性永遠是首要考量。RAID(Redundant Array of Independent Disks,獨立磁碟冗餘陣列)技術透過將多塊物理磁碟組合起來,不僅能提升讀寫效能,更能提供資料的冗餘備援機制。對於中階 Linux 使用者而言,掌握 mdadm 工具是建立和管理軟體 RAID 的必備技能。本文將以 Ubuntu 22.04 / Debian 12 為基礎,帶你一步步建立一個高可用的 RAID 1 陣列。
環境準備與工具安裝
在開始之前,請確保你已經準備好至少兩塊容量相同或相近的磁碟設備(例如 /dev/sdb 和 /dev/sdc)。請務必注意:以下操作會清除磁碟上的所有資料,請在測試環境或非重要資料上進行。
首先,更新套件清單並安裝 mdadm:
sudo apt update
sudo apt install mdadm
安裝過程中,系統可能會詢問是否設定郵件通知或建立初始 RAID 裝置,若為初次設定,可暫時選擇「No」,後續再手動處理。
建立 RAID 1 陣列
RAID 1 是最基礎的鏡射(Mirroring)模式,資料會同時寫入兩塊磁碟,任何一塊故障都不會影響資料完整性,但儲存效率僅為 50%。
1. 確認磁碟狀態
使用 lsblk 或 fdisk -l 確認磁碟名稱與狀態,確保沒有誤選到系統碟:
lsblk
2. 建立 RAID 裝置
我們使用 mdadm 的 --create 參數來建立新陣列。這裡以 /dev/md0 為目標設備,採用 RAID 1 模式,並使用兩塊磁碟:
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
建立過程可能需要幾秒鐘,期間系統會進行初始化。你可以透過以下指令監控進度:
cat /proc/mdstat
輸出結果中會顯示 recovery 進度,等待其變成 active 狀態即表示陣列建立完成。
3. 格式化與掛載
RAID 裝置建立後,它看起來就像一個普通的磁碟設備。我們將其格式化為 ext4 檔案系統並掛載:
sudo mkfs.ext4 /dev/md0
sudo mkdir -p /mnt/raid1
sudo mount /dev/md0 /mnt/raid1
此時,你可以將重要資料複製到 /mnt/raid1 進行測試。
確保 RAID 配置持久化
預設情況下,mdadm 會將陣列配置寫入 /etc/mdadm/mdadm.conf,但這僅供參考。為了確保系統重啟後能自動偵測並組裝 RAID,我們需要執行以下步驟:
-
更新 mdadm 配置檔:
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf -
更新 initramfs: 這一步至關重要,它確保在系統啟動早期(root 檔案系統掛載前)就能載入 RAID 模組:
sudo update-initramfs -u -
設定自動掛載: 編輯
/etc/fstab,加入以下行以實現開機自動掛載(建議使用 UUID 以避免磁碟順序變化導致掛載錯誤):# 先取得 UUID sudo blkid /dev/md0 # 編輯 fstab,加入類似如下內容(替換 <UUID> 為實際值) UUID=<UUID> /mnt/raid1 ext4 defaults,nofail 0 2
常見問題與解決方案
1. 磁碟故障如何替換?
若其中一塊磁碟(例如 /dev/sdb)發生故障,系統會標記為 faulty。替換步驟如下:
- 將故障磁碟標記為失敗並移除:
sudo mdadm /dev/md0 --fail /dev/sdb sudo mdadm /dev/md0 --remove /dev/sdb - 物理更換新磁碟後,將其加入陣列:
sudo mdadm /dev/md0 --add /dev/sdb - 陣列會自動開始重建(rebuild),可透過
cat /proc/mdstat監控進度。
2. 如何正確停止並刪除 RAID?
若需移除陣列,請依序執行:
- 卸載檔案系統:
sudo umount /mnt/raid1 - 停止陣列:
sudo mdadm --stop /dev/md0 - 清除磁碟上的 RAID 元數據:
sudo mdadm --zero-superblock /dev/sdb /dev/sdc - 從
/etc/fstab和/etc/mdadm/mdadm.conf中移除相關配置。
小結
透過 mdadm,Linux 使用者可以輕鬆地在軟體層面實現企業級的資料保護。RAID 1 提供了簡單的冗餘備援,適合對效能要求不高但重視資料安全的場景。若未來需要更高的讀寫效能,可考慮升級至 RAID 0(條帶化)或 RAID 5/6(奇偶校驗)。無論選擇何種模式,定期備份與監控始終是資料安全的最後一道防線。掌握這些基礎操作,將讓你在伺服器管理上更加得心應手。