怎麼修

怎麼修

.pkg當需要在 Mac OS X 系統上安裝檔案中的軟體包時,將使用系統隨附的軟體包安裝程式。在安裝任何軟體包的某個時刻,它會詢問應在哪個檔案系統分割區上安裝該軟體包。在我的系統上,它曾經顯示安裝 Mac OS X 的分區,稱為“Macintosh HD”,但由於我不知道的原因,它不再顯示,而只顯示兩個恢復分區,都稱為“恢復高清」;這實際上使我無法使用軟體包安裝程式安裝任何東西。此外,Mavericks 安裝程式中的可用選項中也缺少系統分區,這意味著這個問題也阻止我將系統從 Mountain Lion 升級到 Mavericks。

我已經告訴磁碟實用程式修復硬碟,但沒有發現任何問題。我也想修復系統分割區,但它沒有出現在磁碟實用程式的分割區清單中。後來我透過啟用磁碟實用程式的偵錯模式來顯示它,儘管修復選項呈灰色,但我能夠運行沒有發現問題的驗證並修復權限。

此外,當選擇硬碟時,磁碟實用程式的「分割區」標籤聲稱系統分割區應該所在的位置實際上是207.91 GB的可用空間。還有一些其他分割區我以前用來運行 Debian 系統,但後來我刪除了它們,它們現在是空分割區。

最後,當選擇硬碟時,我根本無法從磁碟實用程式的「分割區」標籤變更分割區佈局:每次我嘗試刪除分割區或應用程式變更時,它都會告訴我要求的變更是太小而拒絕執行。

我目前的系統是在 Mac mini 上執行的 Mac OS X 10.8.5。

答案1

好吧,你的 GPT 已經全部被提升了。您的許多分割區都標記有錯誤的分割區類型。不過,您的 PMBR 看起來很完美,所以這很好。

讓我們看看您的 GPT(確保將視窗拉寬或水平滾動以查看“應該是”列):

      起始大小索引內容 - “標籤”類型應該是
          0 1 PMBR
          1 1 Pri GPT 標頭
          2 32 Pri GPT 表
         34 6         
         40 409600 1 GPT 部分 - “EFI 系統分割區” EFI 系統分割區
     409640 404390464 2 GPT 部分 - “Macintosh HD” Apple_Boot HFS+
  404800104 1269544 3 GPT 部分 - “Recovery HD”EFI 系統分割區 Apple_Boot
  406069648 1269544 4 GPT 部分 - “Recovery HD” HFS+ Apple_Boot (或直接刪除它)
  407339192 1269536 5 GPT 部分 - “Recovery HD” HFS+ Apple_Boot (或直接刪除它)
  408608728 40         
  408608768 279976563 6 GPT 部分 - “Ubuntu”Apple_Boot Linux 檔案系統資料?
  688585331 1421         
  688586752 974848 7 GPT 部分 - "" EFI 系統分割區 不確定?也許只是刪除它?
  689561600 13410304 8 GPT 部分 - “Apple_HFS_Untitled_6” HFS+
  702971904 262144         
  703234048 5597184 9 GPT 部分 - “Apple_HFS_Untitled_5”HFS+
  708831232 262144         
  709093376 780288 10 GPT 部分 - “Apple_HFS_Untitled_4”HFS+
  709873664 258428928 11 GPT 部分 - “Apple_HFS_Untitled_3”HFS+
  968302592 262144         
  968564736 7946248 12 GPT 部分 - “Apple_HFS_Untitled_2”HFS+
  976510984 262151         
  976773135 32 秒 GPT 表
  976773167 1 秒 GPT 標頭

因此,看起來索引 2、3、4、5、6 和 7 處的分區在 GPT 中都被標記為錯誤的分區類型,如果您沒有任何有價值的數據,也許可以刪除其中一些分區。我也不確定為什麼你有一堆小型的 HFS+ 分割區,像是索引 10 的分割區,只有 390 MB (381 MiB)。你是故意把它們放在那裡的還是知道它們是什麼以及上面有什麼?或者它們也是這個奇怪混亂的分區表之謎的一部分?

我應該聲明,我不太了解 Debian 如何對磁碟進行分割區,尤其是在 Mac 硬體上。我知道很久以前,帶有 GPT 的 Windows PC 上的 Linux 發行版對 Linux 檔案系統使用 Windows 分割區類型,但我認為這種舊方法如今已經不再受歡迎。也許 Debian 在 GPT 中使用了 Apple 風格的分割區類型標記,但隨後「在內部」將它們用作 Linux 檔案系統和交換分割區?

怎麼修

解決此問題的一種方法是使用命令gpt刪除類型錯誤的分區表條目,然後使用正確的類型重新新增它們。這是一項棘手的工作,如果犯了錯誤,您很可能會丟失整個分割區或磁碟機上的所有內容。

但事情會是這樣的:

刪除類型為 Apple_Boot 的「Macintosh HD」的「壞」條目(GUID 開頭為 426...):

sudo gpt remove -b 409640 -s 404390464 -i 2 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0

為其新增一個「好」條目,這次類型為 HFS+(GUID 開頭 484...):

sudo gpt add    -b 409640 -s 404390464 -i 2 -t 48465300-0000-11AA-AA11-00306543ECAC disk0

現在再次將其標記為“Macintosh HD”:

sudo gpt label  -b 409640 -s 404390464 -i 2 -l "Macintosh HD" disk0

請注意,在“刪除”和“標籤”命令中,我以多種方式選擇分割區。那是我格外小心避免拼字錯誤;如果所有三種選擇器類型都不匹配,我不希望該命令起作用,因為這意味著我犯了一個拼寫錯誤。

請注意,您必須在從其他裝置啟動時執行這些命令,這樣您正在編輯的磁碟就不會很忙。請務必小心起始/開始區塊和大小/長度數字。編輯分區表的風險由您自行承擔。在編輯分區表之前,請對您關心的所有內容進行完整備份(並測試您的備份)。

相關內容