萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦基礎知識 >  >> 電腦入門

一次誤操作刪除 RAID 分區表,靠 fdisk 重建分區表完美救回 114GB 資料

在實體機上誤以為在虛擬機操作,執行 fdisk /dev/sda 刪除 /dev/sda6(151GB、含 114GB 重要資料),重建為 30GB RAID 分區並嘗試建立陣列,導致分區表損壞、資料「消失」。冷靜分析後,僅靠 fdisk 重建相同起始/結束磁區的分區,未格式化,重掛載後資料完整復活。

事故回顧

  • 原狀態:/dev/sda6 151GB,ext3,掛載存放重要資料(114GB)。
  • 誤操作:fdisk 刪除 sda6 → 新建 30GB、類型改 RAID → partprobe 刷新 → mdadm 建陣列失敗 → init 6 重啟(實體機跟著重啟)。
  • 重啟後:掛載點目錄存在但無法進入;df -h 仍顯示 sda6 容量未變。

救援關鍵判斷

未對 /dev/md0 執行 mkfs 格式化,底層資料區塊未被覆寫,僅分區表與超級區資訊改變。只要分區表恢復原狀,檔案系統超級區仍在,資料即可讀取。

救援步驟

  1. fdisk /dev/sda 刪除錯誤的 sda6。
  2. 新建分區,起始磁區、結束磁區與原 sda6 完全一致(佔用剩餘所有磁區),類型保留 Linux (83)/ext3。
  3. w 寫入分區表 → partprobe 刷新核心分區表。
  4. 重新掛載:mount /dev/sda6 /mount/point → 仍無法進入目錄。
  5. 再次重啟(關鍵!)→ 開機後資料完整呈現,目錄可正常存取。

核心心得

  • 誤刪分區、改類型、甚至建立 RAID 超級區,**只要未格式化(mkfs/mkfs.ext3/ mkfs.ntfs 等)覆寫資料區,資料幾乎都能救回**。
  • 關鍵是精確重建**原始分區幾何參數**(起始/結束磁區、類型)。
  • 若 partprobe 無效,重啟 強制核心重讀分區表常能解決掛載失敗。
  • 平時備份分區表:sfdisk -d /dev/sda > sda.partition.bak,關鍵時刻可秒還原。
警語: 生產環境操作存儲/分區/RAID,**務必三確認:正確主機、正確磁碟、正確分區**。SSH 多視窗操作時,建議在終端標題顯示主機名,或用 tmux/screen 區分會話。
copyright © 萬盛學電腦網 all rights reserved