記錄一次 HotPE 導致的檔案系統損壞及修復

Dong_HY發表於2024-03-05

起因

昨天晚上下載了一個 HotPE (一個功能比較全面的 Windows PE 系統)並嘗試啟動了一下,該 PE 系統支援 ext4 檔案系統,可以讀寫 Linux 系統盤中的檔案。今天發現硬碟裡的 Linux 系統無法啟動, Windows 系統裡的 DiskGenius 顯示 Linux 系統盤的 ext4 分割槽損壞。

嘗試排查

  1. 使用該 PE 試圖將 Linux 系統盤中的重要檔案備份至 ext4 的 U 盤,隨後用 Linux LiveCD 無法掛載該 ext4 備份盤,Windows 系統的 DiskGenius 顯示 Linux 系統盤與 ext4 備份 U 盤的分割槽均損壞;
  2. 更換另一個 NTFS 的備份 U 盤,重新複製損壞的 ext4 分割槽中的檔案。該 NTFS 備份盤隨後可以被 Windows 及 Linux 系統正常讀取。
  3. 在整個過程中,雖然 ext4 分割槽顯示為損壞,但在這一 PE 系統下始終可以正常讀寫檔案。由此推斷相關硬碟的硬體和分割槽中的檔案沒有發生不可逆的損壞。

解決方案

啟動 Linux LiveCD,並執行 fsck 命令修復出現問題的 ext4 分割槽:sudo fsck -v /dev/nvme0n1p2 ,所有的互動均輸入 y (或輸入 a,表示以後全部互動均輸入 y),最終 ext4 分割槽修復成功並能在 Linux 中正常使用。

結論

HotPE 對 ext4 檔案系統的支援疑似存在 bug,被它掛載過的 ext4 分割槽結構被修改為了非標準的形式,使得其無法在 Linux 系統下正常使用(在該 PE 系統下始終可以讀寫檔案)。被修改過的 ext4 分割槽可以使用 fsck 修復。

以後不要在含有 ext4 分割槽的計算機上啟動 HotPE 系統,儘量只用 Linux LiveCD 而非 Windows PE 操作 ext4 分割槽。

相關文章