8 Jun 2021

Memperbaiki APFS Container Yang Hilang

"Penyakit" ini sering diderita oleh pengguna multi-boot Mac dan Windows (atau OS lain). Saya pun termasuk yang pernah terkena "penyakit" ini. Ada kalanya saat kita utak-atik partisi menggunakan aplikasi atau fitur bawaan di Windows (misal Resize, Align, dll), ia malah merusak partisi APFS (Apple File System). Biasanya "type" dari Container APFS ini diubah secara "brutal" oleh aplikasi di Windows tersebut😂 atau bahkan bisa merusak (corrupt) dari Container APFS tersebut.

apfs
Apple File System. Image credit: macplus

Apa akibatnya kalau "type" dari Container APFS berubah atau corrupt? Mac sobat tidak akan bisa boot, di cek di Disk Utility pun partisi System sobat akan tidak kelihatan. Bagi pengguna Hackintosh, partisi Mac akan lenyap di bootloader, kalau view di Komputer lain pun partisi APFS akan "hilang". Hal ini sering terjadi pada saya juga, panik lah karena mengira OS dan data penting bakal lenyap.

Untungnya ada solusi yang patut kita coba sob guna mengatasi masalah partisi APFS yang "hilang" ini. Rada ribet sedikit sih, tapi daripada tidak sama sekali, kan? Mari kita simak:

Di bawah adalah contoh layout dari Hardisk saya saat normal. Saya view via command diskutil list. Bisa sobat lihat di Disk 3, partisi nomor 5, itulah Container APFS dari sistem saya. Dia secara kriptografik membentuk semacam "disk" baru dalam Disk 4 (synthesized):

normal_layout

Dan di bawah adalah layout setelah saya "kacaukan" saat resize partisi di Windows😁. Sobat bisa lihat, Container APFS di Disk 3 partisi nomor 5 malah berubah menjadi "Windows Recovery", dan Disk 4 kriptografik jadi lenyap. Disini sistem saya tidak bisa boot karena bootloader tidak bisa menampilkannya. Saya coba lihat di Disk Utility pun dia menjadi "unrecognized":

screweddd

Yang pertama kita lakukan adalah men-diagnosa, apakah partisi APFS tersebut masih "sehat". Colokkan hardisk bermasalah di Mac lain. Atau kalau gak punya Mac lain, masuk ke Mac Recovery untuk mengeksekusinya.

1. Kita cari dulu detil dari partisi APFS kita, bisa menggunakan command "gpt", command lengkapnya: sudo gpt -r show /dev/disk3 "disk3" bisa sobat sesuaikan dengan layout di sobat. Tampilannya jadi:

gpt_command

Ingat foto layout sebelumnya? Maka perhatikan di nomor 5, karena disitulah partisi APFS kita berada. Di tempat sobat mungkin angkanya akan berbeza, jadi sesuaikan saja, intinya mengacu pada perintah diskutil list diatas.

2. Sekarang kita lakukan "hexdump" untuk partisi nomor 5 tersebut dengan command: sudo dd if=/dev/disk3 skip=832843776 bs=512 count=1 | hexdump

hexdump

Perhatikan kode yang saya kasih warna merah, itu adalah kode block awal dimana partisi APFS kita berada. Darimana kita tahu kode block? Dari gambar nomor satu kotak merah nomor dua di bawah kolom "start".

3. Masih mengacu pada gambar nomor dua. Sobat lihat yang saya garis bawah orange, disinilah kita mulai diagnosa "kesehatan" dari Container APFS kita. Dengan secarik kertas, kita bisa menganalisa dari kode hex tersebut.

Kode hex 4e 58 53 42 adalah ciri khas dari Container APFS. Jika sobat masih menemukan kode hex tersebut, berarti aman.
Kode hex 00 10 00 00 adalah ukuran block dari APFS yaitu 4096
Kode hex d1 00 c8 00 00 00 00 00 adalah ukuran Container APFS. Kalo kita terjemahkan jadi 00 00 00 00 00 c8 00 d1 = 13107409 = 104859272 (512-block), sudah sesuai kah dengan "size" di gambar nomor satu? Kalau sudah sesuai, semakin aman, hehe. Berarti partisi nomor 5 masih "sehat". Dan kalau kita lihat GUID dari partisi tersebut maka itulah yang menyebabkan partisi ini hilang karena itu GUID untuk "Windows Recovery type" bukan GUID untuk "Container APFS".

Oke, setelah selesai diagnosa, mari kita laksanakan misi penyelamatan.

1. Pertama kita akan menghapus partisi nomor 5 tersebut. Ingat, menghapus disini maksudnya bukan format yah, kalo di format ya tewas data nya. Eksekusi command: sudo gpt remove -i 5 /dev/disk3 Disini disk3 sesuaikan dengan punya sobat. Kalau muncul error "resource busy" seperti ini:

busy

Itu artinya sobat perlu "unmount" semua partisi yang ada di disk3 tersebut. Kalau sukses muncul seperti ini:

removed_partition

2. Sekarang kita tambahkan ulang partisi tadi dengan GUID untuk "type" yang benar, gunakan command: sudo gpt add -i 5 -b 832843776 -s 104859272 -t 7C3457EF-0000-11AA-AA11-00306543ECAC /dev/disk3 Command yang saya kasih warna merah harus sesuai dengan layout pada gambar nomor satu di bagian diagnosa diatas ya. Kalau sukses akan muncul seperti ini:

added_partition

3. Kalau tidak ada kendala, silahkan sobat lakukan "diskutil list" lagi, harusnya Container APFS sudah kembali muncul dan sobat bisa boot kembali.

4. Tapi sebelum boot, ada baiknya kita lakukan verifikasi ulang pada Container APFS yang baru kita munculkan tadi. Eksekusi command: sudo diskutil verifyVolume disk3s5

verifying_apfs

Kalau oke akan seperti ini:

verified_apfs

5. Done, alhamdulillah. Kita bisa booting ke sistem lagi.

Hikmah yang bisa diambil dari sini adalah berhati-hatilah saat utak-atik partisi di Windows kalau kita multiboot dengan Mac. Jangan sampai terjadi seperti saya diatas, kan lumayan ribet memperbaikinya, hehe. Baiklah sob, sekian dulu dari saya, kalau ada cara yang lebih gampang bisa dishare di kolom komentar. Apabila ada salah info dan kata, ya maaf. Wassalam.

Do with your own risk!!!
Share:

Merasa terbantu? Donate:
Previous
Prev Post «
Disqus
Blogger
Choose comment platform

Tidak ada komentar

Berkomentarlah dengan bijak. Sobat juga bisa menambahkan emoticon, klik 👉

Langganan Artikel Gratis
Masukan alamat email:

Delivered by FeedBurner

Merasa terbantu oleh blog ini?

Sobat bisa memberikan donasi via PayPal, klik tombol di bawah ini. Terima kasih.

Popular Posts