一文搞定 Linux 與 Windows 雙系統修復
centos 文件系統修復
1. 掛載 ISO 并進入救援模式
- 將 CentOS 的安裝 ISO 掛載到虛擬機/CD-ROM,或者插入啟動盤。
- 重啟系統,從 ISO 啟動。
- 在啟動菜單選擇 Troubleshooting → Rescue a CentOS system(救援模式)。
2. 進入救援環境
啟動后系統會進入文本界面,通常會有提示:
Continue:嘗試掛載已有系統并進入 chroot 環境。Read-Only:以只讀方式掛載文件系統。Skip:不掛載,進入最小化救援環境。
如果只是修復文件系統,選擇 Skip 。
圖片
3. 掃描并激活 LVM 卷
在 救援模式下,如果選擇 Skip 不掛載系統,LVM 邏輯卷不會自動激活,所以 /dev/mapper/centos-root 之類的設備節點是看不到的。要修復 XFS,需要手動激活 LVM。
執行:
lvm vgscan
lvm vgchange -ay這樣會激活卷組,之后就能看到 /dev/mapper/centos-root、centos-home 等設備了。
圖片
4. 執行 xfs_repair
此時分區沒有掛載,可以直接修復:
xfs_repair /dev/mapper/centos-root如果還是報錯,可以嘗試強制選項:
xfs_repair -L /dev/mapper/centos-root?? 注意:-L 會丟棄 XFS 日志,可能導致最近的未寫入數據丟失,但多數情況下能讓系統恢復可用。
如果是ext4系統,則執行fsck -y 邏輯卷。
圖片
5. 修復完成后重啟
修復好后直接:
rebootwindows系統引導修復
Windows2022虛擬機啟動失敗一直卡在Windows logo界面。
圖片
1.首先嘗試使用wepe做的iso去修復Windows系統的引導項,發現沒有修復成功。
2.下載Windows 2022的iso引導進行修復,“安裝”頁面左下角點擊【修復計算機】 ,點擊→ 疑難解答→ 高級選項 → 命令提示。
圖片
3.進到命令行后需要找到系統盤所在的盤符,如果直接執行修復是找不到路徑的。
圖片
就跟上面圖一樣,后來我嘗試執行C: dir或者 D: dir尋找系統盤,最終發現全是Windows系統ISO和virtio ISO的盤,沒有發現系統盤,我系統盤是virtio的類型硬盤,應該是沒有安裝virtio驅動導致的,因此需要先加載virtio驅動,使用下面的命令加載virtio驅動。
drvload E:\virtio-win\viostor\2k22\amd64\viostor.inf這里的E盤是我掛載virtio的ISO盤符,其他環境可能有區別,可以通過D: dir命令查看是否是virtio的盤,這里的2k22 表示 Windows Server 2022 的驅動版本 ,其他系統需要更換對應的路徑。
4.驅動加載成功后,再用 diskpart 看是否能看到硬盤:
diskpart
list disk
list volume
exit這里我查看到我的引導分區是C,系統盤是F盤。
圖片
5.看到虛擬機磁盤后,就可以使用bootrec 修復引導,bcdboot 重建 BCD。
修復主引導記錄和引導區。
bootsect /nt60 C: /mbrnt60表示寫入 Windows Vista/7/8/10/11/Server 2008+ 的引導扇區格式
/mbr 表示重寫磁盤的主引導記錄,適用于傳統 BIOS 引導方式
C盤是我的引導分區
使用系統目錄重建引導文件。
bcdboot F:\Windows /s C: /f BIOS
F:\Windows是你系統目錄/s :表示引導分區在 C盤, (你的“系統保留”分區)/f BIOS是傳統 BIOS 啟動(不是 UEFI)
6.之后修改引導方式為硬盤后重啟虛擬機,重啟虛擬機由于修復了主引導記錄,會有藍屏轉圈,之后就可以按F8進入安全模式,進入安全模式自動修復后重啟就可以進系統了。


























