![修復分區表](https://rvso.com/image/515024/%E4%BF%AE%E5%BE%A9%E5%88%86%E5%8D%80%E8%A1%A8.png)
我剛剛覆蓋了系統硬碟的分區表。我cfdisk
在錯誤的裝置上建立了一個(/dev/sda
而不是/dev/sdd
),刪除了所有分割區,在整個裝置上建立了一個新的主分割區,將其類型設為07
(NTFS)並點擊write
。
所以我的系統正在運作。在我重新啟動之前,我希望/猜測什麼都不會改變 - 這意味著:我的所有資料都可以存取(我目前正在dd
對整個設備進行備份,並計劃.tar.gz
稍後對最重要的資料進行備份)。我還備份了/proc/partitions
,/proc/diskstats
(儘管我猜這更多是關於吞吐量和類似的東西......)和/sys/block/sda/sda?/{start,size}
。
我還知道一些事情:
- 4個主分區
- 第一個分區:~100Mb,ext3,/boot
- 第二個分區:~100Mb,“Win7啟動分區”,ntfs(?)
- 第三分區:~20...30GB,Win7,ntfs
- 第四個分割區:~20...30GB,luks 加密設備
- 幸運的是——德加密設備是 LVM-PV
/
,/home
& -分區swap
是上述 PV 上(VG 上)的所有 LV
所以我的問題是:
- 將核心分割表寫入磁碟的最簡單方法是什麼?
- 取得上述(也許還有其他我不知道的...)資料並產生分區表的最簡單方法是什麼?
- 關於 luks 和/或 lvm 是否有任何需要注意的問題?
- 在重新啟動之前是否應該備份任何數據(意味著來自核心[ /sys/...、/proc/...] 等的數據,這可以幫助我重新產生分區表)?
答案1
不太棘手。希望。
首先,記下 /dev/sda 上所有分割區的大小和順序:
challenger:/home/michael # grep . /sys/block/sda/sda*/{start,size}
/sys/block/sda/sda1/start:63
/sys/block/sda/sda2/start:228690000
/sys/block/sda/sda3/start:257040
/sys/block/sda/sda1/size:256977
/sys/block/sda/sda2/size:83885760
/sys/block/sda/sda3/size:228432960
在 /dev/sda 上運行 fdisk 並將單位更改為扇區:
Command (m for help): u
Changing display/entry units to sectors
然後開始製作分區。對每個分區使用適當的數字start
和。size
避免差一錯誤 - 在size
將其輸入 fdisk 之前減去 1。
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First sector (63-312581807, default 63):
Using default value 63
Last sector, +sectors or +size{K,M,G} (63-312581807, default 312581807): +256976
Command (m for help): p
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x02b002af
Device Boot Start End Blocks Id System
/dev/sda1 63 257039 128488+ 83 Linux
不要忘記設定分區 ID 並切換正確分區上的啟動標誌
現在重新安裝您的 MBR,您就可以開始了。
當然,您可以使用您最喜歡的分區編輯器來完成這一切...parted 也可以很好地工作。
如果您遺失了有關分割區開始/結束的資訊 - parted 有「救援」選項來搜尋磁碟以尋找遺失的分割區。但你不應該需要那些。
答案2
如果分割表損壞,我建議使用RIP的啟動磁碟(Linux下可以救援)來執行testdisk。哎呀,您也許可以從正在運行的系統運行 testdisk 來掃描和恢復分區,但我不會嘗試這樣做,因為我不知道它會對打開文件的正在運行的系統做什麼。
如果您想嘗試備份重要資料(您還沒有備份?),現在是這樣做的好時機...