😭
【Mac】読み取りエラーになった外部ディスク(APFSコンテナ)のデータを救出した話
ある日、とある外部ディスクが読み込めなくなった
ディスクユーティリティを確認してみたところ、
読み込めなくなったディスク(APFS物理ストアdisk5s2)がグレーアウトになっている。。
めっちゃ大事なデータがあったのに・・・!!!
ターミナルを開いてコマンドを叩いてディスクの状態を確認してみる
$ diskutil apfs list
APFS Containers (4 found)
〜省略〜
| Capacity Consumed: 20480 B (20.5 KB)
| Sealed: No
| FileVault: No
|
+-- Container ERROR -69808
======================
APFS Container Reference: disk7
Size (Capacity Ceiling): ERROR -69620
Capacity In Use By Volumes: ERROR -69620
Capacity Not Allocated: ERROR -69620
|
+-< Physical Store disk5s2 YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY
| -----------------------------------------------------------
| APFS Physical Store Disk: disk5s2
| Size: 4000577273856 B (4.0 TB)
|
+-> No Volumes
Container ERROR -69808
とエラーが。
環境
- M1 mac mini
- 読み込めなくなったUSB外付けハードディスク(4TB)
❌ 試したけど効果がなかったもの
- ディスクユーティリティ
-
マウント
- 「“disk5s2”をマウントできませんでした。(com.apple.DiskManagement.disenterエラー-119930868。)」と表示される
-
FirstAid
-
シングルユーザーモード(M1以前は起動時にCmd+r、M1以降は電源ボタン長押しでOK)
- ディスクユーティリティ
- FirstAid
- マウント
- ディスクユーティリティ
-
- ターミナル
- diskutil repairDisk
- diskutil repairVolume
APFS以前は上記方法で直ることがほとんどだった。
- データ復旧ソフト
-
【PROSOFT】Data Rescue 6
- 無料体験版を試したところファイルの存在は確認できた
- 復旧には有償版が必要
- 9900円は高い、、、
- 最終手段
- その他のリカバリーソフトも似たような料金体系
-
【PROSOFT】Data Rescue 6
⭕ 試したら効果があったもの
wikiが親切なのでちゃんと読む。
fsapfstoolsのインストール
$ CPPFLAGS=-DFUSE_USE_VERSION=26 ./configure --enable-static-executables=yes --enable-verbose-output --enable-debug-output
$ make
マウント時にFUSEエラー、make時にopen_sslのエラーが出たためオプションを指定した。
※詳細オプションはデバッグ用なので無くてもOK
データの生存確認
$ sudo ./fsapfstools/fsapfsinfo -H -f 2 /dev/disk5s2
自分の場合はフラグ -f file_system_index
を 2
にすることでファイルの確認ができました!
マウント
$ sudo ./fsapfstools/fsapfsmount -X volicon=/Library/Filesystems/osxfuse.fs/Contents/Resources/Volume.icns -f 2 /dev/disk5 got
マウント時にvoliconを指定しないとエラーになったのでOSデフォルトのものを指定。
$ sudo ls got
無事マウントができ、gotディレクトリ配下にファイルが確認できたので別のディスクへコピーするなりしてデータの救出をしましょう。
Discussion