看板 Storage_Zone 關於我們 聯絡資訊
各位好, 小妹有個不太專業的問題想問問大家, 最近在研究關於partition的相關資訊, 關於GPT partition有個問題想請位有沒有人瞭解可以幫我解惑, GPT 有個特點是他有兩個 GPT Header, 主分割表的分別位置資訊儲存在 LBA1 也就是第一個Header中 , 但同時也會將這個主分割表再存一份在倒數最後一個 LBA 內,作為備份分割表 就我理解,有兩個Header的好處就是,如果主分割表有受損, 備份分割表示可以recovery主分割表的。 那麼 請問如果備份的分割表受損了呢? 我認為不會,因為應該要以一個分割表為主,不然兩個分割表不一樣的狀態下, 要怎麼判別誰是對的? 誰該被recovery? 所以如果備份的分割表受損了, 主分割表到底會不會去recovery 備份分割表嗎? 有人可以跟我分享一下意見嗎?~~~ 我在這方面的資訊還是不太上手,原本想要自己玩玩看, 但實在不太知道怎樣去破壞分割表,先謝謝各位跟我分享資訊了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.94.89 ※ 文章網址: https://www.ptt.cc/bbs/Storage_Zone/M.1512228986.A.17D.html
maniaque : 可以透過 checksum 驗證 12/02 23:45
maniaque : 一般防損的小技術是這,但有無用在GPT,要查一下 12/02 23:46
galic : 是secondary的去recover primary 反過來的情況很少 12/03 00:28
galic : 兩個GPT Header都有帶ECC(記得是CRC32) 12/03 00:29
galic : 這跟大部分的recovery system用的手法差不多 12/03 00:30
galic : 基本上就是寫入的時候 要保證順序 1.primary先寫 12/03 00:32
galic : 2.確定primary寫完(寫入硬碟) 才寫secondary 12/03 00:32
galic : 3.primary和secondary都有帶checksum(這邊用ECC) 12/03 00:33
galic : 讀取的時候 檢查primary和secondary checksum 12/03 00:34
galic : 若是有其中一者失敗 則用另一者recover 12/03 00:34
galic : 若是兩者成功 但checksum不一致 則取primary為主 12/03 00:35
galic : 兩者都失敗的時候 因為這裡有用ECC 所以會嘗試修復 12/03 00:36
感謝詳盡的解釋,不過請問這種要到哪查詢才會有資料呢@@
galic : 所以我說小妹的圖勒? 12/03 00:38
zonppp : 推樓上 12/03 10:02
maniaque : 樓樓上 g 大小心收到彈出來的g圖...:D 12/03 10:57
XDDD 但我真的是小妹XD 有需要繼站內信證明嗎? 只是個普妹怕傷大家眼~ ※ 編輯: garfield5 (36.225.94.89), 12/03/2017 12:25:25
galic : 我發現我講錯了 GPT應該是先寫secondary 因為它是反 12/03 13:54
galic : 過來放的 所以正確的volume size要給primary保存 12/03 13:54
galic : 這樣才不會跑錯地方 不過寫入的概念大致上一樣沒錯 12/03 13:54
galic : GPT是UEFI Forum定的阿 去官網就有規格書 目前是2.7 12/03 13:55
galic : Header的描述在5.3.2節 12/03 13:56
KevinR : 沒圖沒真相 12/04 21:47