Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Windows 2000 磁碟扇區編輯器 Dskprobe 實戰 (二):分區表結構解析、備份還原與手工重建

編輯:Windows Server 教學

前言

接續上篇 MBR 操作,本文深入分區表:結構定義、Dskprobe 讀取/備份/還原流程、手工重建高難度操作與風險控管。

一、分區表背景知識

  • 位置:第 0 扇區偏移 0x1BE (十進制 446) 起始,共 64 位元組 (4 條 × 16 位元組)
  • 每條分區記錄 16 位元組結構:
偏移欄位長度說明
00h啟動指示器180h = 可啟動 (Active),00h = 不可啟動。FDISK 「設定啟動分區」即寫入 80h
01h起始磁頭號1分區起始 CHS 位址
02h起始扇區號1
03h起始柱面號1
04h系統指示器1分區類型:01h=FAT12, 04h/06h/0Eh=FAT16, 0Bh/0Ch=FAT32, 07h=NTFS, 05h/0Fh=延伸分區
05h結束磁頭號1分區結束 CHS 位址
06h結束扇區號1
07h結束柱面號1
08h分區前總扇區數4LBA 起始扇區 (小端序)
0Ch分區總扇區數4LBA 大小 (小端序)
  • 啟用分區本質 = 啟用該分區內的某個邏輯磁碟機。不可重複啟用多個邏輯磁碟
  • 多重開機:第二分區建立邏輯磁碟後,啟動其中一個
  • Dskprobe 官方說明不支援 FAT32,但實際功能可能有出入,建議自行測試

二、讀取與檢視分區表 (Dskprobe)

  1. 啟動 Dskprobe → 「Drives」→「Physical Drive」→ 選取磁碟 → Set Active
  2. 「Sectors」→「Read」→ Sector 0, Count 1
  3. 「View」→「Partition Table」→ 彈出分區表對話框
  4. 雙擊「Partition Table Index」列表切換檢視 4 條記錄詳細欄位
  5. 備份:通常與 MBR 整體儲存為同一 .dsk 檔

三、以備份還原損壞分區表

  1. 同樣讀取 Sector 0 到記憶體
  2. 「View」→「Partition Table」→ 選取待修復的分區編號
  3. 對話框下半部顯示當前 (損壞) 數值
  4. 依備份檔/記錄逐項填入正確數值(或切換到位元組模式直接貼上)
  5. 「Sectors」→「Write」→ Starting Sector = 0 → Write it → Yes 確認覆寫

四、手工重建分區表 (極高難度・最後手段)

前提:極度熟悉分區結構、分區簡單、已知磁碟幾何參數 (柱面數、磁頭數、每軌扇區數,標籤可查)。

計算步驟

  1. 第 0 柱面 0 磁頭 1 扇區為 MBR,不屬任何分區。第一分區從 0 柱面 1 磁頭 1 扇區開始
  2. 依所需容量推算第一分區結束 CHS (磁頭/扇區/柱面) → 轉十六進位填入
  3. 緊接著為第二分區起始位置,依此類推
  4. 磁頭數 ≈ 磁面數,柱面數 ≈ 每磁面磁道數
    單磁面容量 = 512 × 63 (扇區) × 柱面數
  5. 例:第一分區用前 125 磁頭 → 容量 = 512 × 63 × 125 × 柱面數

操作同「三」,填入計算值並寫入 Sector 0。

五、關鍵風險提醒

  1. 手工重建實質 = 手工新建分區,原有資料極高機率永久遺失
  2. 若為恢復原分區,**強烈不建議**手工重建(一鍵輸入錯誤 = 全盤資料歸零)
  3. 所有計算結果**必須轉十六進位** (用計算機/程式工具)
  4. 未對 NTFS 實測,風險自負

替代方案:Debug 讀取 MBR 列印備份 (DOS/Win9x)

DEBUG
-A 100
MOV AX, 0201
MOV BX, 0100
MOV CX, 0001
MOV DX, 0080
INT 13
INT 3
-G=100
-D 100

列印螢幕內容 (Print Screen) 留存紙本備份。安全性無虞:執行 MBR 時作業系統尚未載入,不受 OS 安全機制限制。

總結

分區表修復優先序:備份還原 ≫ 手工重建。平時建立 .dsk 備份 + 紙本 Debug 列印,是最低成本的保險。手工重建僅限極端無備份、分區極簡、技術極熟練時嘗試。

Copyright © Windows教程網 All Rights Reserved