web-dev-qa-db-ja.com

Macbook APFSパーティションを回復する

私の質問は このスレッド に非常に似ていますが、私の状況は少し異なります。

しばらくの間、2つのパーティションでOS XとUbuntuを正常にデュアルブートできました。 OS X Disk Utilityを使用してパーティションを管理し、新しいAPFS構造によりLinuxで発生する可能性のあるパーティションテーブルエラーを回避しました。

最近、OS Xパーティションを縮小し、Ubuntu専用のスワップパーティションとして3番目のパーティションを作成することにしました。繰り返しますが、エラーを回避するためにOS X Disk Utilityでパーティションを管理しました。 Ubuntuにスワップパーティションを追加しました(私はsure正しいパーティションが指定されました)およびすべてよく見えた。ただし、再起動後、ブートマネージャー(rEFIndではなくストック)がブートオプションとしてOS Xを表示しなくなりました。 gdisk(信じられないほどの回復ツールを提供してくれたRod Smithに感謝します!)を使用してテーブル構造をチェックすることにしました。OSXパーティションはまだ認識されているようですが、パーティションコードFFが与えられています。私の知る限り、すべてのセクターが良さそうに見えるので、データがすべて揃っていると信じさせられます。残念ながら、バックアップドライブが最近故障したため、バックアップがありません。私は幸運。

データをレスキューするために、OS Xパーティションのタイプコードを単純に変更できますか?私の理解では、APFSはそのようには機能しません。

Gdisk -lからの出力は次のとおりです。

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 488397168 sectors, 232.9 GiB
Model: Crucial_CT250MX2
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): 37FE5D3B-875C-471A-B4FC-A4887DDA4659
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 488397134
Partitions will be aligned on 8-sector boundaries
Total free space is 13 sectors (6.5 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          409639   200.0 MiB   EF00  EFI System Partition
   2          409640       416425263   198.4 GiB   FFFF  
   3       416425264       449628383   15.8 GiB    FFFF  
   4       449628384       488397127   18.5 GiB    8300 

パーティション2はOS Xパーティション、パーティション3はスワップパーティション(8200ではなくFFFFとマークされている理由はわかりません)、パーティション4はUbuntuパーティションです。

以下は、私がバカではないことを証明するためのswapon -s &&の出力です。

Filename                Type        Size    Used    Priority
/dev/sda3                               partition   16601556    435456  -2

              total        used        free      shared  buff/cache   available
Mem:       16335648     2089764      374952       51452    13870932    14611436
Swap:      16601556      435456    16166100
2
D. Mills

私の元のOS XパーティションはHFSパーティションではなくAPFSコンテナであったため、 このスレッドのソリューション に従ってGUID 7C3457EF-0000-11AA-AA11-00306543ECACを使用して問題を解決しました。または論理ボリューム。

要約すれば:

1. Boot Mac in Recovery mode (Hold Cmd+R while booting)
2. Open Utilities->Terminal
3. "diskutil list" to identify the partition in question (for me, disk0s2 was marked with GUID FFFF...)
4. gpt -r show disk0" to provide the start sector and size of the disk0 partitions. The output here is very similar to the gdisk -l output of my original post above.
5. "diskutil unmountDisk disk0" to allow the next step...
6. "gpt remove -i 2 disk0" to strip the partition table data associated with the broken partition.
7. "gpt add -b 409640 -i 2 -s 416425263 -t 7C3457EF-0000-11AA-AA11-00306543ECAC"

パート7は、most criticalステップです。パーティションテーブルに正しいデータを追加し、失われたパーティションを回復します。命令の内訳は次のとおりです。

'-b' is the beginning sector of the partition as observed in step 4.
'-i' is the index of the partition to be recovered; in my case, this was disk0s2, so index position 2.
'-s' is the size of the partition as observed in step 4.
'-t' is the GUID type of the partition. Specifically, the originally broken data preventing use of the partition (previously marked FFFF...).
1
D. Mills