恢復格式化的 NTFS 分區
請不要將此標記為重複- 我已經閱讀了許多其他問題和建議的答案,但似乎無法讓它們發揮作用。
我有 3 個 1TB 硬碟驅動器、2 個 SSD 和 1 個 HDD。在嘗試在其中一個 SSD 上安裝 Windows 10 時,我不小心刪除了分區表並可能格式化了 HDD。
我正在嘗試從硬碟恢復我的數據,它有很多大約 10 年前的照片。HHD 只是一個數據磁碟,儘管它在 2018 年曾短暫安裝過 Linux。
磁碟型號:ST1000DM003-1SB1
我一直在嘗試使用 TestDisk 恢復照片以獲得混合結果。我一直無法恢復分區表,但我知道數據仍在磁碟上,因為我能夠使用 Photorec 提取它。唯一的問題是照片記錄已經刪除了大約 8K 照片的所有結構和順序。
TestDisk 的結果如下:
Disk /dev/sda - 1000 GB / 931 GiB - CHS 121601 255 63 Current partition structure: Partition Start End Size in sectors 1 * FAT32 0 1 1 242 254 63 3903732 [RECOVERY] 2 P FAT32 LBA 243 0 1 7401 254 63 115009335 [NO NAME] 3 E extended LBA 7402 0 1 102927 254 63 1534625190 5 L FAT32 LBA 7402 1 1 12160 254 63 76453272 [NO NAME] X extended 102927 97 1 102927 232 38 8543 Invalid FAT boot sector 6 L FAT16 <32M 102927 98 62 102927 232 38 8419 6 L FAT16 <32M 102927 98 62 102927 232 38 8419
執行 fdisk -l 返回:
Disk /dev/sda: 931.53 GiB, 1000204886016 bytes, 1953525168 sectors Disk model: ST1000DM003-1SB1 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: dos Disk identifier: 0x17556621 Device Boot Start End Sectors Size Id Type /dev/sda1 * 63 3903794 3903732 1.9G b W95 FAT32 /dev/sda2 3903795 118913129 115009335 54.9G c W95 FAT32 (LBA) /dev/sda3 118913130 1653538319 1534625190 731.8G f W95 Ext'd (LBA) /dev/sda5 118913193 195366464 76453272 36.5G c W95 FAT32 (LBA) /dev/sda6 1653528490 1653536908 8419 4.1M 4 FAT16 <32M Partition 1 does not start on physical sector boundary. Partition 2 does not start on physical sector boundary. Partition 3 does not start on physical sector boundary. Partition 5 does not start on physical sector boundary. Partition 6 does not start on physical sector boundary.
嘗試掛載返回:
billy@billy-Mint:~$ ntfsfix -b /dev/sda3 Mounting volume... Error opening read-only '/dev/sda3': Permission denied FAILED Attempting to correct errors... Error opening read-only '/dev/sda3': Permission denied FAILED Failed to startup volume: Permission denied Error opening '/dev/sda3': Read-only file system Volume is corrupt. You should run chkdsk.
sudo fsck /dev/sda3 產生以下結果:
fsck.ext2: Attempt to read block from filesystem resulted in short read while trying to open /dev/sda3 Could this be a zero-length partition?
任何幫助將不勝感激。我很困惑如何進行。
只是為了給將來發現這個的人帶來這個完整的循環。我在工作中與一位軟體工程師交談,他建議我已經取得了可能的最佳結果。即用 photorec 恢復數據是我所希望的最好的,我將無法恢復文件夾結構中的數據,因為當我刪除分區表時文件夾結構已經失去。希望有幫助!
一個 MBR 分區磁碟最多有四個主分區。要繞過此限制,您可以將其中一個主分區用作擴展分區:一種用於進一步(“邏輯”)分區的容器。
在您的情況下,
sda3
是一個擴展分區,其中包含邏輯分區sda5
和sda6
. 最後一個主分區槽sda4
未使用。擴展分區只包含其他分區:它本身永遠不能直接用作分區。這是 MBR 分區方案的一個怪癖,從 1980 年代第一台配備硬碟的 PC 時代就已經存在。
因此,嘗試
ntfsfix
在您的設備上執行或任何其他修復工具/dev/sda3
是沒有意義的。如果磁碟的該部分包含任何可辨識的 NTFS 文件系統的殘留物,我肯定testdisk
會報告它並將其包含在要恢復的分區結構中。事實上,要麼根本沒有 NTFS 分區(因為恢復的分區表看起來像 Windows 9x/ME 會使用的東西:那些作業系統根本不支持 NTFS)……或者那個分區的開頭是如此徹底覆蓋它無法辨識
testdisk
,在這種情況下,我也不希望ntfsfix
能夠實現任何有用的東西。來自
man ntfsfix
:
ntfsfix
是一個修復一些常見的 NTFS 問題的實用程序。ntfsfix
不是. _ _chkdsk
它只修復一些基本的 NTFS 不一致性,重置 NTFS 日誌文件,並為首次啟動到 Windows 時安排 NTFS 一致性檢查。假設磁碟上確實有一個 NTFS 分區,我同意你的軟體工程師的評估:你已經得到了最好的結果。
但是,如果這不是真的,並且恢復的分區表對您來說似乎是正確的,那麼您應該不理會
sda3
並繼續嘗試訪問(並在必要時恢復)sda5
和sda6
.文件系統修復工具應根據預期在分區上的文件系統進行選擇:如果實際文件系統類型是例如 FAT32,則嘗試執行適用於 NTFS 或
ext2
文件系統(ntfsfix
和分別)的工具將毫無用處,實際上可以fsck.ext2
通過基於錯誤假設進行不適當的更改來進一步破壞剩餘數據。在這樣的恢復情況下,您應該為文件系統類型明確選擇正確的工具,而不是執行通用
fsck
命令。如果恢復的分區表中的分區類型正確,則forsda5
和sda6
,fsck.vfat
可能是正確的工具。
Partition X does not start on physical sector boundary.
可以忽略:由於第一個分區的起始扇區是 63 而不是 1024,因此該磁碟顯然已使用舊作業系統進行分區,該作業系統遵循舊的 DOS 時代約定,理想情況下在柱面或磁軌的開頭啟動分區根據傳統的 C/H/S 幾何結構,這會導致分區對於現代磁碟而言並非嚴格“最佳”。在足夠現代以使用 4096 字節物理扇區大小的磁碟上,報告的 C/H/S 幾何結構只是一種虛構,因為傳統作業系統期望它而得以維護:它與數據塊的實際佈局無關磁碟上。